Class AbstractTypeRef

java.lang.Object
gw.lang.reflect.ITypeRef
gw.internal.gosu.parser.AbstractTypeRef
All Implemented Interfaces:
IType, Serializable

public abstract class AbstractTypeRef extends ITypeRef implements Serializable
This is what the proxy methods look like.

public ITypeLoader getTypeLoader() {
  _reload();
  IType itype;
  try {
    itype = (IType) _getType();
  } catch (ClassCastException classcastexception) {
    throw new RuntimeException((new StringBuilder("Type interface changed.  Expected gw.internal.gosu.parser.IGosuClassInternal for ")).append(_getTypeNameInternal()).toString(), classcastexception);
  }
  return (ITypeLoader) itype.getTypeLoader();
}
See Also:
  • Field Details

    • _type

      protected transient volatile IType _type
  • Constructor Details

    • AbstractTypeRef

      public AbstractTypeRef()
  • Method Details

    • readResolve

      public Object readResolve() throws ObjectStreamException
      Description copied from interface: IType
      IType requires this method be implemented to ensure IType instances can be centrally defined and cached.
      Specified by:
      readResolve in interface IType
      Throws:
      ObjectStreamException
    • isStale

      public final boolean isStale()
    • isReloadable

      public boolean isReloadable()
      Specified by:
      isReloadable in class ITypeRef
    • setReloadable

      public void setReloadable(boolean bReloadable)
      Specified by:
      setReloadable in class ITypeRef
    • getModule

      public IModule getModule()
    • getTypeLoaderDirectly

      public ITypeLoader getTypeLoaderDirectly()
      Specified by:
      getTypeLoaderDirectly in class ITypeRef
    • _setStale

      public void _setStale(RefreshKind refreshKind)
      Specified by:
      _setStale in class ITypeRef
    • unloadTypeInfo

      public void unloadTypeInfo()
      Description copied from interface: IType
      Unload or nullify any references to this IType's ITypeInfo.
      Specified by:
      unloadTypeInfo in interface IType
    • equals

      public boolean equals(Object obj)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • _shouldReload

      public boolean _shouldReload()
      Specified by:
      _shouldReload in class ITypeRef
    • _getType

      protected final IType _getType()
    • isDeleted

      public boolean isDeleted()
      Specified by:
      isDeleted in class ITypeRef
    • _getClassOfRef

      public Class<? extends IType> _getClassOfRef()
      Specified by:
      _getClassOfRef in class ITypeRef
    • _reload

      protected final void _reload()
    • _getTypeName

      public String _getTypeName()
    • _getTypeNameLong

      public String _getTypeNameLong()
    • _getIndexForSortingFast

      public int _getIndexForSortingFast(String key)
    • isDiscarded

      public boolean isDiscarded()
      Description copied from interface: IType
      True if this type has been replaced with a newer version of the same name in the type system.
      Specified by:
      isDiscarded in interface IType
    • setDiscarded

      public void setDiscarded(boolean bDiscarded)
      Specified by:
      setDiscarded in interface IType
    • _getTypeNameInternal

      public String _getTypeNameInternal()
      This method is called reflectively.
    • isTypeRefreshedOutsideOfLock

      public boolean isTypeRefreshedOutsideOfLock(IType type)
      Specified by:
      isTypeRefreshedOutsideOfLock in class ITypeRef
    • toString

      public String toString()
      Overrides:
      toString in class Object