struct Decl

Defined at line 131 of file ../../tools/fidl/fidlc/src/flat_ast.h

Public Members

Kind kind
Name name
State state

Public Methods

Element::Kind ElementKind (Kind kind)

Defined at line 148 of file ../../tools/fidl/fidlc/src/flat_ast.h

void Decl (Kind kind, std::unique_ptr<AttributeList> attributes, Name name)

Defined at line 179 of file ../../tools/fidl/fidlc/src/flat_ast.h

void ForEachMember (const fit::function<void (Element *)> & fn)

Runs a function on every member of the decl, if it has any.

void ForEachEdge (const fit::function<void (Element *, Element *)> & fn)

Calls fn(this, modifier) for all modifiers, fn(this, member) for all

members, and fn(member, modifier) for all members that have modifiers.

std::unique_ptr<Decl> Split (VersionRange range)

Returns a clone of this decl for the given range, only including members

that intersect the range. Narrows the returned decl's availability, and its

members' availabilities, to the range.

Enumerations

enum Kind
Name Value
kAlias 0
kBits 1
kBuiltin 2
kConst 3
kEnum 4
kNewType 5
kOverlay 6
kProtocol 7
kResource 8
kService 9
kStruct 10
kTable 11
kUnion 12

Defined at line 132 of file ../../tools/fidl/fidlc/src/flat_ast.h

enum State
Name Value
kNotCompiled 0
kCompiling 1
kCompiled 2

Defined at line 197 of file ../../tools/fidl/fidlc/src/flat_ast.h