com.twitter.scrooge.backend

Generator

trait 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

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. def genWireConstType(t: FunctionType): CodeFragment

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

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

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

  30. 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.

  31. def hashCode(): Int

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

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

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

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

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

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

  40. def isPrimitive(t: FunctionType): Boolean

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

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

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

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

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

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

  46. def quote(str: String): String

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

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

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

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

    Definition Classes
    AnyRef
  51. lazy val templates: HandlebarLoader

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

    Definition Classes
    ServiceTemplate
  53. def toString(): String

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

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

    Definition Classes
    AnyRef
    Annotations
    @throws()
  56. 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