Spicy
Public Member Functions | List of all members
spicy::detail::codegen::production::Unit Class Reference

#include <unit.h>

Inheritance diagram for spicy::detail::codegen::production::Unit:
spicy::detail::codegen::ProductionBase spicy::trait::isNonTerminal spicy::trait::isProduction

Public Member Functions

 Unit (const std::string &symbol, type::Unit type, std::vector< Expression > args, std::vector< Production > fields, const Location &l=location::None)
 
const type::UnitunitType () const
 
const auto & arguments () const
 
const auto & fields () const
 
std::vector< std::vector< Production > > rhss () const
 
std::optional< spicy::Typetype () const
 
bool nullable () const
 
bool eodOk () const
 
bool atomic () const
 
bool supportsSynchronize () const
 
std::string render () const
 
- Public Member Functions inherited from spicy::detail::codegen::ProductionBase
 ProductionBase (std::string symbol, Location l=location::None)
 
bool hasSize () const
 
bool maySynchronize () const
 
const Locationlocation () 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::Metameta () const
 
void setMeta (production::Meta m)
 
std::shared_ptr< production::Meta_metaInstance () const
 
void _setMetaInstance (std::shared_ptr< production::Meta > m)
 

Detailed Description

A type described by another grammar from an independent type::Unit type.


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