struct LayoutInvocation
Defined at line 307 of file ../../tools/fidl/fidlc/src/flat_ast.h
This is a struct used to group together all data produced during compilation
that might be used by consumers that are downstream from type compilation
(e.g. typeshape code, declaration sorting, JSON generator), that can't be
obtained by looking at a type constructor's Type.
Unlike TypeConstructor::Type which will always refer to the fully resolved/
concrete (and eventually, canonicalized) type that the type constructor
resolves to, this struct stores data about the actual parameters on this
type constructor used to produce the type.
These fields should be set in the same place where the parameters actually get
resolved, i.e. Create (for layout parameters) and ApplyConstraints (for type
constraints)
Public Members
const Alias * from_alias
const Type * element_type_resolved
const SizeValue * size_resolved
HandleSubtype subtype_resolved
const HandleRightsValue * rights_resolved
const Protocol * protocol_decl
const Type * boxed_type_resolved
const TypeConstructor * element_type_raw
const TypeConstructor * boxed_type_raw
const Constant * size_raw
const Constant * subtype_raw
const Constant * rights_raw
const Constant * protocol_decl_raw
Nullability nullability
bool utf8