public abstract class BasicElementImpl extends Object implements ElementImpl
Constructor and Description |
---|
BasicElementImpl()
Sometimes the element cannot be constructed until the Impl is available (e.g.
|
BasicElementImpl(ObjectFile.Element element) |
Modifier and Type | Method and Description |
---|---|
int |
getAlignment() |
LayoutDecisionMap |
getDecisions(LayoutDecisionMap copyingIn) |
Iterable<BuildDependency> |
getDependencies(Map<ObjectFile.Element,LayoutDecisionMap> decisions)
Implementing this method allows to declare dependencies to other Sections (i.e.
|
ObjectFile.Element |
getElement() |
int |
getMemSize(Map<ObjectFile.Element,LayoutDecisionMap> alreadyDecided)
Implement this method to provide the section size in memory (at runtime).
|
int |
getOrDecideOffset(Map<ObjectFile.Element,LayoutDecisionMap> alreadyDecided,
int offsetHint)
Implement this method to provide the offset this section should be placed at.
|
int |
getOrDecideSize(Map<ObjectFile.Element,LayoutDecisionMap> alreadyDecided,
int sizeHint)
Implement this method to provide the size of this section.
|
int |
getOrDecideVaddr(Map<ObjectFile.Element,LayoutDecisionMap> alreadyDecided,
int vaddrHint)
Implement this method to provide the virtual address of this section.
|
ObjectFile |
getOwner() |
boolean |
isReferenceable()
Locations in this section are referenceable by symbol names, section names, or by relocation,
so the section needs a virtual address.
|
void |
setElement(ObjectFile.Element element) |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getOrDecideContent, isLoadable
public BasicElementImpl(ObjectFile.Element element)
public BasicElementImpl()
public void setElement(ObjectFile.Element element)
setElement
in interface ElementImpl
public ObjectFile getOwner()
public ObjectFile.Element getElement()
getElement
in interface ElementImpl
public int getAlignment()
getAlignment
in interface ElementImpl
public Iterable<BuildDependency> getDependencies(Map<ObjectFile.Element,LayoutDecisionMap> decisions)
ElementImpl
getDependencies
in interface ElementImpl
public LayoutDecisionMap getDecisions(LayoutDecisionMap copyingIn)
getDecisions
in interface ElementImpl
public int getOrDecideOffset(Map<ObjectFile.Element,LayoutDecisionMap> alreadyDecided, int offsetHint)
ElementImpl
getOrDecideOffset
in interface ElementImpl
public int getOrDecideSize(Map<ObjectFile.Element,LayoutDecisionMap> alreadyDecided, int sizeHint)
ElementImpl
getOrDecideSize
in interface ElementImpl
public int getOrDecideVaddr(Map<ObjectFile.Element,LayoutDecisionMap> alreadyDecided, int vaddrHint)
ElementImpl
ElementImpl.isLoadable()
).getOrDecideVaddr
in interface ElementImpl
public int getMemSize(Map<ObjectFile.Element,LayoutDecisionMap> alreadyDecided)
ElementImpl
getMemSize
in interface ElementImpl
public boolean isReferenceable()
ElementImpl
isReferenceable
in interface ElementImpl