Symbolic Representation of C Code
Mathematica's core tree-oriented symbolic language makes it well suited to working with a hierarchical view of C code as Mathematica expressions. This supports the use of the Mathematica language for the creation, manipulation, and optimization of C code. It is used extensively for Mathematica's code generation tools. In addition, you can use SymbolicC for your own code manipulation purposes.
C Formatting
ToCCodeString — convert a symbolic C expression into a string of C code
CComment — symbolic representation of a comment
C Expressions
CAssign — symbolic representation of a C assignment
COperator — symbolic representation of an operator
CStandardMathOperator ▪ CConditional ▪ CExpression
C Grouping Constructs
CBlock — symbolic representation of a block of statements
CProgram — symbolic representation of an entire program
CStatement — symbolic representation of a statement
C Programming Constructs
CDo — symbolic representation of a do/while statement
CFor — symbolic representation of a for loop
CIf ▪ CSwitch ▪ CDefault ▪ CWhile
C Type Constructs
CCast — symbolic representation of a cast
CDeclare — symbolic representation of a variable declaration
CEnum ▪ CPointerType ▪ CStruct ▪ CUnion ▪ CTypedef ▪ CSizeOf
C Function Constructs
CFunction — symbolic representation of a function
CCall — symbolic representation of a call to a function
CReturn — symbolic representation of a return from a function
C Flow Control
CBreak — symbolic representation of a break statement
CContinue — symbolic representation of a continue statement
C Struct Access
CMember — symbolic representation of access from a struct
CPointerMember — symbolic representation of access from a pointer to a struct
C Address and Dereference
CAddress — symbolic representation of the address of an object
CDereference — symbolic representation of the dereferencing of a pointer
CArray — symbolic representation of an array
C Preprocessor Statements
CInclude — symbolic representation of a preprocessor include statement
CDefine — symbolic representation of a preprocessor define
CError ▪ CLine ▪ CPragma ▪ CPreprocessorElif ▪ CPreprocessorElse ▪ CPreprocessorEndif ▪ CPreprocessorIf ▪ CPreprocessorIfdef ▪ CPreprocessorIfndef ▪ CUndef