abstract class TemplateGenerator extends Generator with StructTemplate with ServiceTemplate with ConstsTemplate with EnumTemplate

Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. TemplateGenerator
  2. EnumTemplate
  3. ConstsTemplate
  4. ServiceTemplate
  5. StructTemplate
  6. Generator
  7. AnyRef
  8. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new TemplateGenerator(resolvedDoc: ResolvedDocument)

Type Members

  1. case class Binding[FT <: FieldType](name: String, fieldType: FT) extends Product with Serializable
    Definition Classes
    StructTemplate

Abstract Value Members

  1. abstract val defaultNamespace: String

    Map from included file names to the namespaces defined in those files.

  2. abstract def fileExtension: String
  3. abstract def genBaseFinagleService: CodeFragment
  4. abstract def genEnum(enum: EnumRHS, fieldType: Option[FieldType] = None): CodeFragment
  5. abstract def genFieldParams(fields: Seq[Field], asVal: Boolean = false): CodeFragment
  6. abstract def genFieldType(f: Field): CodeFragment
  7. abstract def genList(list: ListRHS, fieldType: Option[FieldType] = None): CodeFragment
  8. abstract def genMap(map: MapRHS, fieldType: Option[FieldType] = None): CodeFragment
  9. abstract def genPrimitiveType(t: FunctionType): CodeFragment
  10. abstract def genSet(set: SetRHS, fieldType: Option[FieldType] = None): CodeFragment
  11. abstract def genStruct(struct: StructRHS, fieldType: Option[FieldType] = None): CodeFragment
  12. abstract def genType(t: FunctionType, immutable: Boolean = false): CodeFragment
  13. abstract def genUnion(union: UnionRHS, fieldType: Option[FieldType] = None): CodeFragment
  14. abstract def getParentFinagleClient(parent: ServiceParent): CodeFragment
  15. abstract def getParentFinagleService(parent: ServiceParent): CodeFragment
  16. abstract val languageFlags: Seq[String]
  17. abstract def namespaceLanguage: String

    Used to find the namespace in included files.

    Used to find the namespace in included files. This does not need to match the corresponding GeneratorFactory.language.

    Definition Classes
    Generator
  18. abstract def quoteKeyword(str: String): String
  19. abstract def templates: HandlebarLoader

