new Field(name, id, type, rule, extend, options)
Constructs a new message field instance. Note that map fields have their own class.
Name | Type | Default | Description |
---|---|---|---|
name |
string |
Unique name within its namespace |
|
id |
number |
Unique id within its namespace |
|
type |
string |
Value type |
|
rule |
string | Object.<string, *> | "optional" |
optional
Field rule |
extend |
string | Object.<string, *> |
optional
Extended type if different from parent |
|
options |
Object.<string, *> |
optional
Declared options |
Extends
Members
-
bytes { boolean }
-
Whether this field's value is a buffer.
-
comment { string | null }
-
Comment text, if any.
-
declaringField { Field | null }
-
Sister-field within the declaring namespace if an extended field.
-
defaultValue { * }
-
The field's default value on prototypes.
-
extend { string | undefined }
-
Extended type if different from parent.
-
extensionField { Field | null }
-
Sister-field within the extended type if a declaring extension field.
-
filename { string | null }
-
Defining file name.
-
fullName readonly{ string }
-
Full name including leading dot.
-
id { number }
-
Unique field id.
-
long { boolean }
-
Whether this field's value should be treated as a long.
-
map { boolean }
-
Whether this field is a map or not.
-
message { Type | null }
-
Message this field belongs to.
-
name { string }
-
Unique name within its namespace.
-
optional { boolean }
-
Whether this field is optional.
-
options { Object<string, *> | undefined }
-
Options.
-
packed readonly{ boolean }
-
Determines whether this field is packed. Only relevant when repeated and working with proto2.
-
parent { Namespace | null }
-
Parent namespace.
-
partOf { OneOf | null }
-
OneOf this field belongs to, if any,
-
repeated { boolean }
-
Whether this field is repeated.
-
required { boolean }
-
Whether this field is required.
-
resolved { boolean }
-
Whether already resolved or not.
-
Resolved type if not a basic type.
-
root readonly{ Root }
-
Reference to the root namespace.
-
rule { string | undefined }
-
Field rule, if any.
-
type { string }
-
Field type.
-
typeDefault { * }
-
The field type's default value.
Methods
-
Field.d(fieldId, fieldType, fieldRule, defaultValue){ FieldDecorator }
-
Field decorator (TypeScript).
Name Type Default Description fieldId
number Field id
fieldType
"double" | "float" | "int32" | "uint32" | "sint32" | "fixed32" | "sfixed32" | "int64" | "uint64" | "sint64" | "fixed64" | "sfixed64" | "string" | "bool" | "bytes" | Object Field type
fieldRule
"optional" | "required" | "repeated" "optional" optional Field rule
defaultValue
T optional Default value
Returns:
Type Description FieldDecorator Decorator function -
Field.d(2)(fieldId, fieldType, fieldRule){ FieldDecorator }
-
Field decorator (TypeScript).
Name Type Default Description fieldId
number Field id
fieldType
Constructor.<T> | string Field type
fieldRule
"optional" | "required" | "repeated" "optional" optional Field rule
Returns:
Type Description FieldDecorator Decorator function -
Field.fromJSON(name, json){ Field }
-
Constructs a field from a field descriptor.
Name Type Description name
string Field name
json
IField Field descriptor
Throws:
Type Description TypeError If arguments are invalid
Returns:
Type Description Field Created field -
inherited getOption(name){ * }
-
Gets an option value.
Name Type Description name
string Option name
Returns:
Type Description * Option value or undefined
if not set -
inherited onAdd(parent){ undefined }
-
Called when this object is added to a parent.
Name Type Description parent
ReflectionObject Parent added to
Returns:
Type Description undefined -
inherited onRemove(parent){ undefined }
-
Called when this object is removed from a parent.
Name Type Description parent
ReflectionObject Parent removed from
Returns:
Type Description undefined -
Resolves this field's type references.
Throws:
Type Description Error If any reference cannot be resolved
Returns:
Type Description Field this
-
inherited setOption(name, value, ifNotSet){ ReflectionObject }
-
Sets an option.
Name Type Description name
string Option name
value
* Option value
ifNotSet
boolean optional Sets the option only if it isn't currently set
Returns:
Type Description ReflectionObject this
-
inherited setOptions(options, ifNotSet){ ReflectionObject }
-
Sets multiple options.
Name Type Description options
Object.<string, *> Options to set
ifNotSet
boolean optional Sets an option only if it isn't currently set
Returns:
Type Description ReflectionObject this
-
Converts this field to a field descriptor.
Returns:
Type Description IField Field descriptor -
inherited toString(){ string }
-
Converts this instance to its string representation.
Returns:
Type Description string Class name[, space, full name]