A11 (C++ runtime)
Native C++ implementation of the A11 streaming action runtime
Loading...
Searching...
No Matches
a11::flow::syntax::FieldDeclaration Struct Reference

One name: type [modifiers] ["description"] field of a struct. More...

#include <cpp/a11/flow/syntax.h>

Inheritance diagram for a11::flow::syntax::FieldDeclaration:
[legend]

Public Attributes

Word name
 
TypeExpression type
 
bool required = false
 Whether a value has to be given.
 
bool unique = false
 unique: no two items of a list are equal.
 
FieldRange range
 
std::string pattern
 matching "...": the pattern every value has to match, unanchored, as JSONSchema's pattern is.
 
bool has_pattern = false
 
std::vector< Constant > enumeration
 one of [..]: the only values allowed.
 
bool has_enumeration = false
 
Constant default_value
 default ..: what a value that was not given is.
 
bool has_default = false
 
std::string description
 
- Public Attributes inherited from a11::flow::syntax::Node
NodeKind kind = NodeKind::kError
 
Location location
 

Additional Inherited Members

- Public Member Functions inherited from a11::flow::syntax::NodeOf< NodeKind::kFieldDeclaration >
 NodeOf ()
 
- Public Member Functions inherited from a11::flow::syntax::Node
virtual ~Node ()=default
 
- Static Public Attributes inherited from a11::flow::syntax::NodeOf< NodeKind::kFieldDeclaration >
static constexpr NodeKind kNodeKind
 

Detailed Description

One name: type [modifiers] ["description"] field of a struct.

Member Data Documentation

◆ default_value

Constant a11::flow::syntax::FieldDeclaration::default_value

default ..: what a value that was not given is.

◆ description

std::string a11::flow::syntax::FieldDeclaration::description

◆ enumeration

std::vector<Constant> a11::flow::syntax::FieldDeclaration::enumeration

one of [..]: the only values allowed.

◆ has_default

bool a11::flow::syntax::FieldDeclaration::has_default = false

◆ has_enumeration

bool a11::flow::syntax::FieldDeclaration::has_enumeration = false

◆ has_pattern

bool a11::flow::syntax::FieldDeclaration::has_pattern = false

◆ name

Word a11::flow::syntax::FieldDeclaration::name

◆ pattern

std::string a11::flow::syntax::FieldDeclaration::pattern

matching "...": the pattern every value has to match, unanchored, as JSONSchema's pattern is.

◆ range

FieldRange a11::flow::syntax::FieldDeclaration::range

◆ required

bool a11::flow::syntax::FieldDeclaration::required = false

Whether a value has to be given.

A field that is not required and has no default is simply absent when it was not sent.

◆ type

TypeExpression a11::flow::syntax::FieldDeclaration::type

◆ unique

bool a11::flow::syntax::FieldDeclaration::unique = false

unique: no two items of a list are equal.


The documentation for this struct was generated from the following file: