Class SymbolEntry

  • Direct Known Subclasses:
    DynamicEntry, MappedEntry

    public abstract class SymbolEntry
    extends java.lang.Object
    A mapping from a HighSymbol object to the storage that holds the symbol's value.
    • Constructor Summary

      Constructors 
      Constructor Description
      SymbolEntry​(HighSymbol sym)
      Constructor for use with restoreXML
    • Method Summary

      All Methods Instance Methods Abstract Methods Concrete Methods 
      Modifier and Type Method Description
      protected void buildRangelistXML​(java.lang.StringBuilder res)  
      Address getPCAdress()
      The storage used to hold this Symbol may be used for other purposes at different points in the code.
      abstract int getSize()
      Get the number of bytes consumed by the symbol when using this storage
      abstract VariableStorage getStorage()
      Get the storage associated with this particular mapping of the Symbol
      abstract boolean isReadOnly()  
      abstract boolean isVolatile()  
      protected void parseRangeList​(XmlPullParser parser)  
      abstract void restoreXML​(XmlPullParser parser)
      Restore this entry from the given XML stream.
      abstract void saveXml​(java.lang.StringBuilder buf)
      Save this entry as (a set of) XML tags to the given stream
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • SymbolEntry

        public SymbolEntry​(HighSymbol sym)
        Constructor for use with restoreXML
        Parameters:
        sym - is the symbol owning this entry
    • Method Detail

      • restoreXML

        public abstract void restoreXML​(XmlPullParser parser)
                                 throws PcodeXMLException
        Restore this entry from the given XML stream. Typically more than one tag is consumed
        Parameters:
        parser - is the given XML stream
        Throws:
        PcodeXMLException - if the XML is invalid
      • saveXml

        public abstract void saveXml​(java.lang.StringBuilder buf)
        Save this entry as (a set of) XML tags to the given stream
        Parameters:
        buf - is the given stream
      • getStorage

        public abstract VariableStorage getStorage()
        Get the storage associated with this particular mapping of the Symbol
        Returns:
        the storage object
      • getSize

        public abstract int getSize()
        Get the number of bytes consumed by the symbol when using this storage
        Returns:
        the size of this entry
      • isReadOnly

        public abstract boolean isReadOnly()
        Returns:
        true if the mapped storage is read-only
      • isVolatile

        public abstract boolean isVolatile()
        Returns:
        true if the mapped storage is volatile
      • getPCAdress

        public Address getPCAdress()
        The storage used to hold this Symbol may be used for other purposes at different points in the code. This returns the earliest address in the code where this storage is used for this symbol
        Returns:
        the starting address where the Symbol uses this storage
      • parseRangeList

        protected void parseRangeList​(XmlPullParser parser)
      • buildRangelistXML

        protected void buildRangelistXML​(java.lang.StringBuilder res)