valuesFromFields
Looks up the supplied fields in the given enum type. Uses only the field names, field values are ignored. The result array is in the same order as the input.
Function parameters
Parameters
- E:type
- fields:[]const EnumField
Functions in this namespace
Functions
- EnumFieldStruct
- Returns a struct with a field matching each unique named enum element.
- valuesFromFields
- Looks up the supplied fields in the given enum type.
- values
- Returns the set of all named values in the given enum, in
- tagName
- A safe alternative to @tagName() for non-exhaustive enums that doesn't
- directEnumArrayLen
- Determines the length of a direct-mapped enum array, indexed by
- directEnumArray
- Initializes an array of Data which can be indexed by
- directEnumArrayDefault
- Initializes an array of Data which can be indexed by
- nameCast
- Deprecated: Use @field(E, @tagName(tag)) or @field(E, string)
- EnumSet
- A set of enum elements, backed by a bitfield.
- EnumMap
- A map keyed by an enum, backed by a bitfield and a dense array.
- EnumMultiset
- A multiset of enum elements up to a count of usize.
- BoundedEnumMultiset
- A multiset of enum elements up to CountSize.
- EnumArray
- An array keyed by an enum, backed by a dense array.
Source
Implementation
pub inline fn valuesFromFields(comptime E: type, comptime fields: []const EnumField) []const E {
comptime {
var result: [fields.len]E = undefined;
for (&result, fields) |*r, f| {
r.* = @enumFromInt(f.value);
}
const final = result;
return &final;
}
}