com.twitter.scrooge.backend

ScalaGenerator

class ScalaGenerator extends TemplateGenerator

Linear Supertypes
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. ScalaGenerator
  2. TemplateGenerator
  3. EnumTemplate
  4. ConstsTemplate
  5. ServiceTemplate
  6. StructTemplate
  7. Generator
  8. AnyRef
  9. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Instance Constructors

  1. new ScalaGenerator(resolvedDoc: ResolvedDocument, defaultNamespace: String, languageFlags: Seq[String], templatesLoader: HandlebarLoader)

Type Members

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

    Definition Classes
    StructTemplate

Value Members

  1. final def !=(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  2. final def !=(arg0: Any): Boolean

    Definition Classes
    Any
  3. final def ##(): Int

    Definition Classes
    AnyRef → Any
  4. final def ==(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  5. final def ==(arg0: Any): Boolean

    Definition Classes
    Any
  6. val TypeTemplate: Dictionary

    Definition Classes
    StructTemplate
  7. 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
  8. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  9. val basePassthrough: Dictionary

    Definition Classes
    StructTemplate
  10. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  11. def constDict(namespace: Identifier, consts: Seq[ConstDefinition]): Dictionary

    Definition Classes
    ConstsTemplate
  12. val defaultNamespace: String

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

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

    Definition Classes
    ScalaGeneratorTemplateGenerator
  13. def enumDict(namespace: Identifier, enum: Enum): Dictionary

    Definition Classes
    EnumTemplate
  14. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  15. def equals(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  16. def fieldsToDict(fields: Seq[Field], blacklist: Seq[String], namespace: Option[Identifier] = None): Seq[Dictionary]

    Definition Classes
    StructTemplate
  17. val fileExtension: String

    Definition Classes
    ScalaGeneratorTemplateGenerator
  18. def finagleClient(service: Service, namespace: Identifier, withAsClosable: Boolean): Dictionary

    Definition Classes
    ServiceTemplate
  19. def finagleClientFile(packageDir: File, service: Service, options: Set[ServiceOption]): Option[File]

    Definition Classes
    ScalaGeneratorTemplateGenerator
  20. def finagleService(service: Service, namespace: Identifier): Dictionary

    Definition Classes
    ServiceTemplate
  21. def finagleServiceFile(packageDir: File, service: Service, options: Set[ServiceOption]): Option[File]

    Definition Classes
    ScalaGeneratorTemplateGenerator
  22. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  23. def functionArgsStruct(f: Function): FunctionArgs

    Definition Classes
    ServiceTemplate
  24. def functionDictionary(function: Function, generic: Option[String]): Dictionary

    Definition Classes
    ServiceTemplate
  25. def functionObjectName(f: Function): SimpleID

    Definition Classes
    ServiceTemplate
  26. def genBaseFinagleService: CodeFragment

    Definition Classes
    ScalaGeneratorTemplateGenerator
  27. def genConstType(t: FunctionType): CodeFragment

    Definition Classes
    TemplateGenerator
  28. def genConstant(constant: RHS, fieldType: Option[FieldType] = None): CodeFragment

    Definition Classes
    ScalaGeneratorTemplateGenerator
  29. def genDecodeProtocolMethod(t: FunctionType): CodeFragment

    Definition Classes
    TemplateGenerator
  30. 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.

    Definition Classes
    TemplateGenerator
  31. def genDefaultFieldValueForFieldInfo(f: Field): Option[CodeFragment]

    Definition Classes
    TemplateGenerator
  32. def genDefaultReadValue(f: Field): CodeFragment

    Definition Classes
    TemplateGenerator
  33. def genDefaultValue(fieldType: FieldType): CodeFragment

    The default value for the specified type and mutability.

    The default value for the specified type and mutability.

    Definition Classes
    ScalaGeneratorTemplateGenerator
  34. def genEnum(enum: EnumRHS, fieldType: Option[FieldType] = None): CodeFragment

    Definition Classes
    ScalaGeneratorTemplateGenerator
  35. def genFieldParams(fields: Seq[Field], asVal: Boolean = false): CodeFragment

    Definition Classes
    ScalaGeneratorTemplateGenerator
  36. def genFieldType(f: Field): CodeFragment

    Definition Classes
    ScalaGeneratorTemplateGenerator
  37. def genID(data: Identifier): CodeFragment

    Definition Classes
    TemplateGenerator
  38. def genList(list: ListRHS, fieldType: Option[FieldType] = None): CodeFragment

    Definition Classes
    ScalaGeneratorTemplateGenerator
  39. def genMap(map: MapRHS, fieldType: Option[FieldType] = None): CodeFragment

    Definition Classes
    ScalaGeneratorTemplateGenerator
  40. def genOffsetSkipProtocolMethod(t: FunctionType): CodeFragment

    Definition Classes
    TemplateGenerator
  41. def genPrimitiveType(t: FunctionType): CodeFragment

    Definition Classes
    ScalaGeneratorTemplateGenerator
  42. def genProtocolReadMethod(t: FunctionType): CodeFragment

    Definition Classes
    TemplateGenerator
  43. def genProtocolSkipMethod(t: FunctionType): CodeFragment

    Definition Classes
    TemplateGenerator
  44. def genProtocolWriteMethod(t: FunctionType): CodeFragment

    Definition Classes
    TemplateGenerator
  45. def genQualifiedID(id: Identifier, namespace: Identifier): CodeFragment

    Definition Classes
    TemplateGenerator
  46. def genSet(set: SetRHS, fieldType: Option[FieldType] = None): CodeFragment

    Definition Classes
    ScalaGeneratorTemplateGenerator
  47. def genStruct(struct: StructRHS, fieldType: Option[FieldType] = None): CodeFragment

    Definition Classes
    ScalaGeneratorTemplateGenerator
  48. def genType(t: FunctionType, immutable: Boolean = false): CodeFragment

    Definition Classes
    ScalaGeneratorTemplateGenerator
  49. def genUnion(union: UnionRHS, fieldType: Option[FieldType] = None): CodeFragment

    Definition Classes
    ScalaGeneratorTemplateGenerator
  50. def genUnsafeEmptyReadValue(f: Field): CodeFragment

    Definition Classes
    TemplateGenerator
  51. 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.

    Definition Classes
    TemplateGenerator
  52. def genWireConstType(t: FunctionType): CodeFragment

    Definition Classes
    StructTemplate
  53. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  54. def getExceptionFields(result: FunctionResult): CodeFragment

    Definition Classes
    StructTemplate
  55. def getIncludeNamespace(includeFileName: String): Identifier

    Attributes
    protected
    Definition Classes
    ScalaGeneratorTemplateGenerator
  56. def getNamespace(doc: Document): Identifier

    Definition Classes
    ScalaGeneratorTemplateGenerator
  57. def getParentFinagleClient(p: ServiceParent): CodeFragment

    Definition Classes
    ScalaGeneratorTemplateGenerator
  58. def getParentFinagleService(p: ServiceParent): CodeFragment

    Definition Classes
    ScalaGeneratorTemplateGenerator
  59. def getServiceParentID(parent: ServiceParent): Identifier

    Definition Classes
    TemplateGenerator
  60. def getSuccessType(result: FunctionResult): CodeFragment

    Definition Classes
    StructTemplate
  61. def getSuccessValue(result: FunctionResult): CodeFragment

    Definition Classes
    StructTemplate
  62. def getValidator(doc: Document): Option[Identifier]

    Definition Classes
    TemplateGenerator
  63. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  64. def includeMap: Map[String, ResolvedDocument]

    Definition Classes
    Generator
  65. 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
  66. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  67. def isLazyReadEnabled(t: FunctionType, optional: Boolean): Boolean

    Definition Classes
    TemplateGenerator
  68. def isNullValid(f: Field): Boolean

    Definition Classes
    TemplateGenerator
  69. def isNullableType(f: Field): Boolean

    Definition Classes
    TemplateGenerator
  70. def isPrimitive(t: FunctionType): Boolean

    Definition Classes
    TemplateGenerator
  71. val languageFlags: Seq[String]

    Definition Classes
    ScalaGeneratorTemplateGenerator
  72. val 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
    ScalaGeneratorGenerator
  73. def namespacedFolder(destFolder: File, namespace: String, dryRun: Boolean): File

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

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

    Attributes
    protected
    Definition Classes
    TemplateGenerator
  74. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  75. def normalizeCase[N <: Node](node: N): N

    Definition Classes
    TemplateGenerator
  76. final def notify(): Unit

    Definition Classes
    AnyRef
  77. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  78. def productN(fields: Seq[Field], namespace: Option[Identifier]): String

    Returns a String "_root_.

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

    Definition Classes
    TemplateGenerator
  79. 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

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

    Definition Classes
    TemplateGenerator
  80. def quote(str: String): String

    Definition Classes
    TemplateGenerator
  81. def quoteKeyword(str: String): String

    Definition Classes
    ScalaGeneratorTemplateGenerator
  82. def readWriteInfo[T <: FieldType](sid: SimpleID, t: FieldType): Dictionary

    Definition Classes
    StructTemplate
  83. val resolvedDoc: ResolvedDocument

    Definition Classes
    ScalaGeneratorTemplateGenerator
  84. 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
  85. def serviceDict(service: Service, namespace: Identifier, includes: Seq[Include], options: Set[ServiceOption], genAdapt: Boolean): Dictionary

    Definition Classes
    ServiceTemplate
  86. def structDict(struct: StructLike, namespace: Option[Identifier], includes: Seq[Include], serviceOptions: Set[ServiceOption], genAdapt: Boolean, toplevel: Boolean = false, validator: Option[Identifier] = None): Dictionary

    Definition Classes
    StructTemplate
  87. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  88. def templates: HandlebarLoader

    Definition Classes
    ScalaGeneratorTemplateGenerator
  89. val templatesLoader: HandlebarLoader

  90. def toString(): String

    Definition Classes
    AnyRef → Any
  91. def tupleN(fields: Seq[Field], namespace: Option[Identifier]): String

    Returns a String "_root_.

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

    Definition Classes
    TemplateGenerator
  92. def unwrapArgs(arity: Int): String

    Definition Classes
    ServiceTemplate
  93. def validateStructAnnotations(structs: Seq[StructLike]): Unit

    Attributes
    protected
    Definition Classes
    Generator
  94. final def wait(): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  95. final def wait(arg0: Long, arg1: Int): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  96. final def wait(arg0: Long): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  97. var warnOnJavaNamespaceFallback: Boolean

  98. def writeFile(file: File, fileHeader: String, fileContent: String): Unit

    Attributes
    protected
    Definition Classes
    TemplateGenerator

Inherited from TemplateGenerator

Inherited from EnumTemplate

Inherited from ConstsTemplate

Inherited from ServiceTemplate

Inherited from StructTemplate

Inherited from Generator

Inherited from AnyRef

Inherited from Any

Ungrouped