kmy.jint.reflect
Class JintClass
java.lang.Object
|
+--kmy.jint.reflect.AbstractClass
|
+--kmy.jint.reflect.BasicClass
|
+--kmy.jint.reflect.JintClass
- public class JintClass
- extends BasicClass
- implements ErrorStorage, ErrorCodes
Fields inherited from class kmy.jint.reflect.BasicClass |
className,
classTable,
descriptor,
inner,
interfaces,
members,
modifiers,
name,
outer,
outerField,
packageName,
superclass |
Fields inherited from interface kmy.jint.constants.ErrorCodes |
ERR_A_ARREMPTY,
ERR_A_ARRNOTEMPTY,
ERR_A_BADDCL,
ERR_A_BADMETHODNAME,
ERR_A_BADOP,
ERR_A_BADSWITCHTYPE,
ERR_A_BOOLCAST,
ERR_A_CANTACCLABEL,
ERR_A_CANTCAST,
ERR_A_CANTMAKEARR,
ERR_A_CANTRESOLVE,
ERR_A_CONSTERROR,
ERR_A_EXPLCONTEXT,
ERR_A_FIELDNOTIDENT,
ERR_A_FIELDNOTSTAT,
ERR_A_IMPLICITDCL,
ERR_A_INSTOFPRIM1,
ERR_A_INSTOFPRIM2,
ERR_A_INTERNAL,
ERR_A_LABELREDEF,
ERR_A_MATCHARG1,
ERR_A_MATCHARG2,
ERR_A_MUSTBEBOOL,
ERR_A_NEVER,
ERR_A_NEWARRARGS,
ERR_A_NOBESTMATCH,
ERR_A_NOCONSTRUCTOR,
ERR_A_NOFIELD,
ERR_A_NOMETHOD,
ERR_A_NONSTATICACC,
ERR_A_NOOUTERCLASS,
ERR_A_NOTCAUGHT,
ERR_A_NOTINDEXABLE,
ERR_A_NOTINTARGS,
ERR_A_NOTINTEGER,
ERR_A_NOTLVALUE,
ERR_A_NOTNUMBER,
ERR_A_NOTSIMPLEID,
ERR_A_NOTTHROWABLE,
ERR_A_NOTTHROWN,
ERR_A_NOVAR,
ERR_A_OBJTOPRIMCAST,
ERR_A_PARAMUNRES,
ERR_A_PRIMSYNC,
ERR_A_PRIMTOOBJCAST,
ERR_A_REGEXTE,
ERR_A_STATICTHIS,
ERR_A_TOBOOLCAST,
ERR_A_TOVOIDCAST,
ERR_A_TYPEMISMATCH,
ERR_A_TYPENOTFOUND,
ERR_A_VARREDECL,
ERR_A_VOIDCAST,
ERR_C_BADOP,
ERR_C_CANTASSIGN,
ERR_C_CASEMISMATCH,
ERR_C_CVTNULLTOPRIM,
ERR_C_DUPCASE,
ERR_C_GENERIC,
ERR_C_INTERFCONSTR,
ERR_C_INTERNAL,
ERR_C_MATCHARG1,
ERR_C_NESTING,
ERR_C_NEVER,
ERR_C_NOCNSTRWOPRM,
ERR_C_NOENCLOSING,
ERR_C_NONSTATINIT,
ERR_C_NOTBOOL,
ERR_C_PICKEDNONSTR,
ERR_C_PRIMELEM,
ERR_C_RETURNREQ,
ERR_C_THISASSIGN,
ERR_C_TWODEFAULT,
ERR_L_BACKSLASHEOF,
ERR_L_CHAREND,
ERR_L_COMMENTEND,
ERR_L_EMPTYCHAR,
ERR_L_EOFINCHAR,
ERR_L_EOFINREGEX,
ERR_L_EOFINSTRING,
ERR_L_ILLEGALCHAR,
ERR_L_IOERROR,
ERR_L_NEVER,
ERR_L_NUMFORMAT,
ERR_L_REGEXEND,
ERR_L_STRINGEND,
ERR_P_ARRNOTEMPTY,
ERR_P_CASEEXPECTED,
ERR_P_CATCHEXPECTED,
ERR_P_CLASSKEYWORD,
ERR_P_DUPEXTENDS,
ERR_P_DUPIMPLEMENTS,
ERR_P_IDENTEXPECTED,
ERR_P_NOTIMPL,
ERR_P_NOTSTANDALONE,
ERR_P_OPEXPECTED,
ERR_P_REGEXEXPECTED,
ERR_P_TOKENEXPECTED,
ERR_P_TOKENINSERTED,
ERR_P_TYPEEXPECTED,
ERR_P_UNEXPECTED,
ERR_P_VALUEEXPECTED,
ERR_P_VAREXPECTED,
ERR_T_ARRNOTEMPTY,
ERR_T_CANTRESOLVE,
ERR_T_IDEXPECTED,
ERR_T_INTERNAL,
ERR_T_MULTIINHERIT,
ERR_T_NOTLIST,
ERR_T_NOTSIMPLEID,
ERR_T_ONFINISH |
Fields inherited from interface kmy.jint.constants.MiniErrorCodes |
ERR_F_BADEND,
ERR_F_BADFORMATCHAR,
ERR_F_GENERIC,
ERR_F_INCOMPLETE,
ERR_F_NOCURLBRACKET,
ERR_F_NOTWITHJAVA,
ERR_F_NOVARNAME,
ERR_MASK_CLASSTABLE,
ERR_MASK_COMPILER,
ERR_MASK_ERROR,
ERR_MASK_FATAL,
ERR_MASK_FORMAT,
ERR_MASK_GENERATOR,
ERR_MASK_INFO,
ERR_MASK_INTERNAL,
ERR_MASK_LEXER,
ERR_MASK_MODULE,
ERR_MASK_PARSER,
ERR_MASK_REGEX,
ERR_MASK_SEVERITY,
ERR_MASK_TYPER,
ERR_MASK_VERBOSE,
ERR_MASK_WARNING,
ERR_R_BADBACKREF,
ERR_R_BADSTART,
ERR_R_BQBAD,
ERR_R_BQUNFINISHED,
ERR_R_CTLINVALID,
ERR_R_CTLUNFINISHED,
ERR_R_EXTRABRACKET,
ERR_R_GENERIC,
ERR_R_HEXBADNUMBER,
ERR_R_HEXUNFINISHED,
ERR_R_INTERNAL,
ERR_R_NOBRACKET,
ERR_R_NOCURLBRACKET,
ERR_R_NOSQBRACKET,
ERR_R_NOVAREXPR,
ERR_R_NOVARNAME,
ERR_R_STRAYBSLASH |
Method Summary |
(package private) JintField |
addField(int modifiers,
Identifier name,
QualifiedIdentifier type)
|
(package private) void |
addInnerClass(AbstractClass clazz)
|
private void |
addMember(JintField f)
|
(package private) JintMethod |
addMethod(int modifiers,
Identifier name,
QualifiedIdentifier type,
QualifiedIdentifier[] params,
QualifiedIdentifier[] exceptions)
|
(package private) void |
doneAdding()
|
JintField |
findLocalField(Identifier name,
AbstractClass type)
|
BasicNode |
getBody()
|
AbstractField |
getField(Identifier name)
|
java.util.Hashtable |
getImportCache()
|
IdentifierNode[] |
getImports()
|
MethodNode |
getMethodBody(JintMethod method)
|
MethodNode |
getMethodBody(java.lang.String method)
|
java.util.Enumeration |
getMethods(Identifier name,
int nparams)
|
StatementNode[] |
getStatements()
|
AbstractClass |
getSuperclass()
|
(package private) void |
inherit(AbstractClass clazz)
|
(package private) void |
inherit(QualifiedIdentifier[] ext,
QualifiedIdentifier[] impl)
|
private void |
inherit(QualifiedIdentifier[] classes,
java.util.Vector inh)
|
boolean |
isWorld()
|
void |
markAsClass()
|
void |
markAsWorld()
|
boolean |
mustBeClass()
|
void |
reportSelfUsage()
|
boolean |
selfUsed()
|
(package private) void |
setBody(BasicNode body)
|
void |
setErrorStorage(ErrorStorage errorStorage)
|
void |
setImports(IdentifierNode[] imports)
|
(package private) void |
setMethodBody(JintMethod method,
MethodNode body)
|
void |
squeezeOuterChain()
|
void |
storeError(CompilerException e)
|
Methods inherited from class kmy.jint.reflect.BasicClass |
addMember,
dumpMethods,
getClassTable,
getDescriptor,
getFields,
getFullName,
getImplementedInterfaces,
getInnerClasses,
getLexicallyOuter,
getModifiers,
getName,
getOuter,
getOuterField,
getPackage,
initDescriptor,
isInterface,
isPrimitive,
isSubclassOf |
Methods inherited from class java.lang.Object |
,
clone,
equals,
finalize,
getClass,
hashCode,
notify,
notifyAll,
registerNatives,
wait,
wait,
wait |
staticCounter
private static int staticCounter
body
private BasicNode body
statements
private StatementNode[] statements
innerList
private java.util.Vector innerList
importCache
private java.util.Hashtable importCache
methodBodies
private java.util.Hashtable methodBodies
imports
private IdentifierNode[] imports
incomplete
private boolean incomplete
errorStorage
private ErrorStorage errorStorage
accessorCount
private int accessorCount
JintClass
public JintClass(JintClassTable ct,
QualifiedIdentifier className,
AbstractClass outer,
int modifiers)
JintClass
public JintClass(JintClassTable ct,
QualifiedIdentifier className,
AbstractClass outer)
getSuperclass
public AbstractClass getSuperclass()
- Overrides:
- getSuperclass in class BasicClass
getField
public AbstractField getField(Identifier name)
- Overrides:
- getField in class BasicClass
getMethods
public java.util.Enumeration getMethods(Identifier name,
int nparams)
- Overrides:
- getMethods in class BasicClass
getBody
public BasicNode getBody()
getMethodBody
public MethodNode getMethodBody(JintMethod method)
getMethodBody
public MethodNode getMethodBody(java.lang.String method)
getStatements
public StatementNode[] getStatements()
getImportCache
public java.util.Hashtable getImportCache()
- Overrides:
- getImportCache in class AbstractClass
setImports
public void setImports(IdentifierNode[] imports)
getImports
public IdentifierNode[] getImports()
setMethodBody
void setMethodBody(JintMethod method,
MethodNode body)
setBody
void setBody(BasicNode body)
inherit
void inherit(QualifiedIdentifier[] ext,
QualifiedIdentifier[] impl)
inherit
void inherit(AbstractClass clazz)
addMethod
JintMethod addMethod(int modifiers,
Identifier name,
QualifiedIdentifier type,
QualifiedIdentifier[] params,
QualifiedIdentifier[] exceptions)
addField
JintField addField(int modifiers,
Identifier name,
QualifiedIdentifier type)
findLocalField
public JintField findLocalField(Identifier name,
AbstractClass type)
addInnerClass
void addInnerClass(AbstractClass clazz)
doneAdding
void doneAdding()
- Overrides:
- doneAdding in class BasicClass
inherit
private void inherit(QualifiedIdentifier[] classes,
java.util.Vector inh)
addMember
private void addMember(JintField f)
reportSelfUsage
public void reportSelfUsage()
mustBeClass
public boolean mustBeClass()
selfUsed
public boolean selfUsed()
markAsClass
public void markAsClass()
markAsWorld
public void markAsWorld()
isWorld
public boolean isWorld()
- Overrides:
- isWorld in class AbstractClass
squeezeOuterChain
public void squeezeOuterChain()
storeError
public void storeError(CompilerException e)
- Specified by:
- storeError in interface ErrorStorage
setErrorStorage
public void setErrorStorage(ErrorStorage errorStorage)