@@ -147,18 +147,18 @@ public abstract static class ObjectLiteralMemberNode extends JavaScriptBaseNode
147147
148148 protected final boolean isStatic ;
149149 protected final byte attributes ;
150- protected final boolean isField ;
150+ protected final boolean isFieldOrStaticBlock ;
151151 protected final boolean isAnonymousFunctionDefinition ;
152152
153153 public ObjectLiteralMemberNode (boolean isStatic , int attributes ) {
154154 this (isStatic , attributes , false , false );
155155 }
156156
157- public ObjectLiteralMemberNode (boolean isStatic , int attributes , boolean isField , boolean isAnonymousFunctionDefinition ) {
157+ public ObjectLiteralMemberNode (boolean isStatic , int attributes , boolean isFieldOrStaticBlock , boolean isAnonymousFunctionDefinition ) {
158158 assert attributes == (attributes & JSAttributes .ATTRIBUTES_MASK );
159159 this .isStatic = isStatic ;
160160 this .attributes = (byte ) attributes ;
161- this .isField = isField ;
161+ this .isFieldOrStaticBlock = isFieldOrStaticBlock ;
162162 this .isAnonymousFunctionDefinition = isAnonymousFunctionDefinition ;
163163 }
164164
@@ -180,8 +180,8 @@ public final boolean isStatic() {
180180 return isStatic ;
181181 }
182182
183- public final boolean isField () {
184- return isField ;
183+ public final boolean isFieldOrStaticBlock () {
184+ return isFieldOrStaticBlock ;
185185 }
186186
187187 public final boolean isAnonymousFunctionDefinition () {
@@ -218,9 +218,9 @@ private abstract static class CachingObjectLiteralMemberNode extends ObjectLiter
218218 protected final Object name ;
219219 @ CompilationFinal private DynamicObjectLibrary dynamicObjectLibrary ;
220220
221- CachingObjectLiteralMemberNode (Object name , boolean isStatic , int attributes , boolean isField ) {
222- super (isStatic , attributes , isField , false );
223- assert JSRuntime .isPropertyKey (name ) || (name == null && isStatic && isField ) : name ;
221+ CachingObjectLiteralMemberNode (Object name , boolean isStatic , int attributes , boolean isFieldOrStaticBlock ) {
222+ super (isStatic , attributes , isFieldOrStaticBlock , false );
223+ assert JSRuntime .isPropertyKey (name ) || (name == null && isStatic && isFieldOrStaticBlock ) : name ;
224224 this .name = name ;
225225 }
226226
@@ -243,8 +243,8 @@ protected final DynamicObjectLibrary dynamicObjectLibrary(JSContext context) {
243243 private static class ObjectLiteralDataMemberNode extends CachingObjectLiteralMemberNode {
244244 @ Child protected JavaScriptNode valueNode ;
245245
246- ObjectLiteralDataMemberNode (Object name , boolean isStatic , int attributes , JavaScriptNode valueNode , boolean isField ) {
247- super (name , isStatic , attributes , isField );
246+ ObjectLiteralDataMemberNode (Object name , boolean isStatic , int attributes , JavaScriptNode valueNode , boolean isFieldOrStaticBlock ) {
247+ super (name , isStatic , attributes , isFieldOrStaticBlock );
248248 this .valueNode = valueNode ;
249249 }
250250
@@ -260,7 +260,7 @@ public Object evaluateValue(VirtualFrame frame, DynamicObject homeObject) {
260260 }
261261
262262 private void execute (DynamicObject obj , Object value , JSContext context ) {
263- if (isField ) {
263+ if (isFieldOrStaticBlock ) {
264264 return ;
265265 }
266266 DynamicObjectLibrary dynamicObjectLib = dynamicObjectLibrary (context );
@@ -269,7 +269,7 @@ private void execute(DynamicObject obj, Object value, JSContext context) {
269269
270270 @ Override
271271 protected ObjectLiteralMemberNode copyUninitialized (Set <Class <? extends Tag >> materializedTags ) {
272- return new ObjectLiteralDataMemberNode (name , isStatic , attributes , JavaScriptNode .cloneUninitialized (valueNode , materializedTags ), isField );
272+ return new ObjectLiteralDataMemberNode (name , isStatic , attributes , JavaScriptNode .cloneUninitialized (valueNode , materializedTags ), isFieldOrStaticBlock );
273273 }
274274 }
275275
@@ -338,7 +338,7 @@ public abstract static class ComputedObjectLiteralDataMemberNode extends ObjectL
338338 }
339339
340340 @ SuppressWarnings ("unused" )
341- @ Specialization (guards = {"!isField " , "!isAnonymousFunctionDefinition" , "setFunctionName==null" , "!isMethodNode(valueNode)" }, limit = "3" )
341+ @ Specialization (guards = {"!isFieldOrStaticBlock " , "!isAnonymousFunctionDefinition" , "setFunctionName==null" , "!isMethodNode(valueNode)" }, limit = "3" )
342342 public final void doNoFieldNoFunctionDef (VirtualFrame frame , DynamicObject receiver , DynamicObject homeObject , JSContext context ,
343343 @ CachedLibrary ("receiver" ) DynamicObjectLibrary dynamicObject ) {
344344 Object key = evaluateKey (frame );
@@ -349,7 +349,7 @@ public final void doNoFieldNoFunctionDef(VirtualFrame frame, DynamicObject recei
349349 @ SuppressWarnings ("unused" )
350350 @ Specialization
351351 public final void doGeneric (VirtualFrame frame , DynamicObject receiver , DynamicObject homeObject , JSContext context ) {
352- if (isField ) {
352+ if (isFieldOrStaticBlock ) {
353353 return ;
354354 }
355355 Object key = evaluateKey (frame );
@@ -382,7 +382,7 @@ public Object evaluateValue(VirtualFrame frame, DynamicObject homeObject) {
382382 @ Override
383383 protected ObjectLiteralMemberNode copyUninitialized (Set <Class <? extends Tag >> materializedTags ) {
384384 return ObjectLiteralNodeFactory .ComputedObjectLiteralDataMemberNodeGen .create (JavaScriptNode .cloneUninitialized (propertyKey , materializedTags ), isStatic , attributes ,
385- JavaScriptNode .cloneUninitialized (valueNode , materializedTags ), isField , isAnonymousFunctionDefinition );
385+ JavaScriptNode .cloneUninitialized (valueNode , materializedTags ), isFieldOrStaticBlock , isAnonymousFunctionDefinition );
386386 }
387387 }
388388
0 commit comments