Transformation of Applicative Specifications into Imperative ...
Transformation of Applicative Specifications into Imperative ... Transformation of Applicative Specifications into Imperative ...
APPENDIX F. SOURCE CODE } } public void visitNoReadAccessMode ( NoReadAccessMode noReadAccessMode ) {} public void v i s i t W r i t e A c c e s s D e s c ( WriteAccessDesc writeAccessDesc ) { r e s u l t . append ( " w r i t e " ) ; for ( Access ac : writeAccessDesc . a c c e s s _ l i s t ( ) . g e t L i s t ( ) ) { ac . accept ( this ) ; r e s u l t . append ( " , " ) ; } i f ( writeAccessDesc . a c c e s s _ l i s t ( ) . l e n ( ) > 0) { r e s u l t . d e l e t e ( r e s u l t . length ( ) − 2 , r e s u l t . length ( ) − 1) ; } } public void visitNoWriteAccessMode ( NoWriteAccessMode noWriteAccessMode ) {} public void visitAccessValueOrVariableName ( AccessValueOrVariableName valueOrVariableName ) { valueOrVariableName . variable_name ( ) . accept ( this ) ; } /∗ Value Expression ∗/ public void visitMake_ValueLiteral ( Make_ValueLiteral v a l u e L i t e r a l ) { v a l u e L i t e r a l . v a l u e _ l i t e r a l ( ) . accept ( this ) ; } public void visitMake_ValueOrVariableName ( Make_ValueOrVariableName valueOrVariableName ) { valueOrVariableName . value_or_variable_name ( ) . accept ( this ) ; } public void visitMake_BasicExpr ( Make_BasicExpr basicExpr ) { basicExpr . basic_expr ( ) . accept ( this ) ; } public void visitProductExpr ( ProductExpr productExpr ) { r e s u l t . append ( " ( " ) ; for ( ValueExpr value_expr : productExpr . value_expr_list ( ) . g e t L i s t ( ) ) { value_expr . accept ( this ) ; r e s u l t . append ( " , " ) ; } 540
} F.2. VISITOR MODULES i f ( productExpr . value_expr_list ( ) . l e n ( ) > 0) { r e s u l t . d e l e t e ( r e s u l t . l ength ( ) − 2 , r e s u l t . length ( ) ) ; } r e s u l t . append ( " ) " ) ; public void visitMake_SetExpr ( Make_SetExpr setExpr ) { setExpr . set_expr ( ) . accept ( this ) ; } public void visitMake_ListExpr ( Make_ListExpr makeListExpr ) { makeListExpr . l i s t _ e x p r ( ) . accept ( this ) ; } public void visitMake_MapExpr (Make_MapExpr mapExpr) { mapExpr . map_expr ( ) . accept ( this ) ; } public void v i s i t A p p l i c a t i o n E x p r ( ApplicationExpr applicationExpr ) { applicationExpr . value_expr ( ) . accept ( this ) ; r e s u l t . append ( " ( " ) ; for ( ValueExpr ve : applicationExpr . appl_value_expr_list ( ) . g e t L i s t ( ) ) { ve . accept ( this ) ; r e s u l t . append ( " , " ) ; } i f ( a pplicationExpr . appl_value_expr_list ( ) . l e n ( ) > 0) { r e s u l t . d e l e t e ( r e s u l t . l ength ( ) − 2 , r e s u l t . length ( ) ) ; } r e s u l t . append ( " ) " ) ; } public void visitDisambiguationExpr ( DisambiguationExpr disExpr ) { disExpr . dis_value_expr ( ) . accept ( this ) ; r e s u l t . append ( " : " ) ; disExpr . dis_type_expr ( ) . accept ( this ) ; } public void visitBracketedExpr ( BracketedExpr bracketedExpr ) { r e s u l t . append ( " ( " ) ; bracketedExpr . bracketed_expr ( ) . accept ( this ) ; r e s u l t . append ( " ) " ) ; } public void v i s i t V a l u e I n f i x E x p r ( ValueInfixExpr v a l u e I n f i x E x p r ) { v a l u e I n f i x E x p r . l e f t ( ) . accept ( this ) ; r e s u l t . append ( " " ) ; v a l u e I n f i x E x p r . op ( ) . accept ( this ) ; r e s u l t . append ( " " ) ; 541
- Page 506 and 507: APPENDIX E. ANTLR GRAMMAR ; | NAT {
- Page 508 and 509: APPENDIX E. ANTLR GRAMMAR ; { ve3 =
- Page 510 and 511: APPENDIX E. ANTLR GRAMMAR ( | RPARE
- Page 512 and 513: APPENDIX E. ANTLR GRAMMAR | { optio
- Page 514 and 515: APPENDIX E. ANTLR GRAMMAR new RSLLi
- Page 516 and 517: APPENDIX E. ANTLR GRAMMAR infix_op_
- Page 518 and 519: APPENDIX E. ANTLR GRAMMAR : v l = v
- Page 520 and 521: APPENDIX E. ANTLR GRAMMAR } t e s t
- Page 522 and 523: APPENDIX E. ANTLR GRAMMAR } : ’ .
- Page 524 and 525: APPENDIX E. ANTLR GRAMMAR 508
- Page 526 and 527: APPENDIX F. SOURCE CODE System . e
- Page 528 and 529: APPENDIX F. SOURCE CODE } } catch (
- Page 530 and 531: APPENDIX F. SOURCE CODE F.2 Visitor
- Page 532 and 533: APPENDIX F. SOURCE CODE public void
- Page 534 and 535: APPENDIX F. SOURCE CODE public void
- Page 536 and 537: APPENDIX F. SOURCE CODE public void
- Page 538 and 539: APPENDIX F. SOURCE CODE public void
- Page 540 and 541: APPENDIX F. SOURCE CODE public void
- Page 542 and 543: APPENDIX F. SOURCE CODE public void
- Page 544 and 545: APPENDIX F. SOURCE CODE public void
- Page 546 and 547: APPENDIX F. SOURCE CODE StringRSLAs
- Page 548 and 549: APPENDIX F. SOURCE CODE } nameOrWil
- Page 550 and 551: APPENDIX F. SOURCE CODE } public vo
- Page 552 and 553: APPENDIX F. SOURCE CODE } r e s u l
- Page 554 and 555: APPENDIX F. SOURCE CODE public void
- Page 558 and 559: APPENDIX F. SOURCE CODE } v a l u e
- Page 560 and 561: APPENDIX F. SOURCE CODE } public vo
- Page 562 and 563: APPENDIX F. SOURCE CODE } public vo
- Page 564 and 565: APPENDIX F. SOURCE CODE public void
- Page 566 and 567: APPENDIX F. SOURCE CODE } r e s u l
- Page 568 and 569: APPENDIX F. SOURCE CODE } } r e s u
- Page 570 and 571: APPENDIX G. TEST RESULTS continued
- Page 572 and 573: APPENDIX G. TEST RESULTS continued
- Page 574 and 575: APPENDIX G. TEST RESULTS continued
- Page 576: APPENDIX G. TEST RESULTS continued
}<br />
F.2. VISITOR MODULES<br />
i f ( productExpr . value_expr_list ( ) . l e n ( ) > 0) {<br />
r e s u l t . d e l e t e ( r e s u l t . l ength ( ) − 2 , r e s u l t . length ( ) ) ;<br />
}<br />
r e s u l t . append ( " ) " ) ;<br />
public void visitMake_SetExpr ( Make_SetExpr setExpr ) {<br />
setExpr . set_expr ( ) . accept ( this ) ;<br />
}<br />
public void visitMake_ListExpr ( Make_ListExpr makeListExpr ) {<br />
makeListExpr . l i s t _ e x p r ( ) . accept ( this ) ;<br />
}<br />
public void visitMake_MapExpr (Make_MapExpr mapExpr) {<br />
mapExpr . map_expr ( ) . accept ( this ) ;<br />
}<br />
public void v i s i t A p p l i c a t i o n E x p r ( ApplicationExpr applicationExpr ) {<br />
applicationExpr . value_expr ( ) . accept ( this ) ;<br />
r e s u l t . append ( " ( " ) ;<br />
for ( ValueExpr ve :<br />
applicationExpr . appl_value_expr_list ( ) . g e t L i s t ( ) ) {<br />
ve . accept ( this ) ;<br />
r e s u l t . append ( " , " ) ;<br />
}<br />
i f ( a pplicationExpr . appl_value_expr_list ( ) . l e n ( ) > 0) {<br />
r e s u l t . d e l e t e ( r e s u l t . l ength ( ) − 2 , r e s u l t . length ( ) ) ;<br />
}<br />
r e s u l t . append ( " ) " ) ;<br />
}<br />
public void visitDisambiguationExpr ( DisambiguationExpr disExpr ) {<br />
disExpr . dis_value_expr ( ) . accept ( this ) ;<br />
r e s u l t . append ( " : " ) ;<br />
disExpr . dis_type_expr ( ) . accept ( this ) ;<br />
}<br />
public void visitBracketedExpr ( BracketedExpr bracketedExpr ) {<br />
r e s u l t . append ( " ( " ) ;<br />
bracketedExpr . bracketed_expr ( ) . accept ( this ) ;<br />
r e s u l t . append ( " ) " ) ;<br />
}<br />
public void v i s i t V a l u e I n f i x E x p r ( ValueInfixExpr v a l u e I n f i x E x p r ) {<br />
v a l u e I n f i x E x p r . l e f t ( ) . accept ( this ) ;<br />
r e s u l t . append ( " " ) ;<br />
v a l u e I n f i x E x p r . op ( ) . accept ( this ) ;<br />
r e s u l t . append ( " " ) ;<br />
541