Top Inners Fields Constructors Methods
com.jogamp.gluegen.cgram

public Class HeaderParser

extends TreeParser
implements HeaderParserTokenTypes
Class Inheritance
All Implemented Interfaces
com.jogamp.gluegen.cgram.HeaderParserTokenTypes
Imports
java.io.*, java.util.*, antlr.CommonAST, .TreeParser, .Token, .RecognitionException, .ANTLRException, .NoViableAltException, .MismatchedTokenException, .SemanticException, .ASTPair, com.jogamp.gluegen.ASTLocusTag, .ConstantDefinition, .ConstantDefinition.CNumber, .GlueGenException, .JavaConfiguration, com.jogamp.gluegen.cgram.types.*, .EnumType, .EnumType.Enumerator, antlr.collections.AST, antlr.collections.impl.BitSet, .ASTArray

Nested and Inner Type Summary

Modifier and TypeClass and Description
pack-priv static class
pack-priv static class

Field Summary

Modifier and TypeField and Description
public static final String[]
public static final BitSet
public static final BitSet
public static final BitSet
public static final BitSet
public static final BitSet
public static final String
ANONYMOUS_ENUM_NAME

Name assigned to a anonymous EnumType (e.g., "enum { ...

private static final int
private Map<Type, Type>
private JavaConfiguration
private static final int
pack-priv boolean
private HashMap<String, EnumType>
private HashMap<String, EnumType>
private static final int
private String
private List<HeaderParser.ParameterDeclaration>
private ASTLocusTag
private List<FunctionSymbol>
private static final int
private boolean
private static final int
private static final int
private static final int
private TypeDictionary
private static final int
private TypeDictionary
private static final int
private static final int
Inherited from antlr.TreeParser:
_retTreeastFactoryASTNULLinputStatereturnASTtokenNamestraceDepth

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
public final void
public final void
public final void
public final void
public final void
private int
attrs2CVAttrs(int attrs)

public final void
private Type
public final void
protected final void
public void
clearParsedFunctions()

Clears the list of functions this HeaderParser has parsed.

public final void
public final void
public final void
public final void
private void
private void
public final void
public final void
public final String
public final HeaderParser.TypeBox
private AST
dumpAST(final String pre, final AST ast)

private void
dumpASTTree(final String pre, final AST t)

public final void
public final ConstantDefinition
enumerator(AST _t, EnumType enumeration, ConstantDefinition defaultValue)

public final void
enumList(AST _t, EnumType enumeration)

public final Type
enumSpecifier(AST _t, int cvAttrs)

public final void
public final void
public final void
expr(AST _t)

public final void
public final void
private ASTLocusTag
findASTLocusTag(final AST astIn)

Return ASTLocusTag in tree, or null if not found.

protected final void
public final void
public final void
public final int
public Map<K, V>
getCanonMap()

Get the canonicalization map, which is a regular HashMap mapping Type to Type and which is used for looking up the unique instances of e.g. pointer-to-structure types that have been typedefed and therefore have names.

public boolean
private String
public List<EnumType>
getEnums()

Returns the EnumTypes this HeaderParser processed.

private EnumType
getEnumType(String enumTypeName, ASTLocusTag locusTag)

Utility function: creates a new EnumType with the given name, or returns an existing one if it has already been created.

public List<FunctionSymbol>
getParsedFunctions()

Returns the list of FunctionSymbols this HeaderParser has parsed.

public TypeDictionary
getStructDictionary()

Returns the struct name dictionary this HeaderParser uses.

public TypeDictionary
getTypedefDictionary()

Returns the typedef dictionary this HeaderParser uses.

private String
public final void
private void
handleArrayExpr(HeaderParser.TypeBox tb, AST t, ASTLocusTag locusTag)

Helper routine which handles creating a pointer or array type for [] expressions

public final void
idList(AST _t)

public final void
public final void
public final void
public final void
public final void
public final void
protected final void
public final int
private boolean
isOpaque(final Type type)

public final void
public final void
public final void
public final void
private CompoundType
lookupInStructDictionary(String structName, CompoundTypeKind kind, int cvAttrs, final ASTLocusTag locusTag)

private Type
lookupInTypedefDictionary(final AST _t, String typeName)

private static final long[]
private static final long[]
private static final long[]
private static final long[]
private static final long[]
public final void
public final void
public final HeaderParser.ParameterDeclaration
public final List<HeaderParser.ParameterDeclaration>
private int
public final void
public final void
public final void
private void
public final void
public final void
private void
public void
setDebug(boolean debug)

public void
setEnums(List<EnumType> enumTypes)

Pre-define the list of EnumTypes for this HeaderParser.

private void
public void
setJavaConfiguration(JavaConfiguration cfg)

Set the configuration for this HeaderParser.

public void
setStructDictionary(TypeDictionary dict)

Set the dictionary mapping struct names (i.e., the "foo" in "struct foo { ...

public void
setTypedefDictionary(TypeDictionary dict)

Set the dictionary mapping typedef names to types for this HeaderParser.

public final void
public final Type
public final void
public final void
public final void
public final int
protected final void
public final void
public final boolean
structDeclaration(AST _t, CompoundType containingType)

public final boolean
public final boolean
structDeclarator(AST _t, CompoundType containingType, Type t)

public final boolean
structDeclaratorList(AST _t, CompoundType containingType, Type t)

public final CompoundType
structOrUnionBody(AST _t, CompoundTypeKind kind, int cvAttrs)

public final Type
structSpecifier(AST _t, int cvAttrs)

private void
throwGlueGenException(final AST t, final String message)

private void
throwGlueGenException(final ASTLocusTag locusTag, final String message)

public final void
public final Type
typedefName(AST _t, int cvAttrs)

public final void
public final void
public final int
public final Type
typeSpecifier(AST _t, int attributes)

public final void
public final void
public final Type
unionSpecifier(AST _t, int cvAttrs)

Inherited from antlr.TreeParser:
getASTgetASTFactorygetTokenNamegetTokenNamesmatchmatchmatchNotpanicreportErrorreportErrorreportWarningsetASTFactorysetASTNodeClasssetASTNodeTypetraceIntraceIndenttraceOut