|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectmapss.dif.language.sablecc.analysis.AnalysisAdapter
mapss.dif.language.sablecc.analysis.DepthFirstAdapter
mapss.dif.language.LanguageAnalysis
mapss.dif.psdf.PSDFSpecificationLanguageAnalysis
public class PSDFSpecificationLanguageAnalysis
This analysis extends LanguageAnalysis to read
PSDF Specifications.
The graph type keyword used in the dif file should be "psdfSpecificaiton" and runtime type of the returned graph will an PSDFSpecificationGraph.
LanguageAnalysis,
PSDFSpecificationGraph,
PSDFSpecification| Field Summary |
|---|
| Fields inherited from class mapss.dif.language.LanguageAnalysis |
|---|
_graph, _hierarchies, _hierarchy, _subHierarchy |
| Constructor Summary | |
|---|---|
PSDFSpecificationLanguageAnalysis()
|
|
| Method Summary | |
|---|---|
protected boolean |
_acceptableSubHierarchy(DIFHierarchy hierarchy)
Returns true if a hierarchy can be a sub-hierarchy of the current one. |
protected mocgraph.Edge |
_getEmptyEdge(mocgraph.Node source,
mocgraph.Node sink)
Should return an empty edge that can be used in the graph that is constructed. |
protected DIFGraph |
_getEmptyGraph()
Should return an empty graph of the type that is going to be constructed with this analysis. |
protected mocgraph.Node |
_getEmptyNode()
Should return an empty node that can be used in the graph that is constructed. |
protected java.lang.String |
_getKeyword()
Should return the DIF keyword associated with this analysis type. |
protected void |
_processBuiltinAttribute(java.lang.String id,
java.lang.Object object,
java.lang.Object value,
DIFHierarchy hierarchy)
Process the built-in attribute "paramsMatch". |
void |
inAActorBlock(AActorBlock parseNode)
For each node representing an actor of design tool's library, an actor block is necessary to specify the attributes of that actor. |
void |
inABasedonBlock(ABasedonBlock parseNode)
|
void |
inAGraphBlock(AGraphBlock parseNode)
Parse a graph definition: dataflow model and graph name. |
void |
inARefinementDefinition(ARefinementDefinition parseNode)
For each supernode-to-subgraph mapping, it is necessary to specify a refinement block. |
void |
inATopologyBlock(ATopologyBlock parseNode)
init, subinit, body nodes will be added to the PSDFGraph of PSDFSpecificaiton automatically when defining the PSDFSpecification. |
void |
inAUserDefinedAttributeBlock(AUserDefinedAttributeBlock parseNode)
|
static boolean |
isKeyWord(java.lang.String word)
|
| Methods inherited from class mapss.dif.language.sablecc.analysis.AnalysisAdapter |
|---|
caseEOF, caseTActor, caseTAttribute, caseTBasedon, caseTBlank, caseTColon, caseTComma, caseTComment, caseTDot, caseTDouble, caseTEdges, caseTEqual, caseTFalse, caseTGraph, caseTIdentifier, caseTInputs, caseTInteger, caseTInterface, caseTLBkt, caseTLPar, caseTLSqr, caseTNodes, caseTOutputs, caseTParameter, caseTPlus, caseTRBkt, caseTRefinement, caseTRPar, caseTRSqr, caseTSemicolon, caseTSQte, caseTString, caseTStringIdentifier, caseTStringTail, caseTTopology, caseTTrue, defaultCase, getIn, getOut, setIn, setOut |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public PSDFSpecificationLanguageAnalysis()
| Method Detail |
|---|
public static boolean isKeyWord(java.lang.String word)
public void inAGraphBlock(AGraphBlock parseNode)
LanguageAnalysisReader pre-scans all related dif files and input all
hierarchies by LanguageAnalysis.externalHierarchies(java.util.Collection).
Therefore, this method do not have to put _hierarchy
into _hierarchies. According to the previous compiled
DIFHierarchies, _hierarchies, we check that the current graph
(hierarchy) use the predefined name or not. The name of DIFGraph
and DIFHierarchy is set to the same as parseNode.getName().getText().
inAGraphBlock in class LanguageAnalysispublic void inABasedonBlock(ABasedonBlock parseNode)
inABasedonBlock in class DepthFirstAdapterpublic void inATopologyBlock(ATopologyBlock parseNode)
inATopologyBlock in class DepthFirstAdapterpublic void inAUserDefinedAttributeBlock(AUserDefinedAttributeBlock parseNode)
inAUserDefinedAttributeBlock in class LanguageAnalysispublic void inAActorBlock(AActorBlock parseNode)
LanguageAnalysisAn attribute of an actor can specify the parameter value of that actor. In this case, the attribute id is the parameter id and the attribute value is the parameter value.
An attribute can also specify the connection of the node (actor). In this case, the attribute id is the port id or argument id and the attribute value is the connected object's id.
All actor attributes and their value are stored as node attributes in DIF.
inAActorBlock in class LanguageAnalysispublic void inARefinementDefinition(ARefinementDefinition parseNode)
LanguageAnalysis
inARefinementDefinition in class LanguageAnalysisprotected boolean _acceptableSubHierarchy(DIFHierarchy hierarchy)
PSDFGraph.
_acceptableSubHierarchy in class LanguageAnalysishierarchy - Sub hierarchy to add.
protected java.lang.String _getKeyword()
LanguageAnalysis
_getKeyword in class LanguageAnalysisprotected DIFGraph _getEmptyGraph()
LanguageAnalysis
_getEmptyGraph in class LanguageAnalysisprotected mocgraph.Node _getEmptyNode()
LanguageAnalysis
_getEmptyNode in class LanguageAnalysis
protected mocgraph.Edge _getEmptyEdge(mocgraph.Node source,
mocgraph.Node sink)
LanguageAnalysis
_getEmptyEdge in class LanguageAnalysissource - Source node for the edge.sink - Sink node for the edge.
protected void _processBuiltinAttribute(java.lang.String id,
java.lang.Object object,
java.lang.Object value,
DIFHierarchy hierarchy)
throws DIFLanguageException
paramsMatch {
subgraphId.subParamId = subgraphId.subPortId;
}
_processBuiltinAttribute in class LanguageAnalysisid - The attribute id.object - The target object.value - The source object.hierarchy - The DIFSpecification.
DIFLanguageException
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||