ScalaCodegen

com.digitalasset.transcode.codegen.scala.ScalaCodegen
See theScalaCodegen companion object
class ScalaCodegen(config: Config) extends CodegenVisitor

Attributes

Companion
object
Graph
Supertypes
trait CodegenVisitor
trait SchemaVisitor
class Object
trait Matchable
class Any
Known subtypes
object ScalaCodegen

Members list

Type members

Types

type Context = Context

Inherited types

final type Result = Context ?=> Map[RelPath, String]

Final result type

Final result type

Attributes

Inherited from:
CodegenVisitor
final type Type = Context ?=> CodeUnit

Visitor handler type for various DAML schema cases.

Visitor handler type for various DAML schema cases.

Attributes

Inherited from:
CodegenVisitor

Value members

Concrete methods

def application(value: Type, typeParams: Seq[TypeVarName], args: Seq[Type]): Type

Type Application

Type Application

Attributes

def bool: Type

Boolean

Boolean

Attributes

def collect(entities: Seq[Template[Type]]): Result
def constructor(id: Identifier, typeParams: Seq[TypeVarName], value: => Type): Type

Wrap type into addressable DataType

Wrap type into addressable DataType

Attributes

def contractId(template: Type): Type

Contract ID, parametrized with the processor for corresponding template

Contract ID, parametrized with the processor for corresponding template

Attributes

override def createContext: Context

Attributes

Definition Classes
CodegenVisitor
def date: Type

Date

Date

Attributes

def enumeration(cases: Seq[EnumConName]): Type

ADT, Sum type - special case, where there are only named constructors without arguments

ADT, Sum type - special case, where there are only named constructors without arguments

Attributes

def genMap(key: Type, value: Type): Type

Map with keys and values of any type

Map with keys and values of any type

Attributes

def int64: Type

8-byte Integer

8-byte Integer

Attributes

def list(elem: Type): Type

Sequence of elements

Sequence of elements

Attributes

def numeric(scale: Int): Type

Numeric with scale

Numeric with scale

Attributes

def optional(elem: Type): Type

Optional element

Optional element

Attributes

def party: Type

Party

Party

Attributes

def record(fields: Seq[(FieldName, Type)]): Type

ADT, Product type

ADT, Product type

Attributes

def text: Type

Text

Text

Attributes

def textMap(value: Type): Type

Map with keys of String/Text type

Map with keys of String/Text type

Attributes

def timestamp: Type

Timestamp

Timestamp

Attributes

def unit: Type

Unit

Unit

Attributes

def variable(name: TypeVarName): Type

Type Variable.

Type Variable.

Codecs will use substitution, effectively replacing type variables with concrete types, while code generators will use type variable names.

Attributes

def variant(cases: Seq[(VariantConName, Type)]): Type

ADT, Sum type

ADT, Sum type

Attributes

Inherited methods

final protected def ctx(using ctx: Context): Context

Attributes

Inherited from:
CodegenVisitor