public class XobjectDef extends PropObject implements XobjectVisitable, IVarContainer
Modifier and Type | Field and Description |
---|---|
protected java.util.LinkedList<XobjectDef> |
child_defs |
id
Constructor and Description |
---|
XobjectDef(Xobject def) |
XobjectDef(Xobject def,
XobjectDef parent) |
XobjectDef(Xobject def,
XobjectDefEnv parent_env) |
Modifier and Type | Method and Description |
---|---|
void |
addAfterThis(XobjectDef d) |
Ident |
declExternIdent(java.lang.String name,
Xtype t) |
Ident |
declGlobalIdent(java.lang.String name,
Xtype t) |
Ident |
declStaticIdent(java.lang.String name,
Xtype t) |
boolean |
enter(XobjectVisitor visitor) |
IXobject |
find(java.lang.String name,
int kind) |
Ident |
findCommonIdent(java.lang.String name) |
Ident |
findIdent(java.lang.String name) |
Ident |
findIdent(java.lang.String name,
int kind) |
Ident |
findVarIdent(java.lang.String name) |
static XobjectDef |
Func(Xobject name,
Xobject id_list,
Xobject decls,
Xobject body) |
java.util.LinkedList<XobjectDef> |
getChildren() |
Xobject |
getDef() |
XobjectFile |
getFile() |
Xobject |
getFuncBody() |
Xobject |
getFuncDecls() |
Xobject |
getFuncGccAttributes() |
Xobject |
getFuncIdList() |
Xtype |
getFuncType() |
Xobject |
getInitializer() |
LineNo |
getLineNo() |
java.lang.String |
getName() |
Xobject |
getNameObj() |
XobjectDef |
getParent() |
XobjectDefEnv |
getParentEnv() |
boolean |
hasChildren() |
void |
insertBeforeThis(XobjectDef d) |
boolean |
isBlockData() |
boolean |
isFmoduleDef() |
boolean |
isFuncDef() |
boolean |
isFunctionDecl() |
boolean |
isVarDecl() |
void |
setDef(Xobject def) |
void |
setName(java.lang.String name) |
void |
setParent(XobjectDef parent) |
void |
setParent(XobjectDefEnv env) |
void |
setParentRecursively(IXobject parent) |
java.lang.String |
toString() |
static XobjectDef |
Var(java.lang.String name,
Xobject initializer) |
getProp, getProperties, Id, remProp, remProperties, setId, setProp, setProperties
protected java.util.LinkedList<XobjectDef> child_defs
public XobjectDef(Xobject def)
public XobjectDef(Xobject def, XobjectDefEnv parent_env)
public XobjectDef(Xobject def, XobjectDef parent)
public static XobjectDef Func(Xobject name, Xobject id_list, Xobject decls, Xobject body)
public static XobjectDef Var(java.lang.String name, Xobject initializer)
public Xobject getDef()
public java.util.LinkedList<XobjectDef> getChildren()
public boolean hasChildren()
public void setParent(XobjectDef parent)
public void setParent(XobjectDefEnv env)
public XobjectDef getParent()
public XobjectDefEnv getParentEnv()
public XobjectFile getFile()
public void setDef(Xobject def)
public boolean isFuncDef()
public boolean isFmoduleDef()
public boolean isVarDecl()
public boolean isFunctionDecl()
public boolean isBlockData()
public java.lang.String getName()
public Xobject getNameObj()
public void setName(java.lang.String name)
public Xtype getFuncType()
public Xobject getInitializer()
public Xobject getFuncIdList()
public Xobject getFuncDecls()
public Xobject getFuncBody()
public Xobject getFuncGccAttributes()
public void insertBeforeThis(XobjectDef d)
public void addAfterThis(XobjectDef d)
public boolean enter(XobjectVisitor visitor)
enter
in interface XobjectVisitable
public LineNo getLineNo()
public Ident findIdent(java.lang.String name, int kind)
public Ident findIdent(java.lang.String name)
public Ident findVarIdent(java.lang.String name)
findVarIdent
in interface IVarContainer
public Ident findCommonIdent(java.lang.String name)
findCommonIdent
in interface IVarContainer
public IXobject find(java.lang.String name, int kind)
public void setParentRecursively(IXobject parent)
public java.lang.String toString()
toString
in class java.lang.Object