Package ghidra.app.util.viewer.proxy

# Class ProxyObj<T>

java.lang.Object
ghidra.app.util.viewer.proxy.ProxyObj<T>

Type Parameters:
  `T` - the proxy object type

Direct Known Subclasses:
  `AddressProxy`, `CodeUnitProxy`, `DataProxy`, `EmptyProxy`, `FunctionProxy`, `VariableProxy`

public abstract class ProxyObj<T> extends Object
Implementing objects of this interface hold an object from a program (e.g., CodeUnit, Function, etc.) in such a way as to be robust against changes to the program. In other words, it protects against holding on to "stale" objects. The getObject() method will return the represented object (refreshed if it was stale) or null if it no longer exists.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `abstract boolean`
  `contains(Address a)`
  Returns true if the proxy object of this class contains the given address.
  `ListingModel`
  `getListingLayoutModel()`
  Returns the layout model which corresponds to this field proxy.
  `abstract T`
  `getObject()`
  Returns the object that this proxy represents or null if the object no longer exists.

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Method Details

  - ### getListingLayoutModel

    public ListingModel getListingLayoutModel()
    Returns the layout model which corresponds to this field proxy.
    Returns:
      the model

  - ### getObject

    public abstract T getObject()
    Returns the object that this proxy represents or null if the object no longer exists.
    Returns:
      the object that this proxy represents or null if the object no longer exists.

  - ### contains

    public abstract boolean contains(Address a)
    Returns true if the proxy object of this class contains the given address.
    Parameters:
      `a` - the address
    Returns:
      true if the proxy object of this class contains the given address.