public class XobjectDef extends PropObject implements IXobject, XobjectVisitable, IVarContainer
Modifier and Type | Field and Description |
---|---|
protected java.util.LinkedList<XobjectDef> |
child_defs |
id
FINDKIND_ANY, FINDKIND_COMMON, FINDKIND_TAGNAME, FINDKIND_TYPEDEF_NAME, FINDKIND_VAR
Constructor and Description |
---|
XobjectDef(Xobject def) |
XobjectDef(Xobject def,
XobjectDef parent) |
XobjectDef(Xobject def,
XobjectDefEnv parent_env) |
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()
IXobject
public XobjectDefEnv getParentEnv()
public XobjectFile getFile()
public void setDef(Xobject def)
public boolean isPragma()
public boolean isFuncDef()
public boolean isFmoduleDef()
public boolean isVarDecl()
public boolean isFunctionDecl()
public boolean isBlockData()
public java.lang.String getName()
public Xobject getNameObj()
public Xobject getParentNameObj()
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 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)
IXobject
public void setParentRecursively(IXobject parent)
IXobject
setParentRecursively
in interface IXobject
public java.lang.String toString()
toString
in class java.lang.Object