Class TypeResolverWrapper

java.lang.Object
org.evrete.api.TypeResolverWrapper
All Implemented Interfaces:
Copyable<TypeResolver>, TypeResolver

public class TypeResolverWrapper extends Object implements TypeResolver
  • Constructor Details

    • TypeResolverWrapper

      public TypeResolverWrapper(TypeResolver delegate)
  • Method Details

    • getType

      public <T> Type<T> getType(int typeId)
      Specified by:
      getType in interface TypeResolver
      Type Parameters:
      T - type parameter
      Parameters:
      typeId - type id
      Returns:
      existing Type
    • wrapType

      public void wrapType(TypeWrapper<?> typeWrapper)
      Specified by:
      wrapType in interface TypeResolver
    • getType

      public <T> Type<T> getType(String name)
      Specified by:
      getType in interface TypeResolver
      Type Parameters:
      T - type parameter
      Parameters:
      name - type's declared name
      Returns:
      existing Type or null if not found
    • resolve

      public <T> Type<T> resolve(Object o)
      Specified by:
      resolve in interface TypeResolver
      Type Parameters:
      T - type parameter
      Parameters:
      o - object to resolve
      Returns:
      Type of the argument or null if object's type is unknown
    • getKnownTypes

      public Collection<Type<?>> getKnownTypes()
      Specified by:
      getKnownTypes in interface TypeResolver
    • declare

      public <T> Type<T> declare(String typeName, String javaType)
      Description copied from interface: TypeResolver

      Declares and registers new Type with the given type name and Java class name. The existence of the corresponding Java class will be checked lazily, when the engine requires access to the class's properties.

      Specified by:
      declare in interface TypeResolver
      Type Parameters:
      T - java class type parameter
      Parameters:
      typeName - name of the type
      javaType - Java class
      Returns:
      new internal type
    • copyOf

      public TypeResolver copyOf()
      Specified by:
      copyOf in interface Copyable<TypeResolver>
    • declare

      public <T> Type<T> declare(String typeName, Class<T> javaType)
      Description copied from interface: TypeResolver

      Declares and registers new Type with the given type name and Java class

      Specified by:
      declare in interface TypeResolver
      Type Parameters:
      T - java class type parameter
      Parameters:
      typeName - name of the type
      javaType - Java class
      Returns:
      new internal type