|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcom.judoscript.JudoUtil
com.judoscript.parser.helper.ParserHelper
public abstract class ParserHelper
TODO: clean up the label mess -- labels are now part of a loop statment and need no special treatment.
Nested Class Summary | |
---|---|
static class |
ParserHelper.SgmlEvent
|
Field Summary | |
---|---|
int |
curFileIndex
|
protected java.lang.String |
currentNS
|
protected java.util.HashSet |
definedClasses
|
static Expr[] |
emptyExprs
|
protected java.lang.String |
encoding
|
static java.lang.String |
eol
|
protected Expr |
first
|
protected boolean |
inClassDef
|
protected boolean |
inFxnThrd
|
protected boolean |
inJavaCtor
|
protected boolean |
inJavax
|
protected java.util.HashSet |
javaxCalls
|
protected java.util.HashMap |
labels
|
protected MixtureParser |
mixtureParser
|
protected int[] |
ops
|
protected ParsingContext |
pc
|
protected Expr[] |
rest
|
Script |
script
|
protected static int |
SGML_AFTER
|
protected static int |
SGML_BEFORE
|
protected static int |
SGML_DEFAULT_TAG
|
protected static int |
SGML_SPECIAL
|
protected static int |
SGML_TAG
|
protected static int |
SGML_TEXT
|
protected java.util.Stack |
stack
This stack is used for ()*, or rather, ()+ constructs. |
protected Stmt[] |
stmts
|
protected java.util.HashSet |
superCalls
|
Fields inherited from class com.judoscript.JudoUtil |
---|
searchCP |
Constructor Summary | |
---|---|
protected |
ParserHelper()
|
Method Summary | |
---|---|
void |
addClassToScript(UserDefined.UserType ot)
|
void |
addFunction(Script script,
Function fxn)
|
void |
addFunction(UserDefined.UserType ot,
Function fxn)
|
void |
addSgmlHandler(ParserHelper.SgmlEvent evt,
StmtHtml hndlr)
stmts is expected to be processed, which can be null |
boolean |
checkAntTask(java.lang.String name)
|
static boolean |
CheckSupportedAntTask(java.lang.String name)
|
protected void |
cleanup()
|
void |
close()
|
protected int |
countOnStack(int lastMark)
|
void |
defineJavaPackages(java.lang.String pkgName,
java.lang.String javaPkg)
|
boolean |
evalConstToBool(Expr expr,
boolean def)
|
java.lang.String |
getScriptBasePath()
|
int |
getTargetID(java.lang.String targetName)
|
protected java.lang.Object[] |
handleAny(int lastMark)
|
protected BlockSimple |
handleBlock(int lastMark,
java.lang.String exceptionName,
int begin)
|
protected Expr[] |
handleExprs(int lastMark)
rest is set and returned. |
protected Expr |
handleForIn(int lineNum,
AccessVar avar,
Expr arr,
Expr from,
Expr to,
Expr step,
boolean backward,
Expr[] forInit,
Expr[] forNext,
Stmt[] preStmts)
|
void |
handleJavaPackages(int lineNo,
java.lang.String pkgId,
java.lang.String var)
|
protected Expr |
handleMixture(int beginLine,
int endLine,
java.lang.Object[] oa)
|
protected Expr |
handleMixture(java.lang.Object[] oa)
|
protected boolean |
handleMultiBase(int lastMark)
If true is returned, then ops, first and rest are set. |
protected boolean |
handleMultiBase1(int lastMark)
If true is returned, then first and rest are set. |
protected AssociateList |
handleNamedExprs(int lastMark)
|
void |
handlePragma(int lineNo,
java.lang.String pragma,
Variable val)
|
Variable |
handleRegexLiteral(java.lang.String literal)
|
protected Expr |
handleSingleExpr()
|
protected Expr |
handleSingleExpr(int lastMark)
|
protected boolean |
handleStmts(int lastMark)
If true is returned, then stmts and labels are set. |
protected java.lang.String[] |
handleStrings(int lastMark)
|
static boolean |
isOctalChar(char ch)
|
protected int |
markStack()
|
ExprBindVar |
newBindVar(int idx,
java.lang.String name,
int type,
java.lang.String typeName,
Expr expr)
|
static ExprCall |
newCall(Expr var,
java.lang.String fxn,
Expr[] params,
int[] types)
|
static ExprCall |
newCall(java.lang.String var,
java.lang.String fxn,
Expr[] params,
int[] types)
|
static ExprCall |
newCall(java.lang.String var,
java.lang.String fxn,
Expr[] params,
int[] types,
boolean expand)
|
static NewJava |
newJava(Expr className,
int line)
|
static NewJava |
newJava(Expr className,
java.lang.Object args,
int line)
|
ExprOutBoundVar |
newOutBoundVar(int idx,
java.lang.String name,
int type,
Expr host,
boolean inOut)
|
Expr |
nonAssignExpr(java.lang.Object o)
|
static Script |
parse(java.lang.String name,
java.io.File f,
java.lang.String enc,
long lastMod,
boolean dbg)
|
static Script |
parse(java.lang.String name,
java.lang.String path,
java.io.InputStream is,
java.lang.String enc,
long lastMod,
boolean dbg)
|
static Script |
parse(java.lang.String name,
java.lang.String path,
java.io.Reader r,
java.lang.String enc,
long lastMod,
boolean dbg)
|
static int |
parseInt(java.lang.String x)
|
static java.util.HashMap |
parseUsage(java.lang.String fileName)
|
static Expr[] |
reduce(Expr[] ea)
|
static Expr |
reduce(java.lang.Object o)
|
Stmt |
reduceBlock(BlockSimple blk)
|
Expr |
reduceIt()
|
void |
throwParseException(java.lang.Exception ex)
|
void |
throwParseException(java.lang.String msg)
|
abstract void |
throwParseException(java.lang.String msg,
java.lang.String hint)
|
static java.lang.String |
unicodify(java.lang.String s)
|
static java.lang.String |
unquote(java.lang.String s)
|
static java.lang.String |
unquote(java.lang.String s,
int delimLen)
|
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final java.lang.String eol
public static final Expr[] emptyExprs
public Script script
public int curFileIndex
protected MixtureParser mixtureParser
protected ParsingContext pc
protected Expr first
protected Expr[] rest
protected int[] ops
protected Stmt[] stmts
protected java.util.HashMap labels
protected boolean inClassDef
protected boolean inJavaCtor
protected boolean inJavax
protected boolean inFxnThrd
protected java.lang.String currentNS
protected java.util.HashSet definedClasses
protected java.util.HashSet superCalls
protected java.util.HashSet javaxCalls
protected java.lang.String encoding
protected java.util.Stack stack
protected static final int SGML_BEFORE
protected static final int SGML_AFTER
protected static final int SGML_TAG
protected static final int SGML_DEFAULT_TAG
protected static final int SGML_TEXT
protected static final int SGML_SPECIAL
Constructor Detail |
---|
protected ParserHelper()
Method Detail |
---|
public boolean checkAntTask(java.lang.String name)
public static final boolean CheckSupportedAntTask(java.lang.String name)
public void close()
public void addFunction(Script script, Function fxn) throws ParseException
ParseException
public void addFunction(UserDefined.UserType ot, Function fxn) throws ParseException
ParseException
public void addClassToScript(UserDefined.UserType ot) throws ParseException
ParseException
public java.lang.String getScriptBasePath()
protected final int markStack()
protected final int countOnStack(int lastMark)
public static ExprCall newCall(Expr var, java.lang.String fxn, Expr[] params, int[] types)
public static ExprCall newCall(java.lang.String var, java.lang.String fxn, Expr[] params, int[] types)
public static ExprCall newCall(java.lang.String var, java.lang.String fxn, Expr[] params, int[] types, boolean expand)
public static NewJava newJava(Expr className, java.lang.Object args, int line)
public static NewJava newJava(Expr className, int line)
protected final Expr handleSingleExpr(int lastMark)
protected final Expr handleSingleExpr()
protected BlockSimple handleBlock(int lastMark, java.lang.String exceptionName, int begin)
protected final java.lang.Object[] handleAny(int lastMark)
protected final java.lang.String[] handleStrings(int lastMark)
protected final Expr[] handleExprs(int lastMark)
protected final boolean handleMultiBase1(int lastMark)
protected final boolean handleMultiBase(int lastMark)
protected boolean handleStmts(int lastMark)
protected final AssociateList handleNamedExprs(int lastMark)
protected final Expr handleMixture(java.lang.Object[] oa)
protected final Expr handleMixture(int beginLine, int endLine, java.lang.Object[] oa)
public void handlePragma(int lineNo, java.lang.String pragma, Variable val)
public Stmt reduceBlock(BlockSimple blk)
public final ExprBindVar newBindVar(int idx, java.lang.String name, int type, java.lang.String typeName, Expr expr)
public final ExprOutBoundVar newOutBoundVar(int idx, java.lang.String name, int type, Expr host, boolean inOut) throws ParseException
ParseException
public int getTargetID(java.lang.String targetName) throws ParseException
ParseException
public Expr nonAssignExpr(java.lang.Object o) throws ParseException
ParseException
public final Expr reduceIt()
public static Expr reduce(java.lang.Object o)
public static Expr[] reduce(Expr[] ea)
protected Expr handleForIn(int lineNum, AccessVar avar, Expr arr, Expr from, Expr to, Expr step, boolean backward, Expr[] forInit, Expr[] forNext, Stmt[] preStmts)
public final void defineJavaPackages(java.lang.String pkgName, java.lang.String javaPkg)
public final void handleJavaPackages(int lineNo, java.lang.String pkgId, java.lang.String var) throws ParseException
ParseException
public boolean evalConstToBool(Expr expr, boolean def)
public static final boolean isOctalChar(char ch)
public static java.lang.String unquote(java.lang.String s)
public static java.lang.String unquote(java.lang.String s, int delimLen)
public static java.lang.String unicodify(java.lang.String s)
public static int parseInt(java.lang.String x)
public Variable handleRegexLiteral(java.lang.String literal) throws ParseException
ParseException
protected void cleanup()
public abstract void throwParseException(java.lang.String msg, java.lang.String hint) throws ParseException
ParseException
public final void throwParseException(java.lang.String msg) throws ParseException
ParseException
public final void throwParseException(java.lang.Exception ex) throws ParseException
ParseException
public void addSgmlHandler(ParserHelper.SgmlEvent evt, StmtHtml hndlr)
public static Script parse(java.lang.String name, java.lang.String path, java.io.InputStream is, java.lang.String enc, long lastMod, boolean dbg) throws ParseException, java.io.IOException
ParseException
java.io.IOException
public static Script parse(java.lang.String name, java.io.File f, java.lang.String enc, long lastMod, boolean dbg) throws ParseException, java.io.IOException
ParseException
java.io.IOException
public static Script parse(java.lang.String name, java.lang.String path, java.io.Reader r, java.lang.String enc, long lastMod, boolean dbg) throws ParseException, java.io.IOException
ParseException
java.io.IOException
public static java.util.HashMap parseUsage(java.lang.String fileName)
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |