|
A11 (C++ runtime)
Native C++ implementation of the A11 streaming action runtime
|
#include <cstddef>#include <optional>#include <string>#include <string_view>#include <vector>#include "a11/flow/catalogue.h"#include "a11/flow/diagnostic.h"#include "a11/flow/syntax.h"#include "a11/flow/vocabulary.h"Go to the source code of this file.
Classes | |
| struct | a11::flow::DocumentSymbol |
| One thing a document declares, and the things declared inside it. More... | |
| struct | a11::flow::Description |
| What is at one offset, described. More... | |
Namespaces | |
| namespace | a11 |
| namespace | a11::flow |
Enumerations | |
| enum class | a11::flow::SymbolClass { a11::flow::kFlow , a11::flow::kDto , a11::flow::kField , a11::flow::kPort , a11::flow::kHeader , a11::flow::kNodeMap , a11::flow::kNode , a11::flow::kCall , a11::flow::kBarrier , a11::flow::kVariable , a11::flow::kExternal } |
| Moving around a document: what is under the caret, what the file declares, and where a name was bound. More... | |
Functions | |
| std::string_view | a11::flow::SymbolClassName (SymbolClass kind) |
| std::vector< DocumentSymbol > | a11::flow::Symbols (std::string_view source) |
| Every symbol a document declares, nested as it is written. | |
| Description | a11::flow::Describe (std::string_view source, size_t offset, const catalogue::Catalogue &known=catalogue::Catalogue::Builtin()) |
What is at offset, and where it came from. | |
| std::string | a11::flow::ActionMarkdown (const catalogue::ActionInfo &action) |
| An action, written out as the Markdown a reader wants to see: what it does, then every port it has. | |
| std::string | a11::flow::PortMarkdown (std::string_view name, std::string_view type, bool required, bool unary, std::string_view description) |
| One port, written out as the Markdown a reader wants beside its name. | |
| std::string | a11::flow::FlowMarkdown (const FlowPlan &flow) |
| A flow of the document, written out the same way: what it does, then its ports and which direction each runs. | |
| std::string | a11::flow::ShapeMarkdown (const DtoPlan &shape) |
| A struct, written out the same way: how many fields, then each of them. | |
| std::string | a11::flow::WordMarkdown (std::string_view name, vocabulary::WordRole role) |
| One word or mark of the language, written out as reference: what it does, what it takes, how it behaves, and a line of Flow using it. | |
| std::string | a11::flow::StageMarkdown (std::string_view name) |
| A pipeline stage, written out as reference. | |
| std::string | a11::flow::BuiltinMarkdown (std::string_view name) |
| A built-in function, the same way. | |
Variables | |
| constexpr std::string_view | a11::flow::kSymbolsFormat = "flow.symbols/v1" |
The format field of the symbols envelope. | |
| constexpr std::string_view | a11::flow::kHoverFormat = "flow.hover/v1" |
The format field of the hover envelope. | |
| constexpr std::string_view | a11::flow::kDefinitionFormat = "flow.definition/v1" |
The format field of the definition envelope. | |