xo-reader2: DefineSsm: respond to = token
This commit is contained in:
parent
a3f5b12955
commit
c60aeda12a
8 changed files with 105 additions and 4 deletions
|
|
@ -98,6 +98,13 @@ namespace xo {
|
|||
obj<AAllocator> expr_mm,
|
||||
ParserStateMachine * p_psm);
|
||||
|
||||
///@}
|
||||
/** @defgroup scm-definessm-access-methods **/
|
||||
///@{
|
||||
|
||||
/** identify define-expression state **/
|
||||
defexprstatetype defstate() const noexcept { return defstate_; }
|
||||
|
||||
///@}
|
||||
/** @defgroup scm-define-ssm-facet syntaxstatemachine facet methods **/
|
||||
///@{
|
||||
|
|
|
|||
|
|
@ -54,6 +54,9 @@ namespace xo {
|
|||
/** true iff state machine currently has incomplete expression **/
|
||||
bool has_incomplete_expr() const noexcept;
|
||||
|
||||
/** top of parser stack **/
|
||||
obj<ASyntaxStateMachine> top_ssm() const;
|
||||
|
||||
///@}
|
||||
|
||||
/** @defgroup scm-parserstatemachine-bookkeeping bookkeeping methods **/
|
||||
|
|
|
|||
|
|
@ -172,6 +172,9 @@ namespace xo {
|
|||
obj<AAllocator> expr_alloc,
|
||||
bool debug_flag);
|
||||
|
||||
/** scm-schematikaparser-access-methods **/
|
||||
///@{
|
||||
|
||||
bool debug_flag() const { return debug_flag_; }
|
||||
|
||||
/** true if parser is at top-level,
|
||||
|
|
@ -185,6 +188,13 @@ namespace xo {
|
|||
**/
|
||||
bool has_incomplete_expr() const;
|
||||
|
||||
/** top of parser stack **/
|
||||
obj<ASyntaxStateMachine> top_ssm() const;
|
||||
|
||||
///@}
|
||||
/** scm-schematikaparser-general-methods **/
|
||||
///@{
|
||||
|
||||
/** put parser into state for beginning an interactive session.
|
||||
**/
|
||||
void begin_interactive_session();
|
||||
|
|
@ -215,11 +225,17 @@ namespace xo {
|
|||
**/
|
||||
void reset_to_idle_toplevel();
|
||||
|
||||
///@}
|
||||
/** scm-schematikaparser-pretty-methods **/
|
||||
///@{
|
||||
|
||||
/** print human-readable representation on stream @p os **/
|
||||
void print(std::ostream & os) const;
|
||||
/** pretty-printer support **/
|
||||
bool pretty(const ppindentinfo & ppii) const;
|
||||
|
||||
///@}
|
||||
|
||||
private:
|
||||
/** state machine **/
|
||||
ParserStateMachine psm_;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue