public interface GlueEmitter
Modifier and Type | Method and Description |
---|---|
void |
beginDefines() |
void |
beginEmission(GlueEmitterControls controls)
Begin the emission of glue code.
|
void |
beginFunctions(TypeDictionary typedefDictionary,
TypeDictionary structDictionary,
Map<Type,Type> canonMap) |
void |
beginStructLayout()
Begins the process of computing field offsets and type sizes for
the structs to be emitted.
|
void |
beginStructs(TypeDictionary typedefDictionary,
TypeDictionary structDictionary,
Map<Type,Type> canonMap) |
void |
emitDefine(ConstantDefinition def,
String optionalComment) |
Iterator<FunctionSymbol> |
emitFunctions(List<FunctionSymbol> cFunctions)
Emit glue code for the list of FunctionSymbols.
|
void |
emitStruct(CompoundType t,
String alternateName)
Emit glue code for the given CompoundType.
|
void |
endDefines() |
void |
endEmission()
Finish the emission of glue code.
|
void |
endFunctions() |
void |
endStructLayout()
Finishes the struct layout process.
|
void |
endStructs() |
void |
layoutStruct(CompoundType t)
Lays out one struct which will be emitted later.
|
void |
readConfigurationFile(String filename) |
void readConfigurationFile(String filename) throws Exception
Exception
void beginEmission(GlueEmitterControls controls) throws Exception
Exception
void endEmission() throws Exception
Exception
void emitDefine(ConstantDefinition def, String optionalComment) throws Exception
optionalComment
- If optionalComment is non-null, the emitter can
emit that string as a comment providing extra information about the
define.Exception
void beginFunctions(TypeDictionary typedefDictionary, TypeDictionary structDictionary, Map<Type,Type> canonMap) throws Exception
Exception
Iterator<FunctionSymbol> emitFunctions(List<FunctionSymbol> cFunctions) throws Exception
Exception
void beginStructLayout() throws Exception
Exception
void layoutStruct(CompoundType t) throws Exception
Exception
void endStructLayout() throws Exception
Exception
void beginStructs(TypeDictionary typedefDictionary, TypeDictionary structDictionary, Map<Type,Type> canonMap) throws Exception
Exception
void emitStruct(CompoundType t, String alternateName) throws Exception
Exception