Package com.jogamp.gluegen
Class FunctionEmitter
- java.lang.Object
-
- com.jogamp.gluegen.FunctionEmitter
-
- Direct Known Subclasses:
CMethodBindingEmitter
,JavaMethodBindingEmitter
public abstract class FunctionEmitter extends Object
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
FunctionEmitter.EmissionModifier
-
Field Summary
Fields Modifier and Type Field Description protected JavaConfiguration
cfg
static FunctionEmitter.EmissionModifier
STATIC
-
Constructor Summary
Constructors Constructor Description FunctionEmitter(FunctionEmitter arg)
Makes this FunctionEmitter a copy of the passed one.FunctionEmitter(PrintWriter defaultOutput, boolean isInterface, JavaConfiguration configuration)
Constructs the FunctionEmitter with a CommentEmitter that emits nothing.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description void
addModifier(FunctionEmitter.EmissionModifier m)
void
addModifiers(Iterator<FunctionEmitter.EmissionModifier> mi)
void
clearModifiers()
void
emit()
Emit the function to the default output (the output that was passed to the constructor)void
emit(PrintWriter output)
Emit the function to the specified output (instead of the default output).protected abstract int
emitArguments(PrintWriter writer)
Returns the number of arguments emitted.protected abstract void
emitBody(PrintWriter writer)
protected void
emitDocComment(PrintWriter writer)
protected int
emitModifiers(PrintWriter writer)
protected abstract void
emitName(PrintWriter writer)
protected abstract void
emitReturnType(PrintWriter writer)
protected void
emitSignature(PrintWriter writer)
protected String
getBaseIndentString()
CommentEmitter
getCommentEmitter()
Get the comment emitter for this FunctionEmitter.protected String
getCommentEndString()
protected String
getCommentStartString()
abstract FunctionSymbol
getCSymbol()
PrintWriter
getDefaultOutput()
abstract String
getImplName()
abstract String
getInterfaceName()
Iterator<FunctionEmitter.EmissionModifier>
getModifiers()
abstract String
getNativeName()
boolean
hasModifier(FunctionEmitter.EmissionModifier m)
boolean
isInterface()
boolean
removeModifier(FunctionEmitter.EmissionModifier m)
void
setCommentEmitter(CommentEmitter cEmitter)
Set the object that will emit the comment for this function.String
toString()
Returns, as a String, whateveremit(java.io.PrintWriter)
would output.
-
-
-
Field Detail
-
STATIC
public static final FunctionEmitter.EmissionModifier STATIC
-
cfg
protected final JavaConfiguration cfg
-
-
Constructor Detail
-
FunctionEmitter
public FunctionEmitter(PrintWriter defaultOutput, boolean isInterface, JavaConfiguration configuration)
Constructs the FunctionEmitter with a CommentEmitter that emits nothing.
-
FunctionEmitter
public FunctionEmitter(FunctionEmitter arg)
Makes this FunctionEmitter a copy of the passed one.
-
-
Method Detail
-
isInterface
public boolean isInterface()
-
getDefaultOutput
public PrintWriter getDefaultOutput()
-
addModifiers
public void addModifiers(Iterator<FunctionEmitter.EmissionModifier> mi)
-
addModifier
public void addModifier(FunctionEmitter.EmissionModifier m)
-
removeModifier
public boolean removeModifier(FunctionEmitter.EmissionModifier m)
-
clearModifiers
public void clearModifiers()
-
hasModifier
public boolean hasModifier(FunctionEmitter.EmissionModifier m)
-
getModifiers
public Iterator<FunctionEmitter.EmissionModifier> getModifiers()
-
getInterfaceName
public abstract String getInterfaceName()
-
getImplName
public abstract String getImplName()
-
getNativeName
public abstract String getNativeName()
-
getCSymbol
public abstract FunctionSymbol getCSymbol()
-
emit
public void emit(PrintWriter output)
Emit the function to the specified output (instead of the default output).
-
emit
public final void emit()
Emit the function to the default output (the output that was passed to the constructor)
-
toString
public String toString()
Returns, as a String, whateveremit(java.io.PrintWriter)
would output.
-
setCommentEmitter
public void setCommentEmitter(CommentEmitter cEmitter)
Set the object that will emit the comment for this function. If the parameter is null, no comment will be emitted.
-
getCommentEmitter
public CommentEmitter getCommentEmitter()
Get the comment emitter for this FunctionEmitter. The return value may be null, in which case no comment emitter has been set.
-
emitDocComment
protected void emitDocComment(PrintWriter writer)
-
emitSignature
protected void emitSignature(PrintWriter writer)
-
emitModifiers
protected int emitModifiers(PrintWriter writer)
-
getBaseIndentString
protected String getBaseIndentString()
-
getCommentStartString
protected String getCommentStartString()
-
getCommentEndString
protected String getCommentEndString()
-
emitReturnType
protected abstract void emitReturnType(PrintWriter writer)
-
emitName
protected abstract void emitName(PrintWriter writer)
-
emitArguments
protected abstract int emitArguments(PrintWriter writer)
Returns the number of arguments emitted.
-
emitBody
protected abstract void emitBody(PrintWriter writer)
-
-