saker.nest Documentation TaskDoc JavaDoc Packages
Annotation specifying scripting information about the annotated type.

The annotation contains fields that specify various aspects of a scripting type information.

The NestFieldInformation annotation can be used in conjunction with this in order to specify the field informations of the type.

The NestInformation can be used to provide documentational information about the type.

Some informations like kind is determined by the referencing NestTypeUsage annotation.

Methods
public NestTypeUsage[]
elementTypes() default {}
Specifies the element types of the annotated type.
public NestFieldInformation[]
enumValues() default {}
Specifies the enumeration values of the type.
public String
kind() default ""
Specifies the kind of the type.
public String
qualifiedName() default ""
Specifies the qualified name of the type that should be use when presented to the scripting runtime.
public NestTypeUsage[]
relatedTypes() default {}
Specifies the types which are related to the annotated type.
public abstract NestTypeUsage[] elementTypes() default {}
Specifies the element types of the annotated type.

This is useful if the annotated type should be treated in a way similar to collections.

The element types specified in NestTypeUsage.elementTypes() will override this value if set.

The element types.
public abstract NestFieldInformation[] enumValues() default {}
Specifies the enumeration values of the type.

This field can be used to specify the enumeration values in the annotated type.

If the annotated type is an enum, the it is recommended to place these annotations directly on the enumeration constants instead. Any annotation placed on the enumeration constant will overwrite the values in this field.

This field is useful when the annotated type is not actually an enum, but should be treated in an enumeration way for scripting purposes.

The NestFieldInformation.type() field in the specified field information annotations is ignored, and set to the annotated type information.

public abstract String kind() default ""
Specifies the kind of the type.

The kind will be overriden by NestTypeUsage.kind() if set.

By default it will be determined based on the annotated type.

The kind.
public abstract String qualifiedName() default ""
Specifies the qualified name of the type that should be use when presented to the scripting runtime.

By default the canonical name of the annotated class is used.

If the specified qualified name starts with a dot (.), then the canonical name of the enclosing element of the annotated type will be prepended to it. (See ReflectUtils.getEnclosingCanonicalNameOf(Class<?>).)

The simple name of the type is determined by taking the name component after the last dot (.) character in the qualified name.

The qualified name for scripting.
public abstract NestTypeUsage[] relatedTypes() default {}
Specifies the types which are related to the annotated type.
The related types.