Package org.javacc.cpp
Class CppCodeBuilder
- java.lang.Object
-
- org.javacc.utils.CodeBuilder<CppCodeBuilder>
-
- org.javacc.cpp.CppCodeBuilder
-
- All Implemented Interfaces:
java.io.Closeable,java.lang.AutoCloseable
class CppCodeBuilder extends org.javacc.utils.CodeBuilder<CppCodeBuilder>
TheCppCodeBuilderclass.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static classCppCodeBuilder.Buffer
-
Field Summary
Fields Modifier and Type Field Description private booleanheadeOnlyprivate java.lang.StringBufferincludeBufferprivate CppCodeBuilder.Bufferkindprivate java.lang.StringBuffermainBufferprivate java.lang.StringBufferstaticsBuffer
-
Constructor Summary
Constructors Modifier Constructor Description privateCppCodeBuilder(org.javacc.parser.Context context, org.javacc.parser.CodeGeneratorSettings options, boolean headeOnly)Constructs an instance ofCodeBuilder.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidbuild()java.lang.StringescapeToUnicode(java.lang.String text)private voidfixupLongLiterals(java.lang.StringBuffer sb)(package private) voidgenClassStart(java.lang.String mod, java.lang.String name, java.lang.String[] superClasses, java.lang.String[] superInterfaces)Generate a class with a given name, an array of superclass and another array of super interfaesprivate voidgenCommaSeperatedString(java.lang.String[] strings)(package private) voidgenerateMethodDefHeader(java.lang.String modsAndRetType, java.lang.String className, java.lang.String nameAndParams)(package private) voidgenerateMethodDefHeader(java.lang.String qualifiedModsAndRetType, java.lang.String className, java.lang.String nameAndParams, java.lang.String exceptions)protected java.lang.StringBuffergetBuffer()Get theStringBufferprivate static booleanisHexDigit(char c)Returntrueif the char is a hex digit.(package private) static CppCodeBuilderof(org.javacc.parser.Context context, org.javacc.parser.CodeGeneratorSettings options)Constructs an instance ofCppCodeBuilder.(package private) static CppCodeBuilderofHeader(org.javacc.parser.Context context, org.javacc.parser.CodeGeneratorSettings options)Constructs an instance ofCppCodeBuilder.(package private) CppCodeBuilderprintCharArray(java.lang.String s)voidprintLiteralArray(java.lang.String varName, java.lang.String[] arr)(package private) voidswitchToIncludeFile()(package private) voidswitchToMainFile()(package private) voidswitchToStaticsFile()-
Methods inherited from class org.javacc.utils.CodeBuilder
addOption, addTools, close, getFile, getLeadingComments, getTrailingComments, print, printLeadingComments, println, printTemplate, printTemplate, printToken, printTokenList, printTokenOnly, printTokenSetup, printTrailingComments, setFile, setVersion, store, toString
-
-
-
-
Field Detail
-
headeOnly
private final boolean headeOnly
-
mainBuffer
private final java.lang.StringBuffer mainBuffer
-
includeBuffer
private final java.lang.StringBuffer includeBuffer
-
staticsBuffer
private final java.lang.StringBuffer staticsBuffer
-
kind
private CppCodeBuilder.Buffer kind
-
-
Method Detail
-
getBuffer
protected final java.lang.StringBuffer getBuffer()
Get theStringBuffer- Specified by:
getBufferin classorg.javacc.utils.CodeBuilder<CppCodeBuilder>
-
genClassStart
void genClassStart(java.lang.String mod, java.lang.String name, java.lang.String[] superClasses, java.lang.String[] superInterfaces)Generate a class with a given name, an array of superclass and another array of super interfaes
-
build
protected final void build()
- Overrides:
buildin classorg.javacc.utils.CodeBuilder<CppCodeBuilder>
-
generateMethodDefHeader
void generateMethodDefHeader(java.lang.String modsAndRetType, java.lang.String className, java.lang.String nameAndParams)
-
generateMethodDefHeader
void generateMethodDefHeader(java.lang.String qualifiedModsAndRetType, java.lang.String className, java.lang.String nameAndParams, java.lang.String exceptions)
-
fixupLongLiterals
private void fixupLongLiterals(java.lang.StringBuffer sb)
-
isHexDigit
private static boolean isHexDigit(char c)
Returntrueif the char is a hex digit.- Parameters:
c-
-
genCommaSeperatedString
private final void genCommaSeperatedString(java.lang.String[] strings)
-
printCharArray
final CppCodeBuilder printCharArray(java.lang.String s)
-
printLiteralArray
public void printLiteralArray(java.lang.String varName, java.lang.String[] arr)
-
escapeToUnicode
public final java.lang.String escapeToUnicode(java.lang.String text)
- Overrides:
escapeToUnicodein classorg.javacc.utils.CodeBuilder<CppCodeBuilder>
-
switchToMainFile
void switchToMainFile()
-
switchToIncludeFile
void switchToIncludeFile()
-
switchToStaticsFile
void switchToStaticsFile()
-
of
static CppCodeBuilder of(org.javacc.parser.Context context, org.javacc.parser.CodeGeneratorSettings options)
Constructs an instance ofCppCodeBuilder.- Parameters:
options-
-
ofHeader
static CppCodeBuilder ofHeader(org.javacc.parser.Context context, org.javacc.parser.CodeGeneratorSettings options)
Constructs an instance ofCppCodeBuilder.- Parameters:
options-
-
-