![]() |
Spicy
|
#include <switch.h>
Public Types | |
using | Cases = std::vector< std::pair< std::vector< Expression >, Production > > |
Public Member Functions | |
Switch (const std::string &symbol, Expression expr, Cases cases, std::optional< Production > default_, AttributeSet attributes, const Location &l=location::None) | |
const Expression & | expression () const |
const Cases & | cases () const |
const std::optional< Production > & | default_ () const |
const AttributeSet & | attributes () const |
std::vector< std::vector< Production > > | rhss () const |
std::optional< spicy::Type > | type () const |
bool | nullable () const |
bool | eodOk () const |
bool | atomic () const |
bool | supportsSynchronize () const |
std::string | render () const |
![]() | |
ProductionBase (std::string symbol, Location l=location::None) | |
bool | hasSize () const |
bool | maySynchronize () const |
const Location & | location () const |
const std::string & | symbol () const |
void | setSymbol (const std::string &s) |
std::optional< Expression > | filter () const |
void | setFilter (const Expression &filter) |
std::optional< Expression > | sink () const |
void | setSink (const Expression &sink) |
const production::Meta & | meta () const |
void | setMeta (production::Meta m) |
std::shared_ptr< production::Meta > | _metaInstance () const |
void | _setMetaInstance (std::shared_ptr< production::Meta > m) |
Production that decides between alternatives based on which value out of a set of options a given expression matches; plus an optional default if none matches.