|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectcom.sun.tools.javah.Gen
public abstract class Gen
An abstraction for generating support files required by native methods. Subclasses are for specific native interfaces. At the time of its original writing, this interface is rich enough to support JNI and the old 1.0-style native method interface.
| Field Summary | |
|---|---|
protected ClassDoc[] |
classes
|
protected boolean |
force
|
private static boolean |
isWindows
|
protected java.lang.String |
lineSep
|
protected java.lang.String |
outDir
|
protected java.lang.String |
outFile
|
(package private) RootDoc |
root
|
| Constructor Summary | |
|---|---|
Gen(RootDoc root)
|
|
| Method Summary | |
|---|---|
protected java.lang.String |
baseFileName(java.lang.String clazz)
|
protected java.lang.String |
cppGuardBegin()
|
protected java.lang.String |
cppGuardEnd()
|
protected java.lang.String |
defineForStatic(ClassDoc c,
FieldDoc f)
|
(package private) FieldDoc[] |
getAllFields(ClassDoc subclazz)
Including super classes' fields. |
protected java.lang.String |
getFileName(java.lang.String clazz)
|
protected java.lang.String |
getFileSuffix()
|
protected abstract java.lang.String |
getIncludes()
Override this method to provide a list of #include statements required by the native interface. |
protected java.lang.String |
guardBegin(java.lang.String cname)
|
protected java.lang.String |
guardEnd(java.lang.String cname)
|
void |
run()
After initializing state of an instance, use this method to start processing. |
void |
setClasses(ClassDoc[] classes)
|
void |
setForce(boolean state)
|
void |
setOutDir(java.lang.String outDir)
|
void |
setOutFile(java.lang.String outFile)
|
protected java.io.PrintWriter |
wrapWriter(java.io.OutputStream o)
We explicitly need to write ASCII files because that is what C compilers understand. |
protected abstract void |
write(java.io.OutputStream o,
ClassDoc clazz)
Override this abstract method, generating content for the named class into the outputstream. |
protected void |
writeFileTop(java.io.OutputStream o)
|
private void |
writeIfChanged(byte[] b,
java.lang.String file)
|
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
protected java.lang.String lineSep
RootDoc root
protected ClassDoc[] classes
private static final boolean isWindows
protected java.lang.String outDir
protected java.lang.String outFile
protected boolean force
| Constructor Detail |
|---|
public Gen(RootDoc root)
| Method Detail |
|---|
protected abstract void write(java.io.OutputStream o,
ClassDoc clazz)
throws java.lang.ClassNotFoundException
java.lang.ClassNotFoundExceptionprotected abstract java.lang.String getIncludes()
public void setOutDir(java.lang.String outDir)
public void setOutFile(java.lang.String outFile)
public void setClasses(ClassDoc[] classes)
public void setForce(boolean state)
protected java.io.PrintWriter wrapWriter(java.io.OutputStream o)
public void run()
throws java.io.IOException,
java.lang.ClassNotFoundException
java.io.IOException
java.lang.ClassNotFoundException
private void writeIfChanged(byte[] b,
java.lang.String file)
throws java.io.IOException
java.io.IOException
protected java.lang.String defineForStatic(ClassDoc c,
FieldDoc f)
protected java.lang.String cppGuardBegin()
protected java.lang.String cppGuardEnd()
protected java.lang.String guardBegin(java.lang.String cname)
protected java.lang.String guardEnd(java.lang.String cname)
protected void writeFileTop(java.io.OutputStream o)
protected java.lang.String baseFileName(java.lang.String clazz)
protected java.lang.String getFileName(java.lang.String clazz)
protected java.lang.String getFileSuffix()
FieldDoc[] getAllFields(ClassDoc subclazz)
throws java.lang.ClassNotFoundException
java.lang.ClassNotFoundException
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||