xtc.lang |
Language-specific support for C and Java.
|
Java Source File Name | Type | Comment |
C.java | Class | The C tool. |
CAnalyzer.java | Class | A visitor to type check C programs. |
CCounter.java | Class | A visitor to collect statistics on a C program. |
CFactoryParser.java | Class | Packrat parser for grammar xtc.lang.CFactory . |
ClassfileSourceRemapper.java | Class | A class file post-processor to rewrite a class file for the remapped line
number table or to append a SMAP attribute to the class file. |
CParser.java | Class | Packrat parser for grammar xtc.lang.C . |
CParserState.java | Class | The global state for parsing C. |
CPrinter.java | Class | A pretty printer for C. |
CReader.java | Class | Packrat parser for grammar xtc.lang.C . |
FactoryFactory.java | Class | A factory of factories. |
Java.java | Class | The Java tool.
Parser Runtime Classes
The Java parsers supported by this tool are generated by
Rats!, JavaCC, and ANTLR, respectively. |
JavaAnalyzer.java | Class | A visitor that constructs a symbol table for a Java compilation unit. |
JavaAstSimplifier.java | Class | A visitor that simplifies Java ASTs. |
JavaEntities.java | Class | Common functionality for handling Java entities outside the AST.
Composite types
ExpressionT | > | GeneralLValueT, GeneralRValueT
| GeneralLValueT | > | LValueT, FieldT, LocalT, ParameterT
| LValueT | = | RValueT
| FieldT | > | VariableT:(FIELD Name WrappedRValueT)
| LocalT | > | VariableT:(LOCAL Name WrappedRValueT)
| ParameterT | > | VariableT:(PARAMETER Name RValueT)
| GeneralRValueT | > | NullT, WrappedRValueT
| RValueT | > | PrimitiveT, ArrayT, WrappedClassT, WrappedInterfaceT
| ArrayT | = | LValueT
| ClassT | = | Name WrappedClassT WrappedInterfaceT* Members
| InterfaceT | = | Name WrappedInterfaceT* Members
| Members | = | FieldT* MethodT* WrappedClassT* WrappedInterfaceT*
| MethodT | = | ReturnT Name ParameterT* WrappedClassT*
| NotAValueT | > | PackageT, AnnotatedT:ReturnT --- annotated with Constants.ATT_NOT_A_VALUE
| ReturnT | > | VoidT, RValueT
|
Wrapped types
WrappedRValueT | > | ConstantT:RValueT / RValueT
| WrappedClassT | > | AliasT:Name / AliasT:ClassT / ClassT
| WrappedInterfaceT | > | AliasT:Name / AliasT:InterfaceT / InterfaceT
|
Basetypes
PrimitiveT | > | BooleanT, NumberT
| NumberT | > | IntegerT, FloatT
| NullT | = | ConstantT:VoidT
|
|