Concrete Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. val TypeTemplate: Dictionary
    Definition Classes
    StructTemplate
  5. def apply(serviceOptions: Set[ServiceOption], outputPath: File, dryRun: Boolean = false, genAdapt: Boolean = false): Iterable[File]

    genAdapt

    Generate code for Adaptive Decoding. This flag is only used for scala presently.

    Definition Classes
    TemplateGeneratorGenerator
  6. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  7. val basePassthrough: Dictionary
    Definition Classes
    StructTemplate
  8. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native()
  9. def constDict(namespace: Identifier, consts: Seq[ConstDefinition]): Dictionary
    Definition Classes
    ConstsTemplate
  10. def enumDict(namespace: Identifier, enum: Enum): Dictionary
    Definition Classes
    EnumTemplate
  11. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  12. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  13. def fieldsToDict(fields: Seq[Field], blacklist: Seq[String], namespace: Option[Identifier] = None): Seq[Dictionary]
    Definition Classes
    StructTemplate
  14. def finagleClient(service: Service, namespace: Identifier, withAsClosable: Boolean): Dictionary
    Definition Classes
    ServiceTemplate
  15. def finagleClientFile(packageDir: File, service: Service, options: Set[ServiceOption]): Option[File]
  16. def finagleService(service: Service, namespace: Identifier): Dictionary
    Definition Classes
    ServiceTemplate
  17. def finagleServiceFile(packageDir: File, service: Service, options: Set[ServiceOption]): Option[File]
  18. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable])
  19. def functionArgsStruct(f: Function): FunctionArgs
    Definition Classes
    ServiceTemplate
  20. def functionDictionary(function: Function, generic: Option[String]): Dictionary
    Definition Classes
    ServiceTemplate
  21. def functionObjectName(f: Function): SimpleID
    Definition Classes
    ServiceTemplate
  22. def genConstType(t: FunctionType): CodeFragment
  23. def genConstant(constant: RHS, fieldType: Option[FieldType] = None): CodeFragment
  24. def genDecodeProtocolMethod(t: FunctionType): CodeFragment
  25. def genDefaultFieldValue(f: Field, forAlternateConstructor: Boolean = false): Option[CodeFragment]

    Creates a code fragment for the default value of the field.

    Creates a code fragment for the default value of the field.

    f

    field to generate the default value for.

    forAlternateConstructor

    Whether this is for the alternate Immutable constructor which does not take an Option for construction required fields.

  26. def genDefaultFieldValueForFieldInfo(f: Field): Option[CodeFragment]
  27. def genDefaultReadValue(f: Field): CodeFragment
  28. def genDefaultValue(fieldType: FieldType): CodeFragment

    The default value for the specified type and mutability.

  29. def genID(data: Identifier): CodeFragment
  30. def genOffsetSkipProtocolMethod(t: FunctionType): CodeFragment
  31. def genProtocolReadMethod(t: FunctionType): CodeFragment
  32. def genProtocolSkipMethod(t: FunctionType): CodeFragment
  33. def genProtocolWriteMethod(t: FunctionType): CodeFragment
  34. def genQualifiedID(id: Identifier, namespace: Identifier): CodeFragment
  35. def genUnsafeEmptyReadValue(f: Field): CodeFragment
  36. def genUnsafeEmptyValue(fieldType: FieldType): CodeFragment

    The default value for the unsafe empty value case.

    The default value for the unsafe empty value case. These predefined values will be used to create field blob. For String, null is not valid value for required field.

  37. def genWireConstType(t: FunctionType): CodeFragment
    Definition Classes
    StructTemplate
  38. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  39. def getExceptionFields(result: FunctionResult): CodeFragment
    Definition Classes
    StructTemplate
  40. def getIncludeNamespace(includeFileName: String): Identifier
    Attributes
    protected
  41. def getNamespace(doc: Document): Identifier
  42. def getServiceParentID(parent: ServiceParent): Identifier
  43. def getSuccessType(result: FunctionResult): CodeFragment
    Definition Classes
    StructTemplate
  44. def getSuccessValue(result: FunctionResult): CodeFragment
    Definition Classes
    StructTemplate
  45. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  46. def includeMap: Map[String, ResolvedDocument]
    Definition Classes
    Generator
  47. def internalArgsStructNameForWire(f: Function): String

    The name used in RPC request, this needs to be same as Apache compiler

    The name used in RPC request, this needs to be same as Apache compiler

    Definition Classes
    ServiceTemplate
  48. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  49. def isLazyReadEnabled(t: FunctionType, optional: Boolean): Boolean
  50. def isNullableType(t: FieldType, isOptional: Boolean = false): Boolean
  51. def isPrimitive(t: FunctionType): Boolean
  52. def namespacedFolder(destFolder: File, namespace: String, dryRun: Boolean): File

    ****************** helper functions ***********************

    ****************** helper functions ***********************

    Attributes
    protected
  53. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  54. def normalizeCase[N <: Node](node: N): N
  55. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  56. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  57. def productN(fields: Seq[Field], namespace: Option[Identifier]): String

    Returns a String "_root_.scala.Product${N}[Type1, Type2, ...]" or "scala.Product".

  58. def qualifyNamedType(t: NamedType, namespace: Option[Identifier] = None): Identifier

    When a named type is imported via include statement, we need to qualify it using its full namespace

  59. def quote(str: String): String
  60. def readWriteInfo[T <: FieldType](sid: SimpleID, t: FieldType): Dictionary
    Definition Classes
    StructTemplate
  61. val resolvedDoc: ResolvedDocument
  62. def resultStruct(f: Function): FunctionResult

    Thrift Result struct that includes success or exceptions returned.

    Thrift Result struct that includes success or exceptions returned.

    Definition Classes
    ServiceTemplate
  63. def serviceDict(service: Service, namespace: Identifier, includes: Seq[Include], options: Set[ServiceOption], genAdapt: Boolean): Dictionary
    Definition Classes
    ServiceTemplate
  64. def structDict(struct: StructLike, namespace: Option[Identifier], includes: Seq[Include], serviceOptions: Set[ServiceOption], genAdapt: Boolean, toplevel: Boolean = false): Dictionary
    Definition Classes
    StructTemplate
  65. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  66. def toString(): String
    Definition Classes
    AnyRef → Any
  67. def tupleN(fields: Seq[Field], namespace: Option[Identifier]): String

    Returns a String "_root_.scala.Tuple${N}[Type1, Type2, ...]"

  68. def unwrapArgs(arity: Int): String
    Definition Classes
    ServiceTemplate
  69. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  70. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  71. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  72. def writeFile(file: File, fileHeader: String, fileContent: String): Unit
    Attributes
    protected

Inherited from EnumTemplate

Inherited from ConstsTemplate

Inherited from ServiceTemplate

Inherited from StructTemplate

Inherited from Generator

Inherited from AnyRef

Inherited from Any

Ungrouped