Package org.fusesource.hawtjni.generator
Class MacGenerator
- java.lang.Object
-
- org.fusesource.hawtjni.generator.MacGenerator
-
public class MacGenerator extends java.lang.Object
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description (package private) static class
MacGenerator.NodeEntry
-
Field Summary
Fields Modifier and Type Field Description (package private) java.lang.String
delimiter
(package private) org.w3c.dom.Document[]
documents
(package private) java.lang.String
mainClassName
(package private) java.io.PrintStream
out
(package private) java.lang.String
outputDir
(package private) java.lang.String[]
xmls
-
Constructor Summary
Constructors Constructor Description MacGenerator()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description (package private) void
buildLookup(org.w3c.dom.Node node, java.util.HashMap<java.lang.String,org.w3c.dom.Node> table)
(package private) java.lang.String
buildSend(org.w3c.dom.Node method, boolean tags, boolean only64, boolean superCall)
(package private) void
copyClassMethodsDown(java.util.Map<java.lang.String,MacGenerator.NodeEntry> classes)
(package private) org.w3c.dom.Node
findNSObjectMethod(org.w3c.dom.Node method)
(package private) java.lang.String
fixDelimiter(java.lang.String str)
void
generate(ProgressMonitor progress)
(package private) void
generateClasses()
(package private) void
generateClassesConst()
(package private) void
generateConstants()
(package private) void
generateCustomCallbacks()
(package private) void
generateEnums()
(package private) void
generateExtraAttributes()
(package private) void
generateExtraMethods(java.lang.String className)
(package private) void
generateFunctions()
(package private) void
generateMainClass()
(package private) void
generateMethods(java.lang.String className, java.util.ArrayList<org.w3c.dom.Node> methods)
(package private) void
generateProtocolsConst()
(package private) void
generateSelectorsConst()
(package private) void
generateSends(boolean superCall)
(package private) void
generateStructNatives()
(package private) void
generateVariadics(org.w3c.dom.Node node)
(package private) java.lang.String
getClassName(java.lang.String className)
(package private) java.lang.String
getCType(org.w3c.dom.Node node)
(package private) org.w3c.dom.Document
getDocument(java.lang.String xmlPath)
org.w3c.dom.Document[]
getDocuments()
java.lang.String[]
getExtraAttributeNames(org.w3c.dom.Node node)
java.lang.String
getFileName(java.lang.String xmlPath)
(package private) boolean
getGen(org.w3c.dom.Node node)
(package private) boolean
getGenCallback(org.w3c.dom.Node node)
(package private) java.util.TreeMap<java.lang.String,MacGenerator.NodeEntry>
getGeneratedClasses()
(package private) boolean
getGenSuper(org.w3c.dom.Node node)
org.w3c.dom.Node
getIDAttribute(org.w3c.dom.Node node)
java.lang.String[]
getIDAttributeNames()
(package private) java.lang.String
getJavaType(java.lang.String code, org.w3c.dom.NamedNodeMap attributes, boolean is64)
(package private) java.lang.String
getJavaType(org.w3c.dom.Node node)
(package private) java.lang.String
getJavaType64(org.w3c.dom.Node node)
(package private) java.lang.String
getJNIType(org.w3c.dom.Node node)
(package private) java.lang.String
getKey(org.w3c.dom.Node node)
(package private) int
getLevel(org.w3c.dom.Node node)
(package private) java.lang.String
getPackageName(java.lang.String className)
(package private) org.w3c.dom.Node
getReturnNode(org.w3c.dom.NodeList list)
(package private) java.lang.String
getSelConst(java.lang.String sel)
(package private) java.lang.String
getSuperclassName(org.w3c.dom.Node node)
(package private) java.lang.String
getType(java.lang.String code, org.w3c.dom.NamedNodeMap attributes, boolean is64)
(package private) java.lang.String
getType(org.w3c.dom.Node node)
(package private) java.lang.String
getType64(org.w3c.dom.Node node)
java.lang.String[]
getXmls()
(package private) boolean
isBoolean(org.w3c.dom.Node node)
(package private) boolean
isFloatingPoint(org.w3c.dom.Node node)
(package private) boolean
isObject(org.w3c.dom.Node node)
(package private) boolean
isStatic(org.w3c.dom.Node node)
(package private) boolean
isStruct(org.w3c.dom.Node node)
(package private) boolean
isUnique(org.w3c.dom.Node method, java.util.ArrayList<org.w3c.dom.Node> methods)
(package private) static void
list(java.io.File path, java.util.ArrayList<java.lang.String> list)
static void
main(java.lang.String[] args)
(package private) void
merge(org.w3c.dom.Document document, org.w3c.dom.Document extraDocument)
(package private) void
merge(org.w3c.dom.Node node, java.util.HashMap<java.lang.String,org.w3c.dom.Node> extras, java.util.HashMap<java.lang.String,org.w3c.dom.Node> docLookup)
(package private) void
out(java.lang.String str)
(package private) void
outln()
(package private) void
saveExtraAttributes(java.lang.String xmlPath, org.w3c.dom.Document document)
void
setMainClass(java.lang.String mainClassName)
void
setOutputDir(java.lang.String dir)
void
setXmls(java.lang.String[] xmls)
(package private) static java.lang.String[]
split(java.lang.String str, java.lang.String separator)
-
-
-
Method Detail
-
list
static void list(java.io.File path, java.util.ArrayList<java.lang.String> list)
-
getLevel
int getLevel(org.w3c.dom.Node node)
-
merge
void merge(org.w3c.dom.Document document, org.w3c.dom.Document extraDocument)
-
generate
public void generate(ProgressMonitor progress) throws HawtJNI.UsageException
- Throws:
HawtJNI.UsageException
-
fixDelimiter
java.lang.String fixDelimiter(java.lang.String str)
-
generateMethods
void generateMethods(java.lang.String className, java.util.ArrayList<org.w3c.dom.Node> methods)
-
generateExtraMethods
void generateExtraMethods(java.lang.String className)
-
getGeneratedClasses
java.util.TreeMap<java.lang.String,MacGenerator.NodeEntry> getGeneratedClasses()
-
copyClassMethodsDown
void copyClassMethodsDown(java.util.Map<java.lang.String,MacGenerator.NodeEntry> classes)
-
getSuperclassName
java.lang.String getSuperclassName(org.w3c.dom.Node node)
-
generateClasses
void generateClasses()
-
generateExtraAttributes
void generateExtraAttributes()
-
generateMainClass
void generateMainClass()
-
getDocuments
public org.w3c.dom.Document[] getDocuments()
-
getXmls
public java.lang.String[] getXmls()
-
saveExtraAttributes
void saveExtraAttributes(java.lang.String xmlPath, org.w3c.dom.Document document)
-
setOutputDir
public void setOutputDir(java.lang.String dir)
-
setXmls
public void setXmls(java.lang.String[] xmls)
-
setMainClass
public void setMainClass(java.lang.String mainClassName)
-
getDocument
org.w3c.dom.Document getDocument(java.lang.String xmlPath)
-
getExtraAttributeNames
public java.lang.String[] getExtraAttributeNames(org.w3c.dom.Node node)
-
getFileName
public java.lang.String getFileName(java.lang.String xmlPath)
-
getKey
java.lang.String getKey(org.w3c.dom.Node node)
-
getIDAttribute
public org.w3c.dom.Node getIDAttribute(org.w3c.dom.Node node)
-
getIDAttributeNames
public java.lang.String[] getIDAttributeNames()
-
merge
void merge(org.w3c.dom.Node node, java.util.HashMap<java.lang.String,org.w3c.dom.Node> extras, java.util.HashMap<java.lang.String,org.w3c.dom.Node> docLookup)
-
out
void out(java.lang.String str)
-
outln
void outln()
-
generateConstants
void generateConstants()
-
generateEnums
void generateEnums()
-
getGen
boolean getGen(org.w3c.dom.Node node)
-
getGenSuper
boolean getGenSuper(org.w3c.dom.Node node)
-
getGenCallback
boolean getGenCallback(org.w3c.dom.Node node)
-
isStatic
boolean isStatic(org.w3c.dom.Node node)
-
isStruct
boolean isStruct(org.w3c.dom.Node node)
-
isFloatingPoint
boolean isFloatingPoint(org.w3c.dom.Node node)
-
isObject
boolean isObject(org.w3c.dom.Node node)
-
isBoolean
boolean isBoolean(org.w3c.dom.Node node)
-
buildLookup
void buildLookup(org.w3c.dom.Node node, java.util.HashMap<java.lang.String,org.w3c.dom.Node> table)
-
isUnique
boolean isUnique(org.w3c.dom.Node method, java.util.ArrayList<org.w3c.dom.Node> methods)
-
generateSelectorsConst
void generateSelectorsConst()
-
generateStructNatives
void generateStructNatives()
-
buildSend
java.lang.String buildSend(org.w3c.dom.Node method, boolean tags, boolean only64, boolean superCall)
-
getCType
java.lang.String getCType(org.w3c.dom.Node node)
-
findNSObjectMethod
org.w3c.dom.Node findNSObjectMethod(org.w3c.dom.Node method)
-
generateCustomCallbacks
void generateCustomCallbacks()
-
generateSends
void generateSends(boolean superCall)
-
getSelConst
java.lang.String getSelConst(java.lang.String sel)
-
generateClassesConst
void generateClassesConst()
-
generateProtocolsConst
void generateProtocolsConst()
-
getPackageName
java.lang.String getPackageName(java.lang.String className)
-
getClassName
java.lang.String getClassName(java.lang.String className)
-
getReturnNode
org.w3c.dom.Node getReturnNode(org.w3c.dom.NodeList list)
-
getType
java.lang.String getType(org.w3c.dom.Node node)
-
getType64
java.lang.String getType64(org.w3c.dom.Node node)
-
getType
java.lang.String getType(java.lang.String code, org.w3c.dom.NamedNodeMap attributes, boolean is64)
-
getJNIType
java.lang.String getJNIType(org.w3c.dom.Node node)
-
getJavaType
java.lang.String getJavaType(org.w3c.dom.Node node)
-
getJavaType64
java.lang.String getJavaType64(org.w3c.dom.Node node)
-
getJavaType
java.lang.String getJavaType(java.lang.String code, org.w3c.dom.NamedNodeMap attributes, boolean is64)
-
split
static java.lang.String[] split(java.lang.String str, java.lang.String separator)
-
generateFunctions
void generateFunctions()
-
generateVariadics
void generateVariadics(org.w3c.dom.Node node)
-
main
public static void main(java.lang.String[] args)
-
-