1313import liquidjava .rj_language .BuiltinFunctionPredicate ;
1414import liquidjava .rj_language .Predicate ;
1515import liquidjava .rj_language .parsing .ParsingException ;
16- import liquidjava .utils .Utils ;
16+ import liquidjava .utils .constants .Formats ;
17+ import liquidjava .utils .constants .Keys ;
18+ import liquidjava .utils .constants .Types ;
1719
1820import org .apache .commons .lang3 .NotImplementedException ;
1921import spoon .reflect .code .CtArrayRead ;
@@ -172,22 +174,22 @@ public <T> void visitCtNewArray(CtNewArray<T> newArray) {
172174 } catch (ParsingException e ) {
173175 return ; // error already in ErrorEmitter
174176 }
175- String name = String .format (freshFormat , context .getCounter ());
176- if (c .getVariableNames ().contains (WILD_VAR )) {
177- c = c .substituteVariable (WILD_VAR , name );
177+ String name = String .format (Formats . RET , context .getCounter ());
178+ if (c .getVariableNames ().contains (Keys . WILDCARD )) {
179+ c = c .substituteVariable (Keys . WILDCARD , name );
178180 } else {
179181 c = Predicate .createEquals (Predicate .createVar (name ), c );
180182 }
181183 context .addVarToContext (name , factory .Type ().INTEGER_PRIMITIVE , c , exp );
182184 Predicate ep ;
183185 try {
184186 ep = Predicate .createEquals (
185- BuiltinFunctionPredicate .builtin_length (WILD_VAR , newArray , getErrorEmitter ()),
187+ BuiltinFunctionPredicate .builtin_length (Keys . WILDCARD , newArray , getErrorEmitter ()),
186188 Predicate .createVar (name ));
187189 } catch (ParsingException e ) {
188190 return ; // error already in ErrorEmitter
189191 }
190- newArray .putMetadata (REFINE_KEY , ep );
192+ newArray .putMetadata (Keys . REFINEMENT , ep );
191193 }
192194 }
193195
@@ -201,9 +203,9 @@ public <T> void visitCtThisAccess(CtThisAccess<T> thisAccess) {
201203 CtClass <?> c = thisAccess .getParent (CtClass .class );
202204 String s = c .getSimpleName ();
203205 if (thisAccess .getParent () instanceof CtReturn ) {
204- String thisName = String .format (thisFormat , s );
205- thisAccess .putMetadata (REFINE_KEY ,
206- Predicate .createEquals (Predicate .createVar (WILD_VAR ), Predicate .createVar (thisName )));
206+ String thisName = String .format (Formats . THIS , s );
207+ thisAccess .putMetadata (Keys . REFINEMENT ,
208+ Predicate .createEquals (Predicate .createVar (Keys . WILDCARD ), Predicate .createVar (thisName )));
207209 }
208210 }
209211
@@ -227,7 +229,7 @@ public <T, A extends T> void visitCtAssignment(CtAssignment<T, A> assignment) {
227229 CtFieldWrite <?> fw = ((CtFieldWrite <?>) ex );
228230 CtFieldReference <?> cr = fw .getVariable ();
229231 CtField <?> f = fw .getVariable ().getDeclaration ();
230- String updatedVarName = String .format (thisFormat , cr .getSimpleName ());
232+ String updatedVarName = String .format (Formats . THIS , cr .getSimpleName ());
231233 checkAssignment (updatedVarName , cr .getType (), ex , assignment .getAssignment (), assignment , f );
232234
233235 // corresponding ghost function update
@@ -249,9 +251,9 @@ public <T> void visitCtArrayRead(CtArrayRead<T> arrayRead) {
249251 }
250252
251253 super .visitCtArrayRead (arrayRead );
252- String name = String .format (instanceFormat , "arrayAccess" , context .getCounter ());
254+ String name = String .format (Formats . INSTANCE , "arrayAccess" , context .getCounter ());
253255 context .addVarToContext (name , arrayRead .getType (), new Predicate (), arrayRead );
254- arrayRead .putMetadata (REFINE_KEY , Predicate .createVar (name ));
256+ arrayRead .putMetadata (Keys . REFINEMENT , Predicate .createVar (name ));
255257 // TODO predicate for now is always TRUE
256258 }
257259
@@ -261,15 +263,15 @@ public <T> void visitCtLiteral(CtLiteral<T> lit) {
261263 return ;
262264 }
263265
264- List <String > types = Arrays .asList (implementedTypes );
266+ List <String > types = Arrays .asList (Types . IMPLEMENTED );
265267 String type = lit .getType ().getQualifiedName ();
266268 if (types .contains (type )) {
267- lit .putMetadata (REFINE_KEY , Predicate .createEquals (Predicate .createVar (WILD_VAR ),
269+ lit .putMetadata (Keys . REFINEMENT , Predicate .createEquals (Predicate .createVar (Keys . WILDCARD ),
268270 Predicate .createLit (lit .getValue ().toString (), type )));
269271
270272 } else if (lit .getType ().getQualifiedName ().equals ("java.lang.String" )) {
271273 // Only taking care of strings inside refinements
272- } else if (type .equals (Utils . NULL_TYPE )) {
274+ } else if (type .equals (Types . NULL )) {
273275 // Skip null literals
274276 } else {
275277 throw new NotImplementedException (
@@ -293,10 +295,10 @@ public <T> void visitCtField(CtField<T> f) {
293295 // context.addVarToContext(f.getSimpleName(), f.getType(),
294296 // c.map( i -> i.substituteVariable(WILD_VAR, f.getSimpleName()).orElse(new
295297 // Predicate()) );
296- String nname = String .format (thisFormat , f .getSimpleName ());
298+ String nname = String .format (Formats . THIS , f .getSimpleName ());
297299 Predicate ret = new Predicate ();
298300 if (c .isPresent ()) {
299- ret = c .get ().substituteVariable (WILD_VAR , nname ).substituteVariable (f .getSimpleName (), nname );
301+ ret = c .get ().substituteVariable (Keys . WILDCARD , nname ).substituteVariable (f .getSimpleName (), nname );
300302 }
301303 RefinedVariable v = context .addVarToContext (nname , f .getType (), ret , f );
302304 if (v instanceof Variable ) {
@@ -315,27 +317,27 @@ public <T> void visitCtFieldRead(CtFieldRead<T> fieldRead) {
315317 RefinedVariable rv = context .getVariableByName (fieldName );
316318 if (rv instanceof Variable && ((Variable ) rv ).getLocation ().isPresent ()
317319 && ((Variable ) rv ).getLocation ().get ().equals (fieldRead .getTarget ().toString ())) {
318- fieldRead .putMetadata (REFINE_KEY , context .getVariableRefinements (fieldName ));
320+ fieldRead .putMetadata (Keys . REFINEMENT , context .getVariableRefinements (fieldName ));
319321 } else {
320- fieldRead .putMetadata (REFINE_KEY ,
321- Predicate .createEquals (Predicate .createVar (WILD_VAR ), Predicate .createVar (fieldName )));
322+ fieldRead .putMetadata (Keys . REFINEMENT ,
323+ Predicate .createEquals (Predicate .createVar (Keys . WILDCARD ), Predicate .createVar (fieldName )));
322324 }
323325
324- } else if (context .hasVariable (String .format (thisFormat , fieldName ))) {
325- String thisName = String .format (thisFormat , fieldName );
326- fieldRead .putMetadata (REFINE_KEY ,
327- Predicate .createEquals (Predicate .createVar (WILD_VAR ), Predicate .createVar (thisName )));
326+ } else if (context .hasVariable (String .format (Formats . THIS , fieldName ))) {
327+ String thisName = String .format (Formats . THIS , fieldName );
328+ fieldRead .putMetadata (Keys . REFINEMENT ,
329+ Predicate .createEquals (Predicate .createVar (Keys . WILDCARD ), Predicate .createVar (thisName )));
328330
329331 } else if (fieldRead .getVariable ().getSimpleName ().equals ("length" )) {
330332 String targetName = fieldRead .getTarget ().toString ();
331333 try {
332- fieldRead .putMetadata (REFINE_KEY , Predicate .createEquals (Predicate .createVar (WILD_VAR ),
334+ fieldRead .putMetadata (Keys . REFINEMENT , Predicate .createEquals (Predicate .createVar (Keys . WILDCARD ),
333335 BuiltinFunctionPredicate .builtin_length (targetName , fieldRead , getErrorEmitter ())));
334336 } catch (ParsingException e ) {
335337 return ; // error already in ErrorEmitter
336338 }
337339 } else {
338- fieldRead .putMetadata (REFINE_KEY , new Predicate ());
340+ fieldRead .putMetadata (Keys . REFINEMENT , new Predicate ());
339341 // TODO DO WE WANT THIS OR TO SHOW ERROR MESSAGE
340342 }
341343
@@ -417,8 +419,8 @@ public void visitCtIf(CtIf ifElement) {
417419 } catch (ParsingException e ) {
418420 return ; // error already in ErrorEmitter
419421 }
420- String freshVarName = String .format (freshFormat , context .getCounter ());
421- expRefs = expRefs .substituteVariable (WILD_VAR , freshVarName );
422+ String freshVarName = String .format (Formats . FRESH , context .getCounter ());
423+ expRefs = expRefs .substituteVariable (Keys . WILDCARD , freshVarName );
422424 Predicate lastExpRefs = substituteAllVariablesForLastInstance (expRefs );
423425 expRefs = Predicate .createConjunction (expRefs , lastExpRefs );
424426
@@ -470,11 +472,11 @@ public <T> void visitCtArrayWrite(CtArrayWrite<T> arrayWrite) {
470472 BuiltinFunctionPredicate fp ;
471473 try {
472474 fp = BuiltinFunctionPredicate .builtin_addToIndex (arrayWrite .getTarget ().toString (), index .toString (),
473- WILD_VAR , arrayWrite , getErrorEmitter ());
475+ Keys . WILDCARD , arrayWrite , getErrorEmitter ());
474476 } catch (ParsingException e ) {
475477 return ; // error already in ErrorEmitter
476478 }
477- arrayWrite .putMetadata (REFINE_KEY , fp );
479+ arrayWrite .putMetadata (Keys . REFINEMENT , fp );
478480 }
479481
480482 @ Override
@@ -487,7 +489,7 @@ public <T> void visitCtConditional(CtConditional<T> conditional) {
487489 Predicate cond = getRefinement (conditional .getCondition ());
488490 Predicate c = Predicate .createITE (cond , getRefinement (conditional .getThenExpression ()),
489491 getRefinement (conditional .getElseExpression ()));
490- conditional .putMetadata (REFINE_KEY , c );
492+ conditional .putMetadata (Keys . REFINEMENT , c );
491493 }
492494
493495 @ Override
@@ -582,12 +584,12 @@ private Predicate substituteAllVariablesForLastInstance(Predicate c) {
582584 * Cannot be null
583585 */
584586 private <T > void getPutVariableMetadada (CtElement elem , String name ) {
585- Predicate cref = Predicate .createEquals (Predicate .createVar (WILD_VAR ), Predicate .createVar (name ));
587+ Predicate cref = Predicate .createEquals (Predicate .createVar (Keys . WILDCARD ), Predicate .createVar (name ));
586588 Optional <VariableInstance > ovi = context .getLastVariableInstance (name );
587589 if (ovi .isPresent ()) {
588- cref = Predicate .createEquals (Predicate .createVar (WILD_VAR ), Predicate .createVar (ovi .get ().getName ()));
590+ cref = Predicate .createEquals (Predicate .createVar (Keys . WILDCARD ), Predicate .createVar (ovi .get ().getName ()));
589591 }
590592
591- elem .putMetadata (REFINE_KEY , cref );
593+ elem .putMetadata (Keys . REFINEMENT , cref );
592594 }
593595}
0 commit comments