If this field is optional, apply the expression in a foreach body to the ref, else apply it directly to the ref.
Present only if the type of a field is a custom type.
The pegasus data type of the field.
The pegasus data type of the field.
For the put and obtain methods in RecordTemplate (be it direct, wrapped or customType), this is the type that RecordTemplate expects for the "dataClass".
Is is possible for a type to be deprecated but have not deprecation message, so even if this is None, isDeprecated still might be true.
Is is possible for a type to be deprecated but have not deprecation message, so even if this is None, isDeprecated still might be true.
If the field type is enclosed in another type, the enclosing class.
If the field type is enclosed in another type, the enclosing class.
When generating classes, if the enclosing type is the current type being generated, then the type of this field should be generated as a subclass.
Custom property supported by Courier.
Custom property supported by Courier. If "explicit" is true for an optional value, it will not be defaulted to None in generated data bindings.
This is useful in Scala, because Scala supports default values on parameters, allowing defaults to be provided by the generator to record type "constructors" (apply methods really).
Escaped name for use in scala source.
Unescaped name.
Fields are aware of optionality, so the scalaType of a field type can be wrapped with Option[] if it is an optional field.
Fields are aware of optionality, so the fully qualified name of a field type can be wrapped with Option[] if it is an optional field.
The type definition of the field, may be any pegasus type (record, primitive, enum, union, .
The type definition of the field, may be any pegasus type (record, primitive, enum, union, ...).
If this field is optional, wrap the provided ref expression with Option(ref) and then map
the option with the provided f
function.
If this field is optional, wrap the provided expression with Option(expr), else return the expression.
The field of a record, may be either a field directly defined in the record or an "include" field.