Interface TypeFormatContext

All Known Implementing Classes:
ClassNameFormatContext

public interface TypeFormatContext
Author:
ZZZank
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final TypeFormatContext
    Formatting context that formats every type as the result of type.asClass().getName() TypeFull representationRepresentation using this context Classjava.lang.Stringjava.lang.String Primitive Classcharchar Nested ClassEntry (in java.util.Map)java.util.Map$Entry Arrayjava.lang.String[][Ljava.lang.String; Primitive Arraychar[][C Parameterizedjava.lang.List<java.lang.String>java.util.List VariableT extends java.lang.Stringjava.lang.String TypeInfo.NONE(No standard representation)java.lang.Object
    static final TypeFormatContext
    Full feature formatting context TypeFull representationRepresentation using this context Classjava.lang.Stringjava.lang.String Primitive Classcharchar Nested ClassEntry (in java.util.Map)java.util.Map$Entry Arrayjava.lang.String[]java.lang.String[] Primitive Arraychar[]char[] Parameterizedjava.lang.List<java.lang.String>java.util.List<java.lang.String> VariableT extends java.lang.StringT extends java.lang.String TypeInfo.NONE(No standard representation)?
    static final TypeFormatContext
    Full feature formatting context with class name simplified TypeFull representationRepresentation using this context Classjava.lang.StringString Primitive Classcharchar Nested ClassEntry (in java.util.Map)Entry Arrayjava.lang.String[]String[] Primitive Arraychar[]char[] Parameterizedjava.lang.List<java.lang.String>List<String> VariableT extends java.lang.StringT extends String TypeInfo.NONE(No standard representation)?
  • Method Summary

    Modifier and Type
    Method
    Description
    default void
    append(StringBuilder builder, TypeInfo type)
    Format a type and push the result to provided StringBuilder.
    default void
    append(StringBuilder builder, TypeInfo type, boolean declaring)
    Format a type and push the result to provided StringBuilder.
    default void
     
    default void
     
    default void
    appendVariable(StringBuilder builder, VariableTypeInfo type, boolean declaring)
     
     
    default String
     
  • Field Details

    • DEFAULT

      static final TypeFormatContext DEFAULT
      Full feature formatting context
      TypeFull representationRepresentation using this context
      Classjava.lang.Stringjava.lang.String
      Primitive Classcharchar
      Nested ClassEntry (in java.util.Map)java.util.Map$Entry
      Arrayjava.lang.String[]java.lang.String[]
      Primitive Arraychar[]char[]
      Parameterizedjava.lang.List<java.lang.String>java.util.List<java.lang.String>
      VariableT extends java.lang.StringT extends java.lang.String
      TypeInfo.NONE(No standard representation)?
    • SIMPLE

      static final TypeFormatContext SIMPLE
      Full feature formatting context with class name simplified
      TypeFull representationRepresentation using this context
      Classjava.lang.StringString
      Primitive Classcharchar
      Nested ClassEntry (in java.util.Map)Entry
      Arrayjava.lang.String[]String[]
      Primitive Arraychar[]char[]
      Parameterizedjava.lang.List<java.lang.String>List<String>
      VariableT extends java.lang.StringT extends String
      TypeInfo.NONE(No standard representation)?
      See Also:
    • CLASS_NAME

      static final TypeFormatContext CLASS_NAME
      Formatting context that formats every type as the result of type.asClass().getName()
      TypeFull representationRepresentation using this context
      Classjava.lang.Stringjava.lang.String
      Primitive Classcharchar
      Nested ClassEntry (in java.util.Map)java.util.Map$Entry
      Arrayjava.lang.String[][Ljava.lang.String;
      Primitive Arraychar[][C
      Parameterizedjava.lang.List<java.lang.String>java.util.List
      VariableT extends java.lang.Stringjava.lang.String
      TypeInfo.NONE(No standard representation)java.lang.Object
      See Also:
  • Method Details

    • getClassName

      String getClassName(Class<?> c)
    • append

      default void append(StringBuilder builder, TypeInfo type)
      Format a type and push the result to provided StringBuilder.

      Note that implementations are encouraged to override append(StringBuilder, TypeInfo, boolean) , instead of this method

      Parameters:
      builder - Formatted string of type will be pushed to this builder
      type - The type to be formatted
    • append

      default void append(StringBuilder builder, TypeInfo type, boolean declaring)
      Format a type and push the result to provided StringBuilder.
      Parameters:
      builder - Formatted string of type will be pushed to this builder
      type - The type to be formatted
      declaring - true if the context should format the result as if the type is being declared instead of being used. For example, in E extends Enum<T>, this param is true for the first E, and false for the second, nested E
    • appendArray

      default void appendArray(StringBuilder builder, TypeInfo type)
      Parameters:
      type - TypeInfo.isArray() will always be true for this object
    • appendParameterized

      default void appendParameterized(StringBuilder builder, ParameterizedTypeInfo type)
    • appendVariable

      default void appendVariable(StringBuilder builder, VariableTypeInfo type, boolean declaring)
      Parameters:
      declaring - true if the context should format the result as if the type is being declared instead of being used. For example, in E extends Enum<T>, declaring is true for the first E, and false for the second, nested E
    • getFormattedNone

      default String getFormattedNone()
      See Also: