com.twitter.scrooge.backend

Generator

abstract class Generator extends StructTemplate with ServiceTemplate with ConstsTemplate with EnumTemplate

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

Instance Constructors

  1. new Generator()

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

  2. abstract val enablePassthrough: Boolean

  3. abstract val fileExtension: String

  4. abstract def genBaseFinagleService: CodeFragment

  5. abstract def genEnum(enum: EnumRHS): CodeFragment

  6. abstract def genFieldParams(fields: Seq[Field], asVal: Boolean = false): CodeFragment

  7. abstract def genFieldType(f: Field, mutable: Boolean = false): CodeFragment

  8. abstract def genList(list: ListRHS, mutable: Boolean = false): CodeFragment

  9. abstract def genMap(map: MapRHS, mutable: Boolean = false): CodeFragment

  10. abstract def genPrimitiveType(t: FunctionType, mutable: Boolean = false): CodeFragment

  11. abstract def genSet(set: SetRHS, mutable: Boolean = false): CodeFragment

  12. abstract def genToImmutable(f: Field): CodeFragment

    Generates a suffix to append to a field expression that will convert the value to an immutable equivalent.

  13. abstract def genToImmutable(t: FieldType): CodeFragment

    Generates a suffix to append to a field expression that will convert the value to an immutable equivalent.

  14. abstract def genType(t: FunctionType, mutable: Boolean = false): CodeFragment

  15. abstract val generationDate: String

  16. abstract val includeMap: Map[String, ResolvedDocument]

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

  17. abstract def normalizeCase[N <: Node](node: N): N

  18. abstract def quoteKeyword(str: String): String

  19. abstract val templateDirName: String

  20. abstract def toMutable(f: Field): (String, String)

    Generates a prefix and suffix to wrap around a field expression that will convert the value to a mutable equivalent.

  21. abstract def toMutable(t: FieldType): (String, String)

    Generates a prefix and suffix to wrap around a field expression that will convert the value to a mutable equivalent.

Concrete 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(_doc: Document, serviceOptions: Set[ServiceOption], outputPath: File, dryRun: Boolean = false): Iterable[File]

  8. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  9. def clone(): AnyRef

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

    Definition Classes
    ConstsTemplate
  11. def enumDict(namespace: Identifier, enum: Enum): Dictionary

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

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

    Definition Classes
    AnyRef → Any
  14. def fieldsToDict(fields: Seq[Field], blacklist: Seq[String]): Seq[Dictionary]

    Definition Classes
    StructTemplate
  15. def finagleClient(s: Service): Dictionary

    Definition Classes
    ServiceTemplate
  16. def finagleService(s: Service): Dictionary

    Definition Classes
    ServiceTemplate
  17. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
  18. def genConstType(t: FunctionType): CodeFragment

  19. def genConstant(constant: RHS, mutable: Boolean = false): CodeFragment

  20. def genDefaultFieldValue(f: Field): Option[CodeFragment]

  21. def genDefaultReadValue(f: Field): CodeFragment

  22. def genDefaultValue(fieldType: FieldType, mutable: Boolean = false): CodeFragment

    The default value for the specified type and mutability.

  23. def genID(data: Identifier): CodeFragment

  24. def genProtocolReadMethod(t: FunctionType): CodeFragment

  25. def genProtocolWriteMethod(t: FunctionType): CodeFragment

  26. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  27. def getIncludeNamespace(includeFileName: String): Identifier

    Attributes
    protected
  28. def getNamespace(doc: Document): Identifier

  29. def getServiceParentID(parent: ServiceParent): Identifier

    get the ID of a service parent.

    get the ID of a service parent. Java and Scala implementations are different.

  30. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  31. def internalArgsStruct(f: Function): FunctionArgs

    Definition Classes
    ServiceTemplate
  32. def internalArgsStructName(f: Function): SimpleID

    Definition Classes
    ServiceTemplate
  33. 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
  34. def internalResultStruct(f: Function): FunctionResult

    Definition Classes
    ServiceTemplate
  35. def internalResultStructName(f: Function): SimpleID

    Definition Classes
    ServiceTemplate
  36. def internalResultStructNameForWire(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
  37. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  38. def isNullableType(t: FieldType, isOptional: Boolean = false): Boolean

  39. def isPrimitive(t: FunctionType): Boolean

  40. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  41. final def notify(): Unit

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

    Definition Classes
    AnyRef
  43. def ostrichService(s: Service): Dictionary

    Definition Classes
    ServiceTemplate
  44. def qualifyNamedType(t: NamedType): Identifier

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

  45. def quote(str: String): String

  46. def readWriteInfo[T <: FieldType](sid: SimpleID, t: FieldType): Dictionary

    Definition Classes
    StructTemplate
  47. def serviceDict(s: JavaService, namespace: Identifier, includes: Seq[Include], serviceOptions: Set[ServiceOption]): Dictionary

    Definition Classes
    ServiceTemplate
  48. def structDict(struct: StructLike, namespace: Option[Identifier], includes: Seq[Include], serviceOptions: Set[ServiceOption]): Dictionary

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

    Definition Classes
    AnyRef
  50. lazy val templates: HandlebarLoader

  51. def toDictionary(function: Function, async: Boolean): Dictionary

    Definition Classes
    ServiceTemplate
  52. def toString(): String

    Definition Classes
    AnyRef → Any
  53. final def wait(): Unit

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

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

    Definition Classes
    AnyRef
    Annotations
    @throws()

Inherited from EnumTemplate

Inherited from ConstsTemplate

Inherited from ServiceTemplate

Inherited from StructTemplate

Inherited from AnyRef

Inherited from Any

Ungrouped