diff options
author | Sven Gothel <[email protected]> | 2010-11-09 02:42:03 +0100 |
---|---|---|
committer | Sven Gothel <[email protected]> | 2010-11-09 02:42:03 +0100 |
commit | 7865b355bd52958f4b27e42b500e83c52255ef37 (patch) | |
tree | cdd887ede9b43f1a3d18527cf9eaabc9627946da /src/java/com/jogamp/gluegen/pcpp | |
parent | 08a74fb5d45f29f4d77a2713d1ebca4343519eb0 (diff) |
Gluegen: Types (stddef/stdint), Header and Predefined Macro Change
Read API doc ad GlueGen.java
New predefined types: wchar_t, intptr_t, uintptr_t
New reusable headers
for gluegen usage: make/stub_includes/gluegen
for native usage: make/stub_includes/platform
New predefined macro
#define __GLUEGEN__ 2
Diffstat (limited to 'src/java/com/jogamp/gluegen/pcpp')
-rw-r--r-- | src/java/com/jogamp/gluegen/pcpp/PCPP.java | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/src/java/com/jogamp/gluegen/pcpp/PCPP.java b/src/java/com/jogamp/gluegen/pcpp/PCPP.java index f34a707..45a92df 100644 --- a/src/java/com/jogamp/gluegen/pcpp/PCPP.java +++ b/src/java/com/jogamp/gluegen/pcpp/PCPP.java @@ -517,6 +517,16 @@ public class PCPP { while (nextToken(true) != StreamTokenizer.TT_EOL) { values.add(curTokenAsString()); } + addDefine(name, macroDefinition, values); + } + + public void addDefine(String name, String value) { + List<String> values = new ArrayList<String>(); + values.add(value); + addDefine(name, false, values); + } + + private void addDefine(String name, boolean nameIsMacro, List<String> values) { // if we're not within an active block of code (like inside an "#ifdef // FOO" where FOO isn't defined), then don't actually alter the definition // map. @@ -561,8 +571,8 @@ public class PCPP { // TO DO: Is this correct? Why not output the symbol unchanged? // I think that it's a good thing to see that some symbols are // defined in terms of others. -chris - macroDefinition = newValue.contains("("); - if(macroDefinition) { + boolean valueIsMacro = newValue.contains("("); + if(valueIsMacro) { // parser can't dig this currently emitDefine = false; } else { @@ -576,8 +586,7 @@ public class PCPP { } } - } else if (macroDefinition) { - + } else if (nameIsMacro) { // list parameters List<String> params = new ArrayList<String>(); for (int i = 1; i < values.size(); i++) { |