This is the visitor part of the AXLReader. More...
Public Member Functions | |
AXLVisitor (IAXLFileOperation newReader, AXLFile newCurrentFile, de.fraunhofer.isst.axbench.axlang.elements.Model newModel, ReferenceHandler newReferenceHandler, Collection< de.fraunhofer.isst.axbench.axlang.elements.architecturemodel.AbstractConnection > newMissingDataLinkConnections) | |
Constructor with needed handles. | |
de.fraunhofer.isst.axbench.axlang.elements.Model | getModel () |
Returns generated model. | |
void | visit (AspectCompositionLinkApplication n) |
void | visit (AspectComposition n) |
void | visit (GlobalInstancePath n) |
void | visit (GlobalSubComponentInstance n) |
void | visit (GlobalSignalAtPortInstance n) |
void | visit (GlobalSignalInstance n) |
void | visit (GlobalFunctionAlternativeInstance n) |
void | visit (GlobalFunctionInstance n) |
void | visit (GlobalStorageInstance n) |
void | visit (GlobalOperationAtPortInstance n) |
void | visit (GlobalOperationInstance n) |
void | visit (GlobalPortInstance n) |
void | visit (GlobalHWPortInstance n) |
void | visit (GlobalHWSubComponentInstance n) |
void | visit (GlobalHWBusInstance n) |
void | visit (GlobalHWConnectionInstance n) |
void | visit (GlobalConnectionInstance n) |
void | visit (GlobalComponentInstance n) |
void | visit (AspectRelationLink n) |
void | visit (AspectRelationReplace n) |
void | visit (AspectRelationInner n) |
void | visit (AspectRelationIdentity n) |
void | visit (AspectRelationCopy n) |
void | visit (AspectMapping n) |
void | visit (ActivationTrigger n) |
void | visit (Activation n) |
void | visit (ActivityAttribute n) |
void | visit (Activity n) |
void | visit (Transaction n) |
void | visit (TransactionModel n) |
void | visit (HWBus n) |
void | visit (HWConnection n) |
void | visit (HWXORSubcomponent n) |
void | visit (HWAtomicSubcomponent n) |
void | visit (HWPort n) |
void | visit (HWComponent n) |
void | visit (ResourceModel n) |
void | visit (LocalPortInstance n) |
void | visit (LocalInstance n) |
void | visit (CardinalityAssignment n) |
void | visit (Con2Con_Link n) |
void | visit (P2P_Link n) |
void | visit (SC2SC_Link n) |
void | visit (A2RMapping n) |
void | visit (F2RLink n) |
void | visit (F2RMapping n) |
void | visit (F2ALink n) |
void | visit (F2AMapping n) |
void | visit (Operation n) |
void | visit (Signal n) |
void | visit (ReturnStatement n) |
void | visit (OperationCallStatement n) |
void | visit (WritePort n) |
void | visit (DoStatement n) |
void | visit (WhileStatement n) |
void | visit (ForStatement n) |
void | visit (IfStatement n) |
void | visit (OperationCallExpression n) |
void | visit (ComparisonOperator n) |
void | visit (BooleanBinaryOperator n) |
void | visit (ArithmeticBinaryOperator n) |
void | visit (AtomicOrPostfixOrInfixExpression n) |
void | visit (PrefixExpression n) |
void | visit (BracketsExpression n) |
void | visit (ReadPort n) |
void | visit (VariableExpression n) |
void | visit (ConstantExpression n) |
void | visit (Assignment n) |
void | visit (Block n) |
void | visit (XORFunction n) |
void | visit (Execute n) |
void | visit (LocalFunctionInstance n) |
void | visit (FunctionLink n) |
void | visit (Postcondition n) |
void | visit (Interaction n) |
void | visit (Precondition n) |
void | visit (Purpose n) |
void | visit (Behavior n) |
void | visit (WriteAccess n) |
void | visit (ReadAccess n) |
void | visit (Triggers n) |
void | visit (AtomicFunction n) |
void | visit (LocalStorageInstance n) |
void | visit (StorageLink n) |
void | visit (Storage n) |
void | visit (DataElementLink n) |
void | visit (DataElementLinks n) |
void | visit (Connection n) |
void | visit (XORSubcomponent n) |
void | visit (AtomicSubcomponent n) |
void | visit (PortSignature n) |
void | visit (Port n) |
void | visit (Component n) |
void | visit (ApplicationModel n) |
void | visit (DeSelectConfiguration n) |
void | visit (SelectConfiguration n) |
void | visit (Configuration n) |
void | visit (AtomicFeature n) |
void | visit (Cardinality n) |
void | visit (FeatureGroup n) |
void | visit (FeatureModel n) |
void | visit (Model n) |
void | visit (Attribute n) |
void | visit (IncludeFile n) |
void | visit (FeaturePath n) |
void | visit (AspectCompositionLinkAspectMapping n) |
Private Member Functions | |
void | addClock () |
Add clock to application model. | |
void | createGlobalInstance (NodeToken idNode) |
Marks a global instance as missing reference. | |
MetaInformation | createMetaInformation (NodeToken startNodeToken, NodeToken endNodeToken) |
Creates meta information from a (local) node token and the (global) current axl-file. | |
MetaInformation | createMetaInformation (NodeToken nodeToken) |
Creates meta information from a (local) node token and the (global) current axl-file. | |
void | setCommonInformation (IAXLangElement axlElement, NodeToken ntCommentToken, NodeToken ntIdentifier) |
Sets the element's common information: identifier, comment (description), meta information. | |
void | setDescription (IAXLangElement axlElement, NodeToken ntAfterComment) |
Sets the description for the given element from the tokens comment. | |
void | setMetaInformation (IAXLangElement axlElement, NodeToken ntStart, NodeToken ntEnd) |
Sets the element meta information (filename, line, column). | |
void | setMetaInformation (IAXLangElement axlElement, NodeToken ntStartAndEnd) |
Sets the element's meta information with the token representing start and end token. | |
Static Private Member Functions | |
static String | cleanText (String sToClean, String...arrReplacees) |
Cleans a text from '$' and leading/trailing whitespaces. | |
Private Attributes | |
de.fraunhofer.isst.axbench.axlang.elements.Model | axlModel = null |
aXLang model | |
List< String > | currentIDPath = null |
last path that was read by visit(IDPath) | |
NodeToken | idPathFirstNodeToken |
the first node token of the last visited id-path | |
NodeToken | idPathLastNodeToken |
the last node token of the last visited id-path | |
List< String > | lstGlobalInstanceContext |
context for global instances | |
List< String > | lstGlobalInstancePath |
last path read by visit(GlobalInstancePath) | |
Collection < de.fraunhofer.isst.axbench.axlang.elements.architecturemodel.AbstractConnection > | missingDataLinkConnections = null |
NodeToken | ntSourceSubComponent |
node token for the source subcomponent of a connection, needed to define the source references of the data element links of the connection | |
NodeToken | ntTargetSubComponent |
node token for the source subcomponent of a connection, needed to define the source references of the data element links of the connection | |
String | sourceApplicationModelID |
id of the application model in an A2RMapping, needed for the context of the source instances of its links | |
Role | statementRole = null |
erkärung : processed ifstatement element | |
String | targetResourceModelID |
id of the resource model in an A2RMapping, needed for the context of the target instances of its links | |
IAXLFileOperation | theAXLangReader = null |
aXLang reader (storing messages, errors, ...) | |
AXLFile | theCurrentAXLFile = null |
current convert file | |
Role | theGlobalInstanceRole |
is needed to define the child role of a global instance | |
IAXLangElement | theParent = null |
processed parent element | |
ReferenceHandler | theReferenceHandler = null |
This is the visitor part of the AXLReader.
It was separated as class for two reasons:
Included files have to be defined relative to the path of the model file.
This converter is a little more complicated in dealing with included files. They can not be opened within this file, because this file should be platform independent. Opening Java files or Eclipse files differs not only in detail.
Therefore, every include is collected in a file list. This list is processed by the AXLReader which extends the AbstractAXLFileOperation.
de.fraunhofer.isst.axbench.operations.AXLVisitor.AXLVisitor | ( | IAXLFileOperation | newReader, | |
AXLFile | newCurrentFile, | |||
de.fraunhofer.isst.axbench.axlang.elements.Model | newModel, | |||
ReferenceHandler | newReferenceHandler, | |||
Collection< de.fraunhofer.isst.axbench.axlang.elements.architecturemodel.AbstractConnection > | newMissingDataLinkConnections | |||
) |
Constructor with needed handles.
newReader | calling aXLang reader | |
newCurrentFile | current convert file | |
newModel | given aXLang model (null allowed) | |
newReferenceHandler | handler of missing references | |
newMissingDataLinkConnections | missing data link connnections |
void de.fraunhofer.isst.axbench.operations.AXLVisitor.addClock | ( | ) | [private] |
Add clock to application model.
theParent
is assumed to be an application model
static String de.fraunhofer.isst.axbench.operations.AXLVisitor.cleanText | ( | String | sToClean, | |
String... | arrReplacees | |||
) | [static, private] |
Cleans a text from '$' and leading/trailing whitespaces.
sToClean | text to be cleaned | |
arrReplacees | array of strings to replace with "" |
void de.fraunhofer.isst.axbench.operations.AXLVisitor.createGlobalInstance | ( | NodeToken | idNode | ) | [private] |
Marks a global instance as missing reference.
idNode | id node needed for the error message |
MetaInformation de.fraunhofer.isst.axbench.operations.AXLVisitor.createMetaInformation | ( | NodeToken | nodeToken | ) | [private] |
Creates meta information from a (local) node token and the (global) current axl-file.
nodeToken | the node token that defines the line and column position |
MetaInformation de.fraunhofer.isst.axbench.operations.AXLVisitor.createMetaInformation | ( | NodeToken | startNodeToken, | |
NodeToken | endNodeToken | |||
) | [private] |
Creates meta information from a (local) node token and the (global) current axl-file.
nodeToken | the node token that defines the line and column position |
de.fraunhofer.isst.axbench.axlang.elements.Model de.fraunhofer.isst.axbench.operations.AXLVisitor.getModel | ( | ) |
Returns generated model.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.setCommonInformation | ( | IAXLangElement | axlElement, | |
NodeToken | ntCommentToken, | |||
NodeToken | ntIdentifier | |||
) | [private] |
Sets the element's common information: identifier, comment (description), meta information.
axlElement | element to set information to | |
ntCommentToken | node token with comment | |
ntIdentifier | identifier node token |
void de.fraunhofer.isst.axbench.operations.AXLVisitor.setDescription | ( | IAXLangElement | axlElement, | |
NodeToken | ntAfterComment | |||
) | [private] |
Sets the description for the given element from the tokens comment.
axlElement | element to set description for | |
ntAfterComment | node token that contains the description, i.e. the token after the comment (mainly the first token) |
void de.fraunhofer.isst.axbench.operations.AXLVisitor.setMetaInformation | ( | IAXLangElement | axlElement, | |
NodeToken | ntStart, | |||
NodeToken | ntEnd | |||
) | [private] |
Sets the element meta information (filename, line, column).
axlElement | element to set information to | |
ntStart | node token that starts the definition (start line and start column) | |
ntEnd | node token that ends the definition (end line and end column) |
void de.fraunhofer.isst.axbench.operations.AXLVisitor.setMetaInformation | ( | IAXLangElement | axlElement, | |
NodeToken | ntStartAndEnd | |||
) | [private] |
Sets the element's meta information with the token representing start and end token.
axlElement | element to set information to | |
ntStartAndEnd | node token representing start end end token |
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | GlobalFunctionInstance | n | ) |
f0 -> <FUNCTION> f1 -> GlobalInstancePath()
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | GlobalStorageInstance | n | ) |
f0 -> <STORAGE> f1 -> GlobalInstancePath()
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | GlobalOperationAtPortInstance | n | ) |
f0 -> <OPERATION> f1 -> GlobalInstancePath()
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | GlobalOperationInstance | n | ) |
f0 -> <OPERATION> f1 -> GlobalInstancePath()
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | GlobalPortInstance | n | ) |
f0 -> <PORT> f1 -> GlobalInstancePath()
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | GlobalHWPortInstance | n | ) |
f0 -> <HW_PORT> f1 -> GlobalInstancePath()
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | GlobalHWSubComponentInstance | n | ) |
f0 -> <HW_COMPONENT> f1 -> GlobalInstancePath()
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | GlobalHWBusInstance | n | ) |
f0 -> <HW_BUS> f1 -> GlobalInstancePath()
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | GlobalHWConnectionInstance | n | ) |
f0 -> <HW_CONNECTION> f1 -> GlobalInstancePath()
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | GlobalConnectionInstance | n | ) |
f0 -> <CONNECTION> f1 -> GlobalInstancePath()
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | GlobalComponentInstance | n | ) |
f0 -> <COMPONENT> f1 -> GlobalInstancePath()
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | AspectRelationLink | n | ) |
f0 -> GlobalInstanceInAspectRelation() f1 -> "->" f2 -> GlobalInstanceInAspectRelation() f3 -> ( "," GlobalInstanceInAspectRelation() )*
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | AspectRelationReplace | n | ) |
f0 -> <REPLACE> f1 -> AspectRelationLink() f2 -> ";"
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | AspectRelationInner | n | ) |
f0 -> <INNER> f1 -> AspectRelationLink() f2 -> ";"
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | AspectRelationIdentity | n | ) |
f0 -> <IDENTITY> f1 -> AspectRelationLink() f2 -> ";"
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | AspectRelationCopy | n | ) |
f0 -> <COPY> f1 -> AspectRelationLink() f2 -> ";"
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | AspectMapping | n | ) |
f0 -> <ASPECT_MAPPING> f1 -> <IDENTIFIER> f2 -> "{" f3 -> ( AspectRelationCopy() | AspectRelationIdentity() | AspectRelationInner() | AspectRelationReplace() )* f4 -> "}"
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | ActivationTrigger | n | ) |
f0 -> GlobalFunctionInstance() ":" <IDENTIFIER> "." <IDENTIFIER> <ACTIVATIONKIND> | ( GlobalHWSubComponentInstance() | GlobalHWBusInstance() ) <ACTIVATIONKIND>
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | Activation | n | ) |
f0 -> ActivationTrigger() f1 -> "{" f2 -> [ <PATTERNLENGTH> <NUMBER> ";" ] f3 -> [ <OFFSET> <NUMBER> [ <UNIT> ] ( "," <NUMBER> )* ";" ] f4 -> [ <PERIOD> <NUMBER> <UNIT> ";" ] f5 -> [ <MININTERARRIVALTIME> <NUMBER> <UNIT> ";" ] f6 -> [ <MAXINTERARRIVALTIME> <NUMBER> <UNIT> ";" ] f7 -> [ <JITTER> <NUMBER> <UNIT> ";" ] f8 -> "}"
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | ActivityAttribute | n | ) |
f0 -> ( GlobalFunctionInstance() | GlobalHWComponentInstance() | GlobalHWBusInstance() ) f1 -> "{" f2 -> [ <PRIORITY> <NUMBER> ";" ] f3 -> [ <WCET> <NUMBER> <UNIT> ";" ] f4 -> [ <JITTER> <NUMBER> <UNIT> ";" ] f5 -> [ <DEADLINE> <NUMBER> <UNIT> ";" ] f6 -> "}"
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | Activity | n | ) |
f0 -> ( GlobalFunctionInstance() | GlobalHWComponentInstance() | GlobalHWBusInstance() )
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | Transaction | n | ) |
f0 -> <TRANSACTION> f1 -> <IDENTIFIER> f2 -> "{" f3 -> [ Activity() ( "," Activity() )* ";" ] f4 -> "}"
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | TransactionModel | n | ) |
f0 -> <TRANSACTIONMODEL> f1 -> <IDENTIFIER> f2 -> <IDENTIFIER> f3 -> "{" f4 -> [ Transactions() ] f5 -> [ Activations() ] f6 -> [ ActivitiesAttributes() ] f7 -> "}"
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | HWBus | n | ) |
f0 -> <IDENTIFIER> f1 -> <IDENTIFIER> f2 -> ";"
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | HWConnection | n | ) |
f0 -> [ "\'" <IDENTIFIER> "\'" ] f1 -> [ ( <IDENTIFIER> | <THIS> ) "." ] f2 -> <IDENTIFIER> f3 -> "--" f4 -> ( <IDENTIFIER> | <THIS> ) f5 -> "." f6 -> <IDENTIFIER> f7 -> ";"
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | HWXORSubcomponent | n | ) |
f0 -> [ <OPTIONAL> ] f1 -> <XOR> f2 -> <IDENTIFIER> f3 -> "{" f4 -> ( HWAtomicSubcomponent() )+ f5 -> "}"
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | HWAtomicSubcomponent | n | ) |
f0 -> [ <OPTIONAL> ] f1 -> <IDENTIFIER> f2 -> <IDENTIFIER> f3 -> ( "," <IDENTIFIER> )* f4 -> ";"
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | HWPort | n | ) |
f0 -> [ <OPTIONAL> ] f1 -> <DIRECTION> f2 -> "<" f3 -> ( <HW_BUSTYPE> | <ANALOG> | <DIGITAL> ) f4 -> ">" f5 -> <IDENTIFIER> f6 -> ( "," <IDENTIFIER> )* f7 -> ";"
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | HWComponent | n | ) |
f0 -> [ <TOP> ] f1 -> <HW_COMPONENT> f2 -> <IDENTIFIER> f3 -> [ Attributes() ] f4 -> "{" f5 -> [ HWPorts() ] f6 -> [ HWSubcomponents() ] f7 -> [ HWConnections() ] f8 -> [ HWBusses() ] f9 -> "}"
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | ResourceModel | n | ) |
f0 -> <RESOURCEMODEL> f1 -> <IDENTIFIER> f2 -> "{" f3 -> ( HWComponent() )* f4 -> "}"
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | LocalPortInstance | n | ) |
f0 -> <IDENTIFIER> f1 -> "." f2 -> <IDENTIFIER>
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | LocalInstance | n | ) |
f0 -> ( <SUBCOMPONENT> <IDENTIFIER> ) | ( <PORT> LocalPortInstance() )
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | CardinalityAssignment | n | ) |
f0 -> Cardinality() f1 -> "->" f2 -> LocalInstance() f3 -> ( "," LocalInstance() )* f4 -> ";"
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | Con2Con_Link | n | ) |
f0 -> GlobalConnectionInstance() f1 -> "->" f2 -> GlobalConnectionInstance() f3 -> ";"
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | P2P_Link | n | ) |
f0 -> GlobalPortInstance() f1 -> "->" f2 -> GlobalPortInstance() f3 -> ";"
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | SC2SC_Link | n | ) |
f0 -> GlobalSubComponentInstance() f1 -> "->" f2 -> GlobalSubComponentInstance() f3 -> ";"
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | A2RMapping | n | ) |
f0 -> <A2R_MAPPING> f1 -> <IDENTIFIER> f2 -> <IDENTIFIER> f3 -> "->" f4 -> <IDENTIFIER> f5 -> "{" f6 -> ( SC2SC_Link() | P2P_Link() | Con2Con_Link() )* f7 -> "}"
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | F2RLink | n | ) |
f0 -> <FEATURE> f1 -> IDPath() f2 -> "->" f3 -> GlobalInstanceInF2RLink() f4 -> ( "," GlobalInstanceInF2RLink() )* f5 -> ";"
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | F2RMapping | n | ) |
f0 -> <F2R_MAPPING> f1 -> <IDENTIFIER> f2 -> <IDENTIFIER> f3 -> "->" f4 -> <IDENTIFIER> f5 -> "{" f6 -> ( FeatureToResourceLink() )* f7 -> "}"
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | F2ALink | n | ) |
f0 -> <FEATURE> f1 -> IDPath() f2 -> "->" f3 -> GlobalApplicationModelInstance() f4 -> ( "," GlobalApplicationModelInstance() )* f5 -> ";"
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | F2AMapping | n | ) |
f0 -> <F2A_MAPPING> f1 -> <IDENTIFIER> f2 -> <IDENTIFIER> f3 -> "->" f4 -> <IDENTIFIER> f5 -> "{" f6 -> ( FeatureToApplicationLink() )* f7 -> "}"
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | Operation | n | ) |
f0 -> [ <OPTIONAL> ] f1 -> <DATA_TYPE> f2 -> <IDENTIFIER> f3 -> "(" f4 -> [ <DATA_TYPE> <IDENTIFIER> ( "," <DATA_TYPE> <IDENTIFIER> )* ] f5 -> ")" f6 -> [ <BINDINGTIME> ] f7 -> ";"
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | Signal | n | ) |
f0 -> [ <OPTIONAL> ] f1 -> <DATA_TYPE> f2 -> <IDENTIFIER> f3 -> ( "," <IDENTIFIER> )* f4 -> [ <BINDINGTIME> ] f5 -> ";"
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | ReturnStatement | n | ) |
f0 -> <RETURN> f1 -> "(" f2 -> <IDENTIFIER> f3 -> "." f4 -> <IDENTIFIER> f5 -> "," f6 -> Expression() f7 -> ")" f8 -> ";"
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | OperationCallStatement | n | ) |
f0 -> <CALL> f1 -> "(" f2 -> <IDENTIFIER> f3 -> "." f4 -> OperationExpression() f5 -> ")"
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | WritePort | n | ) |
f0 -> <WRITE> f1 -> "(" f2 -> <IDENTIFIER> f3 -> "." f4 -> <IDENTIFIER> f5 -> "," f6 -> Expression() f7 -> ")" f8 -> ";"
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | DoStatement | n | ) |
f0 -> <DO> f1 -> Block() f2 -> <WHILE> f3 -> "(" f4 -> Expression() f5 -> ")" f6 -> ";"
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | WhileStatement | n | ) |
f0 -> <WHILE> f1 -> "(" f2 -> Expression() f3 -> "(" f4 -> Block()
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | ForStatement | n | ) |
f0 -> <FOR> f1 -> "(" f2 -> AtomicVariable() f3 -> Expression() f4 -> ";" f5 -> Expression() f6 -> ")" f7 -> BLOCK()
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | IfStatement | n | ) |
f0 -> <IF> f1 -> "(" f2 -> Expression() f3 -> "(" f4 -> Block() f5 -> [ <ELSE> Block() ]
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | OperationCallExpression | n | ) |
f0 -> <IDENTIFIER> f1 -> "(" f2 -> [ AtomicExpression() ( "," AtomicExpression() )* ] f3 -> ")"
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | DataElementLinks | n | ) |
f0 -> <AST> | ( DataElementLink() )*
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | BooleanBinaryOperator | n | ) |
f0 -> <ANDOPERATOR> | <OROPERATOR>
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | ArithmeticBinaryOperator | n | ) |
f0 -> <PLUS> | <MINUS> | <AST> |
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | AtomicOrPostfixOrInfixExpression | n | ) |
f0 -> AtomicExpression() f1 -> [ <INCREMENT> | <DECREMENT> | BinaryOperator() Expression() ]
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | PrefixExpression | n | ) |
f0 -> ( <NOT> | <INCREMENT> | <DECREMENT> ) f1 -> AtomicExpression()
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | BracketsExpression | n | ) |
f0 ->"(" f1 -> Expression() f2 -> ")"
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | ReadPort | n | ) |
f0 -> <READ> f1 -> "(" f2 -> <IDENTIFIER> f3 -> "." f4 -> <IDENTIFIER> f5 -> [ "," <IDENTIFIER> ] f6 -> ")"
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | VariableExpression | n | ) |
f0 -> <IDENTIFIER>
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | ConstantExpression | n | ) |
f0 -> <NUMBER> | <TRUE> | <FALSE> | <NULL>
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | Assignment | n | ) |
f0 -> <IDENTIFIER> f1 -> "=" f2 -> ( Expression() | OperationCall() ) f3 -> ";"
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | Block | n | ) |
f0 -> "{" f1 -> ( Statement() )* f2 -> "}"
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | XORFunction | n | ) |
f0 -> <XOR> f1 -> <FUNCTION> f2 -> <IDENTIFIER> f3 -> [ <BINDINGTIME> ] f4 -> "{" f5 -> ( AtomicFunction() )+ f6 -> "}"
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | Execute | n | ) |
f0 -> <EXECUTE> f1 -> Block()
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | LocalFunctionInstance | n | ) |
f0 -> <IDENTIFIER> f1 -> "." f2 -> <IDENTIFIER>
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | FunctionLink | n | ) |
f0 -> <IDENTIFIER> f1 -> "->" f2 -> LocalFunctionInstance() f3 -> ( "," LocalFunctionInstance() )* f4 -> ";"
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | Postcondition | n | ) |
f0 -> <POSTCONDITION> f1 -> "{" f2 -> "}"
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | Interaction | n | ) |
f0 -> <INTERACTION> f1 -> "{" f2 -> "}"
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | Precondition | n | ) |
f0 -> <PRECONDITION> f1 -> "{" f2 -> "}"
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | Purpose | n | ) |
f0 -> <COMPUTATION> f1 -> "{" f2 -> "}"
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | Behavior | n | ) |
f0 -> <BEHAVIOR> f1 -> "{" f2 -> [ Precondition() ] f3 -> [ Interaction() ] f4 -> [ Computation() ] f5 -> [ Postcondition() ] f6 -> "}"
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | WriteAccess | n | ) |
f0 -> <IDENTIFIER> "." <IDENTIFIER> | <IDENTIFIER>
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | ReadAccess | n | ) |
f0 -> <IDENTIFIER> "." <IDENTIFIER> | <IDENTIFIER>
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | Triggers | n | ) |
f0 -> ( <TRIGGER> <IDENTIFIER> "." <IDENTIFIER> ( "," <IDENTIFIER> "." <IDENTIFIER> )* ";" )+
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | AtomicFunction | n | ) |
f0 -> <FUNCTION> f1 -> <IDENTIFIER> f2 -> [ Attributes() ] f3 -> "{" f4 -> [ Triggers() ] f5 -> [ Reads() ] f6 -> [ Writes() ] f7 -> [ Behavior() ] f8 -> [ Execute() ] f9 -> "}"
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | LocalStorageInstance | n | ) |
f0 -> <IDENTIFIER> f1 -> "." f2 -> <IDENTIFIER>
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | StorageLink | n | ) |
f0 -> <IDENTIFIER> f1 -> "->" f2 -> LocalStorageInstance() f3 -> ( "," LocalStorageInstance() )* f4 -> ";"
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | Storage | n | ) |
f0 -> [ <OPTIONAL> ] f1 -> <DATA_TYPE> f2 -> <IDENTIFIER> f3 -> [ "=" ( <NUMBER> | <TRUE> | <FALSE> | "\"" ( <IDENTIFIER> | <NUMBER> | <TRUE> | <FALSE> ) """ ) ] f4 -> ";"
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | DataElementLink | n | ) |
f0 -> <IDENTIFIER> f1 -> "- >" f2 -> <IDENTIFIER> f3 -> ";"
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | FeatureModel | n | ) |
f0 -> <FEATUREMODEL> f1 -> <IDENTIFIER> f2 -> "{" f3 -> [ Features() ] f4 -> "}"
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | Connection | n | ) |
f0 -> [ "\'" <IDENTIFIER> "\'" ] f1 -> ( <IDENTIFIER> | <THIS> ) f2 -> "." f3 -> <IDENTIFIER> f4 -> "->" f5 -> ( <IDENTIFIER> | <THIS> ) f6 -> "." f7 -> <IDENTIFIER> f8 -> "{" f9 -> DataElementLinks() f10 -> "}"
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | XORSubcomponent | n | ) |
f0 -> [ <OPTIONAL> ] f1 -> <XOR> f2 -> <IDENTIFIER> f3 -> [ <BINDINGTIME> ] f4 -> [ Attributes() ] f5 -> "{" f6 -> ( AtomicSubcomponent() )+ f7 -> "}"
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | AtomicSubcomponent | n | ) |
f0 -> [ <OPTIONAL> ] f1 -> <IDENTIFIER> f2 -> <IDENTIFIER> f3 -> ( "," <IDENTIFIER> )* f4 -> [ <BINDINGTIME> ] f5 -> [ Attributes() ] f6 -> ";"
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | PortSignature | n | ) |
f0 -> "<" f1 -> <IDENTIFIER> f2 -> ( "," <IDENTIFIER> )* f3 -> ">"
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | Port | n | ) |
f0 -> [ <OPTIONAL> ] f1 -> <DIRECTION> f2 -> [ PortSignature() ] f3 -> <IDENTIFIER> f4 -> [ <BINDINGTIME> ] f5 -> ";"
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | Component | n | ) |
f0 -> [ <TOP> ] f1 -> <COMPONENT> f2 -> <IDENTIFIER> f3 -> [ Attributes() ] f4 -> "{" f5 -> [ DataElements() ] f6 -> [ Ports() ] f7 -> [ Storages() ] f8 -> [ Functions() ] f9 -> [ Subcomponents() ] f10 -> [ Connections() ] f11 -> [ Decompositions() ] f12 -> [ Cardinalities() ] f13 -> "}"
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | ApplicationModel | n | ) |
f0 -> <APPLICATIONMODEL> f1 -> <IDENTIFIER> f2 -> "{" f3 -> ( Components() | IncludeFile() )* f4 -> "}"
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | DeSelectConfiguration | n | ) |
f0 -> <NO> f1 -> "{" f2 -> ( IDPath() ";" )+ f3 -> "}"
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | SelectConfiguration | n | ) |
f0 -> <YES> f1 -> "{" f2 -> ( IDPath() ";" )+ f3 -> "}"
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | Configuration | n | ) |
f0 -> <CONFIGURATION> f1 -> <IDENTIFIER> f2 -> <IDENTIFIER> f3 -> "{" f4 -> [ SelectConfiguration() ] f5 -> [ DeSelectConfiguration() ] f6 -> "}"
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | AtomicFeature | n | ) |
f0 -> [ <OPTIONAL> ] f1 -> <IDENTIFIER> f2 -> ";"
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | Cardinality | n | ) |
f0 -> "[" f1 -> <NUMBER> f2 -> ".." f3 -> ( <NUMBER> | <AST> ) f4 -> "]"
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | FeatureGroup | n | ) |
f0 -> [ <OPTIONAL> ] f1 -> [ <XOR> | <OR> Cardinality() ] f2 -> <IDENTIFIER> f3 -> "{" f4 -> ( AtomicFeature() | FeatureGroup() )+ f5 -> "}"
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | AspectCompositionLinkApplication | n | ) |
f0 -> <APPLICATIONMODEL> f1 -> <IDENTIFIER> f2 -> ";"
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | Model | n | ) |
f0 -> <MODEL> f1 -> <IDENTIFIER> f2 -> [ Attributes() ] f3 -> "{" f4 -> ( FeatureModel() | Configuration() | ApplicationModel() | ResourceModel() | F2AMapping() | F2RMapping() | A2RMapping() | AspectMapping() | TransactionModel() | IncludeFile() )* f5 -> "}"
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | Attribute | n | ) |
f0 -> <IDENTIFIER> f1 -> "=" f2 -> ( <NUMBER> | <IDENTIFIER> ) f3 -> ";"
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | IncludeFile | n | ) |
f0 -> f1 -> <FILENAMEDELIMITER> f2 -> <FILENAME> f3 -> <FILENAMEDELIMITER> f4 -> <FILENAMEEND>
This is a bit tricky because of separating input stream opening from reading. Therefore all information about the file and the corresponding error has to be stored in order to be passed back again.
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | FeaturePath | n | ) |
f0 -> <IDENTIFIER> f1 -> ( "." <IDENTIFIER> )*
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | AspectCompositionLinkAspectMapping | n | ) |
f0 -> <ASPECT_MAPPING> f1 -> <IDENTIFIER> f2 -> ";"
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | AspectComposition | n | ) |
f0 -> <ASPECT_COMPOSITION> f1 -> <IDENTIFIER> f2 -> "{" f3 -> ( AspectCompositionLinkApplication() | AspectCompositionLinkAspectMapping() )* f4 -> "}"
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | GlobalInstancePath | n | ) |
f0 -> <IDENTIFIER> f1 -> ( "." <IDENTIFIER> )*
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | GlobalSignalAtPortInstance | n | ) |
f0 -> <SIGNAL> f1 -> GlobalInstancePath()
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | ComparisonOperator | n | ) |
f0 -> <EQUAL> | <NOTEQUAL> | <LESS> | <LESSOREQUAL> | <GREATER> | <GREATEROREQUAL>
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | GlobalSubComponentInstance | n | ) |
f0 -> <SUBCOMPONENT> f1 -> GlobalInstancePath()
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | GlobalFunctionAlternativeInstance | n | ) |
f0 -> <FUNCTION> f1 -> GlobalInstancePath()
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
void de.fraunhofer.isst.axbench.operations.AXLVisitor.visit | ( | GlobalSignalInstance | n | ) |
f0 -> <SIGNAL> f1 -> GlobalInstancePath()
Reimplemented from de.fraunhofer.isst.axbench.axlang.visitor.DepthFirstVisitor.
de.fraunhofer.isst.axbench.axlang.elements.Model de.fraunhofer.isst.axbench.operations.AXLVisitor.axlModel = null [private] |
aXLang model
List<String> de.fraunhofer.isst.axbench.operations.AXLVisitor.currentIDPath = null [private] |
last path that was read by visit(IDPath)
the first node token of the last visited id-path
the last node token of the last visited id-path
List<String> de.fraunhofer.isst.axbench.operations.AXLVisitor.lstGlobalInstanceContext [private] |
context for global instances
List<String> de.fraunhofer.isst.axbench.operations.AXLVisitor.lstGlobalInstancePath [private] |
last path read by visit(GlobalInstancePath)
Collection<de.fraunhofer.isst.axbench.axlang.elements.architecturemodel.AbstractConnection> de.fraunhofer.isst.axbench.operations.AXLVisitor.missingDataLinkConnections = null [private] |
node token for the source subcomponent of a connection, needed to define the source references of the data element links of the connection
node token for the source subcomponent of a connection, needed to define the source references of the data element links of the connection
id of the application model in an A2RMapping, needed for the context of the source instances of its links
Role de.fraunhofer.isst.axbench.operations.AXLVisitor.statementRole = null [private] |
erkärung : processed ifstatement element
id of the resource model in an A2RMapping, needed for the context of the target instances of its links
aXLang reader (storing messages, errors, ...)
current convert file
is needed to define the child role of a global instance
IAXLangElement de.fraunhofer.isst.axbench.operations.AXLVisitor.theParent = null [private] |
processed parent element