A11 (C++ runtime)
Native C++ implementation of the A11 streaming action runtime
Loading...
Searching...
No Matches
syntax.cc File Reference
#include "a11/flow/syntax.h"
#include <algorithm>
#include <optional>
#include <string>
#include <string_view>
#include <utility>
#include <vector>
#include <absl/strings/str_cat.h>
#include <absl/strings/str_join.h>

Namespaces

namespace  a11
 
namespace  a11::flow
 
namespace  a11::flow::syntax
 

Functions

Location a11::flow::syntax::LocationOf (const Token &token)
 The location a token occupies.
 
std::string_view a11::flow::syntax::ConstantKindName (Constant::Kind kind)
 The spelling of a constant's kind in the output formats.
 
std::string_view a11::flow::syntax::NodeKindName (NodeKind kind)
 The name of a node kind in the output formats, in kebab case.
 
bool a11::flow::syntax::IsAnyOf (const Node *node, std::initializer_list< NodeKind > kinds)
 Whether a node is one of the kinds given.
 
std::string_view a11::flow::syntax::PortDirectionName (PortDirection direction)
 "inputs" or "outputs".
 
std::optional< Constant > a11::flow::syntax::ConstantValue (const Node *node)
 The constant node folds to, or nullopt where it is not one all the way down.
 
void a11::flow::syntax::VisitChildren (const Node &node, const std::function< void(const Node &)> &visit)
 Every node node directly holds, in the order they were written.
 
void a11::flow::syntax::VisitSubtree (const Node &node, const std::function< void(const Node &)> &visit)
 Every node of the subtree rooted at node, node itself included.
 
std::optional< std::string > a11::flow::syntax::DottedName (const Node *node)
 a11.sdk.AudioBuffer for a chain of plain names, or nullopt.