pub enum GffType {
Show 18 variants
UInt8,
Int8,
UInt16,
Int16,
UInt32,
Int32,
UInt64,
Int64,
Single,
Double,
String,
ResRef,
LocalizedString,
Binary,
Struct,
List,
Vector4,
Vector3,
}Expand description
The GFF wire types a scalar can be.
Emitted from the one declaration in gff that also produces
the wire enum, the runtime value and the serde DTO.
Expected GFF field type, one variant per GffValue variant.
Both come from the same declaration, so every value has a type and no value has to be filed under a near-miss.
Variants§
UInt8
BYTE: unsigned 8-bit integer.
Int8
CHAR: signed 8-bit integer.
UInt16
WORD: unsigned 16-bit integer.
Int16
SHORT: signed 16-bit integer.
UInt32
DWORD: unsigned 32-bit integer.
Int32
INT: signed 32-bit integer.
UInt64
DWORD64: unsigned 64-bit integer.
Int64
INT64: signed 64-bit integer.
Single
FLOAT: 32-bit floating point.
Double
DOUBLE: 64-bit floating point.
String
CExoString: variable-length string.
ResRef
CResRef: resource reference, at most 16 bytes.
LocalizedString
CExoLocString: localized string with an optional TLK reference.
Binary
VOID: raw binary blob.
Struct
Struct: nested struct.
List
List: struct list.
Vector4
Quaternion: four packed f32, scalar first.
Vector3
Vector: three packed f32.
Implementations§
Source§impl GffType
impl GffType
Sourcepub const ALL: &'static [Self]
pub const ALL: &'static [Self]
Every wire type, in the order the format declares them.
Emitted from the same declaration as the variants, so a type added to the format appears here without anyone remembering to add it. A caller offering a user the choice of type reads this rather than writing its own list, which is the copy that would silently stop being all of them.