| java.lang.Object org.netbeans.modules.cnd.modelimpl.csm.core.AstRenderer
AstRenderer | public class AstRenderer (Code) | | author: Vladimir Kvasihn |
Method Summary | |
protected void | addTypedefs(CsmTypedef[] typedefs, NamespaceImpl currentNamespace, MutableDeclarationsContainer container) | protected CsmTypedef | createTypedef(AST ast, FileImpl file, CsmObject container, CsmType type, String name) | protected VariableImpl | createVariable(AST offsetAst, CsmFile file, CsmType type, String name, boolean _static, MutableDeclarationsContainer container1, MutableDeclarationsContainer container2, CsmScope scope) | public static CsmCompoundStatement | findCompoundStatement(AST ast, CsmFile file, CsmFunction owner) | public static AST | getFirstChildSkipQualifiers(AST ast) | public static int | getFirstChildType(AST token) | public static AST | getFirstSiblingSkipQualifiers(AST ast) | public static String[] | getNameTokens(AST qid) | public static CharSequence | getQualifiedName(AST qid) | public static int | getType(AST token) | public static boolean | isCVQualifier(int tokenType) | public static boolean | isConstQualifier(int tokenType) | public static boolean | isExpression(AST ast) | public static boolean | isExpression(int tokenType) | protected boolean | isMemberDefinition(AST ast) | public static boolean | isQualifier(int tokenType) | public static boolean | isStatement(AST ast) | public static boolean | isStatement(int tokenType) | public static boolean | isStorageClassSpecifier(int tokenType) | public static boolean | isVoidParameter(AST ast) | public static boolean | isVolatileQualifier(int tokenType) | protected void | processVariable(AST varAst, AST ptrOperator, AST offsetAst, AST classifier, MutableDeclarationsContainer container1, MutableDeclarationsContainer container2, FileImpl file, boolean _static) | public void | render(AST root) | public void | render(AST tree, NamespaceImpl currentNamespace, MutableDeclarationsContainer container) | public CsmCondition | renderCondition(AST ast, CsmScope scope) | public static List<CsmExpression> | renderConstructorInitializersList(AST ast, CsmScope scope, CsmFile file) | public ExpressionBase | renderExpression(AST ast, CsmScope scope) | public static boolean | renderForwardClassDeclaration(AST ast, NamespaceImpl currentNamespace, MutableDeclarationsContainer container, FileImpl file) | public static boolean | renderForwardMemberDeclaration(AST ast, NamespaceImpl currentNamespace, MutableDeclarationsContainer container, FileImpl file) | public static boolean | renderNSP(AST token, NamespaceImpl currentNamespace, MutableDeclarationsContainer container, FileImpl file) | public static List<ParameterImpl> | renderParameter(AST ast, CsmFile file, CsmScope scope1) | public static List<CsmParameter> | renderParameters(AST ast, CsmFile file, CsmScope scope) | public static StatementBase | renderStatement(AST ast, CsmFile file, CsmScope scope) | public static TypeImpl | renderType(AST tokType, CsmFile file) | protected CsmTypedef[] | renderTypedef(AST ast, CsmClass cls, CsmObject container) | protected CsmTypedef[] | renderTypedef(AST ast, FileImpl file, CsmObject container) | public boolean | renderVariable(AST ast, MutableDeclarationsContainer namespaceContainer, MutableDeclarationsContainer container2) Checks whether the given AST is a variable declaration(s),
if yes, creates variable(s), adds to conteiner(s), returns true,
otherwise returns false;
There might be two containers, in which the given variable should be added. | protected void | renderVariableInClassifier(AST ast, CsmClassifier classifier, MutableDeclarationsContainer container1, MutableDeclarationsContainer container2) |
getFirstChildSkipQualifiers | public static AST getFirstChildSkipQualifiers(AST ast)(Code) | | Returns first child, skipps cv-qualifiers and storage class specifiers
|
getFirstChildType | public static int getFirstChildType(AST token)(Code) | | |
getFirstSiblingSkipQualifiers | public static AST getFirstSiblingSkipQualifiers(AST ast)(Code) | | Returns first sibling (or just passed ast), skipps cv-qualifiers and storage class specifiers
|
getType | public static int getType(AST token)(Code) | | |
isCVQualifier | public static boolean isCVQualifier(int tokenType)(Code) | | |
isConstQualifier | public static boolean isConstQualifier(int tokenType)(Code) | | |
isExpression | public static boolean isExpression(AST ast)(Code) | | |
isExpression | public static boolean isExpression(int tokenType)(Code) | | |
isMemberDefinition | protected boolean isMemberDefinition(AST ast)(Code) | | |
isQualifier | public static boolean isQualifier(int tokenType)(Code) | | |
isStatement | public static boolean isStatement(AST ast)(Code) | | |
isStatement | public static boolean isStatement(int tokenType)(Code) | | |
isStorageClassSpecifier | public static boolean isStorageClassSpecifier(int tokenType)(Code) | | |
isVoidParameter | public static boolean isVoidParameter(AST ast)(Code) | | |
isVolatileQualifier | public static boolean isVolatileQualifier(int tokenType)(Code) | | |
renderVariable | public boolean renderVariable(AST ast, MutableDeclarationsContainer namespaceContainer, MutableDeclarationsContainer container2)(Code) | | Checks whether the given AST is a variable declaration(s),
if yes, creates variable(s), adds to conteiner(s), returns true,
otherwise returns false;
There might be two containers, in which the given variable should be added.
For example, global variables should beadded both to file and to global namespace;
variables, declared in some namespace definition, should be added to both this definition and correspondent namespace as well.
On the other hand, local variables are added only to it's containing scope, so either container1 or container2 might be null.
Parameters: ast - AST to process Parameters: container1 - container to add created variable into (may be null) Parameters: container2 - container to add created variable into (may be null) |
|
|