Class MCExceptionStatementsMill
- java.lang.Object
-
- de.monticore.statements.mcexceptionstatements.MCExceptionStatementsMill
-
- Direct Known Subclasses:
MCExceptionStatementsMillForGrammar_WithConcepts
,MCExceptionStatementsMillForMCFullJavaStatements
public class MCExceptionStatementsMill extends java.lang.Object
The mill is a factory for builders and other commonly used functions, such as parsers or visitors. The mill was introduced to ensure compositionality of languages, while retaining reusability of functions developed for sublanguages. Only one mill instance exists, even though in composed languages it is available under several static signatures.
-
-
Field Summary
Fields Modifier and Type Field Description protected MCExceptionStatementsFullPrettyPrinter
fullPrettyPrinter
protected IMCExceptionStatementsGlobalScope
mCExceptionStatementsGlobalScope
protected static MCExceptionStatementsMill
mill
protected IMCExceptionStatementsTypeDispatcher
typeDispatcher
-
Constructor Summary
Constructors Modifier Constructor Description protected
MCExceptionStatementsMill()
-
Method Summary
-
-
-
Field Detail
-
mill
protected static MCExceptionStatementsMill mill
-
fullPrettyPrinter
protected MCExceptionStatementsFullPrettyPrinter fullPrettyPrinter
-
typeDispatcher
protected IMCExceptionStatementsTypeDispatcher typeDispatcher
-
mCExceptionStatementsGlobalScope
protected IMCExceptionStatementsGlobalScope mCExceptionStatementsGlobalScope
-
-
Method Detail
-
getMill
public static MCExceptionStatementsMill getMill()
-
init
public static void init()
Initializes a languages Mill. This will also initialize the Mills of all languages it depends on. This ensures that all objects of this mill, such as builders, traversers, scopes, ..., deliver the element of the correct language.
-
tryStatement1Builder
public static ASTTryStatement1Builder tryStatement1Builder()
-
_tryStatement1Builder
protected ASTTryStatement1Builder _tryStatement1Builder()
-
tryStatement2Builder
public static ASTTryStatement2Builder tryStatement2Builder()
-
_tryStatement2Builder
protected ASTTryStatement2Builder _tryStatement2Builder()
-
tryStatement3Builder
public static ASTTryStatement3Builder tryStatement3Builder()
-
_tryStatement3Builder
protected ASTTryStatement3Builder _tryStatement3Builder()
-
tryLocalVariableDeclarationBuilder
public static ASTTryLocalVariableDeclarationBuilder tryLocalVariableDeclarationBuilder()
-
_tryLocalVariableDeclarationBuilder
protected ASTTryLocalVariableDeclarationBuilder _tryLocalVariableDeclarationBuilder()
-
catchClauseBuilder
public static ASTCatchClauseBuilder catchClauseBuilder()
-
_catchClauseBuilder
protected ASTCatchClauseBuilder _catchClauseBuilder()
-
catchTypeListBuilder
public static ASTCatchTypeListBuilder catchTypeListBuilder()
-
_catchTypeListBuilder
protected ASTCatchTypeListBuilder _catchTypeListBuilder()
-
throwStatementBuilder
public static ASTThrowStatementBuilder throwStatementBuilder()
-
_throwStatementBuilder
protected ASTThrowStatementBuilder _throwStatementBuilder()
-
prettyPrint
public static java.lang.String prettyPrint(de.monticore.ast.ASTNode node, boolean printComments)
Uses the composed pretty printer to print an ASTNode of this language- Parameters:
node
- The ASTNode to be printedprintComments
- Whether comments should be printed- Returns:
- The pretty printer output
-
_prettyPrint
protected java.lang.String _prettyPrint(de.monticore.ast.ASTNode node, boolean printComments)
-
typeDispatcher
public static IMCExceptionStatementsTypeDispatcher typeDispatcher()
-
_typeDispatcher
protected IMCExceptionStatementsTypeDispatcher _typeDispatcher()
-
traverser
public static MCExceptionStatementsTraverser traverser()
A traverser is the conceptual entry point for every action within the visitor infrastructure. Visitors may be added, which contain the implementations for the visit and endVisit methods. Handlers may be added to modify the default traversal strategy. Each traverser retains their traversed elements to avoid duplicate traversal, possibly requiringITraverser.clearTraversedElements()
to be called in case of re-useinheritanceTraverser()
should be preferred over normal traverser, as they further enable language composition.- Returns:
- a new instance of this language's traverser
-
_traverser
protected MCExceptionStatementsTraverser _traverser()
-
inheritanceTraverser
public static MCExceptionStatementsTraverser inheritanceTraverser()
A traverser is the conceptual entry point for every action within the visitor infrastructure. Visitors may be added, which contain the implementations for the visit and endVisit methods. Handlers may be added to modify the default traversal strategy. Each traverser retains their traversed elements to avoid duplicate traversal, possibly requiringITraverser.clearTraversedElements()
to be called in case of re-use Inheritance Traverser should be preferred over default ones, as they further enable language composition.- Returns:
- a new instance of this language's inheritance traverser
-
_inheritanceTraverser
protected MCExceptionStatementsTraverser _inheritanceTraverser()
-
globalScope
public static IMCExceptionStatementsGlobalScope globalScope()
-
_globalScope
protected IMCExceptionStatementsGlobalScope _globalScope()
-
artifactScope
public static IMCExceptionStatementsArtifactScope artifactScope()
-
_artifactScope
protected IMCExceptionStatementsArtifactScope _artifactScope()
-
scope
public static IMCExceptionStatementsScope scope()
-
_scope
protected IMCExceptionStatementsScope _scope()
-
scopesGenitor
public static MCExceptionStatementsScopesGenitor scopesGenitor()
Returns a new ScopeGenitor. ScopeGenitors are responsible for creating the scope structure of artifacts of only this language and linking it with the AST nodes. Note: ScopeGenitors do NOT delegate to elements of composed languages which is why you are most likely looking forscopesGenitorDelegator()
.- Returns:
- a new instance of this language's scope genitor
-
_scopesGenitor
protected MCExceptionStatementsScopesGenitor _scopesGenitor()
-
scopesGenitorDelegator
public static MCExceptionStatementsScopesGenitorDelegator scopesGenitorDelegator()
Returns a new ScopeGenitorDelegator. Delegates to the ScopeGenitors of composed languages, used for instantiating symbol tables in the context of language composition See the delegators #createFromAST method.- Returns:
- a new instance of this language's scope genitor delegator
-
_scopesGenitorDelegator
protected MCExceptionStatementsScopesGenitorDelegator _scopesGenitorDelegator()
-
mCJavaBlockBuilder
public static ASTMCJavaBlockBuilder mCJavaBlockBuilder()
-
javaModifierBuilder
public static ASTJavaModifierBuilder javaModifierBuilder()
-
ifStatementBuilder
public static ASTIfStatementBuilder ifStatementBuilder()
-
forStatementBuilder
public static ASTForStatementBuilder forStatementBuilder()
-
commonForControlBuilder
public static ASTCommonForControlBuilder commonForControlBuilder()
-
forInitBuilder
public static ASTForInitBuilder forInitBuilder()
-
forInitByExpressionsBuilder
public static ASTForInitByExpressionsBuilder forInitByExpressionsBuilder()
-
enhancedForControlBuilder
public static ASTEnhancedForControlBuilder enhancedForControlBuilder()
-
formalParameterBuilder
public static ASTFormalParameterBuilder formalParameterBuilder()
-
whileStatementBuilder
public static ASTWhileStatementBuilder whileStatementBuilder()
-
doWhileStatementBuilder
public static ASTDoWhileStatementBuilder doWhileStatementBuilder()
-
switchStatementBuilder
public static ASTSwitchStatementBuilder switchStatementBuilder()
-
emptyStatementBuilder
public static ASTEmptyStatementBuilder emptyStatementBuilder()
-
expressionStatementBuilder
public static ASTExpressionStatementBuilder expressionStatementBuilder()
-
switchBlockStatementGroupBuilder
public static ASTSwitchBlockStatementGroupBuilder switchBlockStatementGroupBuilder()
-
constantExpressionSwitchLabelBuilder
public static ASTConstantExpressionSwitchLabelBuilder constantExpressionSwitchLabelBuilder()
-
enumConstantSwitchLabelBuilder
public static ASTEnumConstantSwitchLabelBuilder enumConstantSwitchLabelBuilder()
-
defaultSwitchLabelBuilder
public static ASTDefaultSwitchLabelBuilder defaultSwitchLabelBuilder()
-
breakStatementBuilder
public static ASTBreakStatementBuilder breakStatementBuilder()
-
localVariableDeclarationStatementBuilder
public static ASTLocalVariableDeclarationStatementBuilder localVariableDeclarationStatementBuilder()
-
localVariableDeclarationBuilder
public static ASTLocalVariableDeclarationBuilder localVariableDeclarationBuilder()
-
variableDeclaratorBuilder
public static ASTVariableDeclaratorBuilder variableDeclaratorBuilder()
-
declaratorIdBuilder
public static ASTDeclaratorIdBuilder declaratorIdBuilder()
-
simpleInitBuilder
public static ASTSimpleInitBuilder simpleInitBuilder()
-
mCQualifiedNameBuilder
public static ASTMCQualifiedNameBuilder mCQualifiedNameBuilder()
-
mCPackageDeclarationBuilder
public static ASTMCPackageDeclarationBuilder mCPackageDeclarationBuilder()
-
mCImportStatementBuilder
public static ASTMCImportStatementBuilder mCImportStatementBuilder()
-
mCPrimitiveTypeBuilder
public static ASTMCPrimitiveTypeBuilder mCPrimitiveTypeBuilder()
-
mCQualifiedTypeBuilder
public static ASTMCQualifiedTypeBuilder mCQualifiedTypeBuilder()
-
mCReturnTypeBuilder
public static ASTMCReturnTypeBuilder mCReturnTypeBuilder()
-
mCVoidTypeBuilder
public static ASTMCVoidTypeBuilder mCVoidTypeBuilder()
-
nameExpressionBuilder
public static ASTNameExpressionBuilder nameExpressionBuilder()
-
literalExpressionBuilder
public static ASTLiteralExpressionBuilder literalExpressionBuilder()
-
argumentsBuilder
public static ASTArgumentsBuilder argumentsBuilder()
-
oOTypeSymbolBuilder
public static OOTypeSymbolBuilder oOTypeSymbolBuilder()
-
oOTypeSymbolSurrogateBuilder
public static OOTypeSymbolSurrogateBuilder oOTypeSymbolSurrogateBuilder()
-
fieldSymbolBuilder
public static FieldSymbolBuilder fieldSymbolBuilder()
-
fieldSymbolSurrogateBuilder
public static FieldSymbolSurrogateBuilder fieldSymbolSurrogateBuilder()
-
methodSymbolBuilder
public static MethodSymbolBuilder methodSymbolBuilder()
-
methodSymbolSurrogateBuilder
public static MethodSymbolSurrogateBuilder methodSymbolSurrogateBuilder()
-
diagramSymbolBuilder
public static DiagramSymbolBuilder diagramSymbolBuilder()
-
diagramSymbolSurrogateBuilder
public static DiagramSymbolSurrogateBuilder diagramSymbolSurrogateBuilder()
-
typeSymbolBuilder
public static TypeSymbolBuilder typeSymbolBuilder()
-
typeSymbolSurrogateBuilder
public static TypeSymbolSurrogateBuilder typeSymbolSurrogateBuilder()
-
typeVarSymbolBuilder
public static TypeVarSymbolBuilder typeVarSymbolBuilder()
-
typeVarSymbolSurrogateBuilder
public static TypeVarSymbolSurrogateBuilder typeVarSymbolSurrogateBuilder()
-
variableSymbolBuilder
public static VariableSymbolBuilder variableSymbolBuilder()
-
variableSymbolSurrogateBuilder
public static VariableSymbolSurrogateBuilder variableSymbolSurrogateBuilder()
-
functionSymbolBuilder
public static FunctionSymbolBuilder functionSymbolBuilder()
-
functionSymbolSurrogateBuilder
public static FunctionSymbolSurrogateBuilder functionSymbolSurrogateBuilder()
-
mCStereotypeSymbolBuilder
public static MCStereotypeSymbolBuilder mCStereotypeSymbolBuilder()
-
mCStereotypeSymbolSurrogateBuilder
public static MCStereotypeSymbolSurrogateBuilder mCStereotypeSymbolSurrogateBuilder()
-
initMe
public static void initMe(MCExceptionStatementsMill a)
-
reset
public static void reset()
-
-