Interface TraceSymbolWithLocationView<T extends TraceSymbol>

Type Parameters:
T - the type of symbols in the view
All Superinterfaces:
TraceSymbolView<T>
All Known Subinterfaces:
TraceLabelSymbolView
All Known Implementing Classes:
DBTraceLabelSymbolView, DBTraceSymbolMultipleTypesWithLocationView

public interface TraceSymbolWithLocationView<T extends TraceSymbol> extends TraceSymbolView<T>
A symbol view for things bound by an address range and lifespan.

NOTE: We may eventually drop the thread parameter from these methods, as we transition to using register-space overlays.

  • Method Details

    • getChildWithNameAt

      T getChildWithNameAt(String name, long snap, Address address, TraceNamespaceSymbol parent)
      Get the child of the given parent having the given name at the given point.
      Parameters:
      name - the name of the symbol
      snap - the snapshot key
      address - the address of the symbol
      parent - the parent namespace
      Returns:
      the symbol, or null
    • getChildWithNameAt

      default T getChildWithNameAt(String name, TracePlatform platform, long snap, TraceThread thread, Register register, TraceNamespaceSymbol parent)
      Get the child of the given parent having the given name at the given register's min address.
      Parameters:
      name - the name of the symbol
      platform - the platform defining the register
      snap - the snapshot key
      thread - the thread
      register - the register whose min address to check
      parent - the parent namespace
      Returns:
      the symbol, or null
    • getChildWithNameAt

      default T getChildWithNameAt(String name, long snap, TraceThread thread, Register register, TraceNamespaceSymbol parent)
      Get the child of the given parent having the given name at the given register's min address.
      Parameters:
      name - the name of the symbol
      snap - the snapshot key
      thread - the thread
      register - the register whose min address to check
      parent - the parent namespace
      Returns:
      the symbol, or null
    • getGlobalWithNameAt

      default T getGlobalWithNameAt(String name, long snap, Address address)
      A shorthand for getChildWithNameAt(String, long, Address, TraceNamespaceSymbol) where parent is the global namespace.
      Parameters:
      name - the name of the symbol
      snap - the snapshot key
      address - the address of the symbol
      Returns:
      the symbol, or null
    • getIntersecting

      Collection<? extends T> getIntersecting(Lifespan span, AddressRange range, boolean includeDynamicSymbols, boolean forward)
      Get symbols in this view intersecting the given box.
      Parameters:
      span - the time bound of the box
      range - the address bound of the box
      includeDynamicSymbols - true to include dynamically-generated symbols
      forward - true if the collection should be ordered forward by address, false for backward by address.
      Returns:
      the symbols in this view satisfying the query
    • getIntersecting

      default Collection<? extends T> getIntersecting(TracePlatform platform, Lifespan span, TraceThread thread, Register register, boolean includeDynamicSymbols, boolean forward)
      Get symbols in this view intersecting the given register.
      Parameters:
      platform - the platform defining the register
      span - the time bound of the box
      thread - the thread
      register - the register
      includeDynamicSymbols - true to include dynamically-generated symbols
      forward - true if the collection should be ordered forward by address, false for backward by address.
      Returns:
      the symbols in this view satisfying the query
    • getIntersecting

      default Collection<? extends T> getIntersecting(Lifespan span, TraceThread thread, Register register, boolean includeDynamicSymbols, boolean forward)
      Get symbols in this view intersecting the given register.
      Parameters:
      span - the time bound of the box
      thread - the thread
      register - the register
      includeDynamicSymbols - true to include dynamically-generated symbols
      forward - true if the collection should be ordered forward by address, false for backward by address.
      Returns:
      the symbols in this view satisfying the query
    • getAt

      default Collection<? extends T> getAt(long snap, Address address, boolean includeDynamicSymbols)
      Get symbols in this view at the given point.

      The result will be ordered with the primary symbol first.

      Parameters:
      snap - the snapshot key
      address - the address of the symbols
      includeDynamicSymbols - true to include dynamically-generated symbols
      Returns:
      the symbols in this view satisfying the query
    • getAt

      default Collection<? extends T> getAt(TracePlatform platform, long snap, TraceThread thread, Register register, boolean includeDynamicSymbols)
      Get symbols in this view at the given register's min address.

      The result will be ordered with the primary symbol first.

      Parameters:
      platform - the platform defining the register
      snap - the snapshot key
      thread - the thread
      register - the register
      includeDynamicSymbols - true to include dynamically-generated symbols
      Returns:
      the symbols in this view satisfying the query
    • getAt

      default Collection<? extends T> getAt(long snap, TraceThread thread, Register register, boolean includeDynamicSymbols)
      Get symbols in this view at the given register's min address.

      The result will be ordered with the primary symbol first.

      Parameters:
      snap - the snapshot key
      thread - the thread
      register - the register
      includeDynamicSymbols - true to include dynamically-generated symbols
      Returns:
      the symbols in this view satisfying the query
    • hasAt

      default boolean hasAt(long snap, Address address, boolean includeDynamicSymbols)
      Check if this view contains any symbols at the given point.
      Parameters:
      snap - the snapshot key
      address - the address of the symbols
      includeDynamicSymbols - true to include dynamically-generated symbols
      Returns:
      true if any symbols in this view satisfy the query