Compiler

Adam Funct Make adam_task execute code. AdamFile Funct Make adam_task execute file. CCmpGlbls Class class CCmpGlbls DocTreeExe Funct Execute doc tree branch. DocTreeFExe Funct Execute doc tree branch in file. ExeDoc Funct JIT Compile and execute a document. ExeFile Funct JIT Compile and execute a file. ExeFile2 Funct throws exceptions ExePrint Funct JIT Compile and execute text from a printf(). ExePrint2 Funct throws exceptions ExePutS Funct JIT Compile and execute text from a puts(""). ExePutS2 Funct throws exceptions LastFun Funct Execute last fun with args. PopUp Funct Execute code in PopUp task. PopUpFile Funct ExeFile2() in PopUp task. Cont as User. PopUpPrint Funct Execute code in PopUp task. PopUpRunFile Funct ExeFile() with args using LastFun() in PopUp task. RunFile Funct ExeFile() with args using LastFun(). RunFile2 Funct ExeFile2() with args using LastFun(). throws exceptions. cmp GlbVar CCmpGlbls cmp;

Compiler/Directive

#define __DATE__ #exe{StreamPrint("\"%D\"",Now);} #define __TIME__ #exe{StreamPrint("\"%T\"",Now);} #define __LINE__ #exe{StreamPrint("%d",Fs->last_cc->lex_include_stk->line_num);} #define __CMD_LINE__ #exe{StreamPrint("%d",Fs->last_cc->flags&CCF_CMD_LINE && Fs->last_cc->lex_include_stk->depth<1);} #define __FILE__ #exe{StreamPrint("\"%s\"",Fs->last_cc->lex_include_stk->full_name);} #define __DIR__ #exe{StreamDir;} See ::/Demo/Directives.HC. Echo Funct Displays text as it is being compiled. GetOption Funct Get state of compiler option. Option Funct Set compiler Option to val. PassTrace Funct Ctrls which optimizer passes are displayed. StreamDoc Funct Inject doc into compile stream. Use inside #exe{}. StreamExePrint Funct Causes value from stream to be used in an #exe{} block. StreamPrint Funct Injects text into the compile stream. Used in #exe{} blocks. Trace Funct Displays assembly code output from compiler.

Compiler/Internal

CArrayDim Class class CArrayDim CHashClass Class class CHashClass:CHashSrcSym CHashDefineStr Class class CHashDefineStr:CHashSrcSym CHashFun Class class CHashFun:CHashClass CHashGlblVar Class class CHashGlblVar:CHashSrcSym CHashOpcode Class class CHashOpcode:CHash CMemberLst Class class CMemberLst CMemberLstMeta Class class CMemberLstMeta

Compiler/Lex

The compiler's lexical analyzer can be used in your programs to simplify parsing. See Doc Parsing or Parse Opcode File. See Tokens. CCmpCtrl Class class CCmpCtrl CmpCtrlDel Funct Free CCmpCtrl. CmpCtrlNew Funct MAlloc and Init CCmpCtrl. CmpCtrlSize Funct Mem size of CCmpCtrl and its members. HashSrcFileSet Funct Set CHashSrcSym link and help_index by cur cc pos. IsLexExpression2Bin Funct Compile cc expression to bin. Return err status. Lex Funct Fetch next token. LexAttachDoc Funct Start lexing doc. Give either doc or abs_filename. LexD2I32 Funct Not HolyC. Sprite-like lex 2D point. LexD3I32 Funct Not HolyC. Sprite-like lex 3D point. LexExcept Funct Print err msg, LexPutPos() and throw exception. LexExpression Funct Compile cc expression and eval. Might be I64 or F64. LexExpression2Bin Funct Compile cc expression. You call the code. LexExpressionF64 Funct Compile cc expression, forcing to F64 and eval. LexExpressionI64 Funct Compile cc expression, forcing to I64 and eval. LexExtStr Funct Lex TK_STR's to one combined str. _size includes terminator. LexFirstRem Funct LexGetChar() chars making str until marker. LexGetChar Funct Get one char from stream. Allow put-back one. LexPopNoRestore Funct Don't restore token-stream saved-point. LexPopRestore Funct Restore token-stream saved-point. LexPush Funct Create token-stream save point. LexPutLine Funct Print cur pos to end of line to StdOut. LexPutPos Funct Print token, line link and, then, LexPutLine(). LexPutToken Funct Print cur token to StdOut. (Crude) LexSkipEol Funct LexGetChar to NULL until end-of-line. LexStmt2Bin Funct Compile one cc stmt to bin code. LexWarn Funct Print warn msg, then, LexPutPos(). MemberFind Funct Find class member. See ClassRep() and DocForm(). MemberMetaData Funct Find meta data name, return meta data val. See ::/Demo/ClassMeta.HC. MemberMetaFind Funct Find meta data name, return meta data struct. See ::/Demo/ClassMeta.HC. OptClassFwd Funct Class forwarding for unions and subclasses. PrsKeyWord Funct Cvt cur token to KEYWORD or -1.