Parser

Undocumented in source.

Constructors

this
this(d_string sourcename, d_string base, int useStringtable)
Undocumented in source.

Destructor

~this
~this()
Undocumented in source.

Members

Enums

normal
anonymousenum normal
Undocumented in source.

Functions

check
int check(TOK value)
Undocumented in source. Be warned that the author may not have intended to support it.
parseAddExp
Expression parseAddExp()
Undocumented in source. Be warned that the author may not have intended to support it.
parseAndAndExp
Expression parseAndAndExp()
Undocumented in source. Be warned that the author may not have intended to support it.
parseAndExp
Expression parseAndExp()
Undocumented in source. Be warned that the author may not have intended to support it.
parseArguments
Expression[] parseArguments()
Undocumented in source. Be warned that the author may not have intended to support it.
parseArrayLiteral
Expression parseArrayLiteral()
Undocumented in source. Be warned that the author may not have intended to support it.
parseAssignExp
Expression parseAssignExp()
Undocumented in source. Be warned that the author may not have intended to support it.
parseCondExp
Expression parseCondExp()
Undocumented in source. Be warned that the author may not have intended to support it.
parseEqualExp
Expression parseEqualExp()
Undocumented in source. Be warned that the author may not have intended to support it.
parseExpression
Expression parseExpression(uint flags)
Undocumented in source. Be warned that the author may not have intended to support it.
parseFunction
TopStatement parseFunction(int flag)

flag: 0 Function statement 1 Function literal

parseFunctionLiteral
Expression parseFunctionLiteral()
Undocumented in source. Be warned that the author may not have intended to support it.
parseMulExp
Expression parseMulExp()
Undocumented in source. Be warned that the author may not have intended to support it.
parseObjectLiteral
Expression parseObjectLiteral()
Undocumented in source. Be warned that the author may not have intended to support it.
parseOptionalExpression
Expression parseOptionalExpression(uint flags)
Undocumented in source. Be warned that the author may not have intended to support it.
parseOptionalSemi
void parseOptionalSemi()
Undocumented in source. Be warned that the author may not have intended to support it.
parseOrExp
Expression parseOrExp()
Undocumented in source. Be warned that the author may not have intended to support it.
parseOrOrExp
Expression parseOrOrExp()
Undocumented in source. Be warned that the author may not have intended to support it.
parseParenExp
Expression parseParenExp()

Expression Parser **************************

parsePostExp
Expression parsePostExp(Expression e, int innew)
Undocumented in source. Be warned that the author may not have intended to support it.
parsePrimaryExp
Expression parsePrimaryExp(int innew)
Undocumented in source. Be warned that the author may not have intended to support it.
parseProgram
int parseProgram(TopStatement[] topstatements, ErrInfo* perrinfo)

Return !=0 on error, and fill in *perrinfo.

parseRelExp
Expression parseRelExp()
Undocumented in source. Be warned that the author may not have intended to support it.
parseShiftExp
Expression parseShiftExp()
Undocumented in source. Be warned that the author may not have intended to support it.
parseStatement
Statement parseStatement()
parseTopStatements
TopStatement[] parseTopStatements()
Undocumented in source. Be warned that the author may not have intended to support it.
parseUnaryExp
Expression parseUnaryExp()
Undocumented in source. Be warned that the author may not have intended to support it.
parseXorExp
Expression parseXorExp()
Undocumented in source. Be warned that the author may not have intended to support it.

Static functions

parseFunctionDefinition
int parseFunctionDefinition(FunctionDefinition pfd, immutable(char)[] params, immutable(char)[] bdy, ErrInfo perrinfo)

Return !=0 on error, and fill in *perrinfo.

Variables

flags
uint flags;
Undocumented in source.
lastnamedfunc
FunctionDefinition lastnamedfunc;
Undocumented in source.

Inherited Members

From Lexer

stringtable
Identifier[d_string] stringtable;
Undocumented in source.
freelist
Token* freelist;
Undocumented in source.
sourcename
d_string sourcename;
Undocumented in source.
base
d_string base;
Undocumented in source.
end
immutable(char)* end;
Undocumented in source.
p
immutable(char)* p;
Undocumented in source.
currentline
uint currentline;
Undocumented in source.
token
Token token;
Undocumented in source.
stringbuffer
OutBuffer stringbuffer;
Undocumented in source.
useStringtable
int useStringtable;
Undocumented in source.
errinfo
ErrInfo errinfo;
Undocumented in source.
inited
bool inited;
Undocumented in source.
allocToken
Token* allocToken()
Undocumented in source. Be warned that the author may not have intended to support it.
~this
~this()
Undocumented in source.
get
dchar get(immutable(tchar)* p)
Undocumented in source. Be warned that the author may not have intended to support it.
inc
immutable(tchar)* inc(immutable(tchar)* p)
Undocumented in source. Be warned that the author may not have intended to support it.
error
void error(int msgnum, ARGS args)
Undocumented in source. Be warned that the author may not have intended to support it.
error
void error(.string fmt, ARGS args)
Undocumented in source. Be warned that the author may not have intended to support it.
locToSrcline
d_string locToSrcline(immutable(char)* src, Loc loc)

Given source text, convert loc to a string for the corresponding line.

nextToken
TOK nextToken()
Undocumented in source. Be warned that the author may not have intended to support it.
peek
Token* peek(Token* ct)
Undocumented in source. Be warned that the author may not have intended to support it.
insertSemicolon
void insertSemicolon(immutable(tchar)* loc)
Undocumented in source. Be warned that the author may not have intended to support it.
rescan
void rescan()

Horrible kludge to support disambiguating TOKregexp from TOKdivide. The idea is, if we are looking for a TOKdivide, and find instead a TOKregexp, we back up and rescan.

scan
void scan(Token* t)

Turn next token in buffer into a token.

escapeSequence
dchar escapeSequence()

Parse escape sequence.

string
d_string string(tchar quote)
regexp
d_string regexp()

Scan regular expression. Return null with buffer pointer intact if it is not a regexp.

unicode
dchar unicode()
number
TOK number(Token* t)

Read a number.

isKeyword
TOK isKeyword(const(tchar)[] s)
Undocumented in source. Be warned that the author may not have intended to support it.

Meta