xo-reader: simplify f64 token handling

This commit is contained in:
Roland Conybeare 2024-08-09 20:28:58 -04:00
commit b8b9efd633
7 changed files with 40 additions and 36 deletions

View file

@ -19,6 +19,10 @@ namespace xo {
static std::unique_ptr<expect_expr_xs> expect_rhs_expression();
virtual void on_f64_token(const token_type & tk,
exprstatestack * p_stack,
rp<Expression> * p_emit_expr) override;
private:
};

View file

@ -96,8 +96,10 @@ namespace xo {
virtual bool admits_leftparen() const;
/** truee iff this parsing state admits a rightparen ')' as next token **/
virtual bool admits_rightparen() const;
#ifdef OBSOLETE
/** true iff this parsing state admits a 64-bit floating point literal token **/
virtual bool admits_f64() const;
#endif
/** update exprstate in response to incoming token @p tk,
* forward instructions to parent parser

View file

@ -31,16 +31,14 @@ namespace xo {
static std::unique_ptr<paren_xs> lparen_0();
#ifdef OBSOLETE
virtual bool admits_definition() const override;
#endif
bool admits_f64() const;
virtual bool admits_symbol() const override;
virtual bool admits_colon() const override;
virtual bool admits_semicolon() const override;
virtual bool admits_singleassign() const override;
virtual bool admits_leftparen() const override;
virtual bool admits_rightparen() const override;
virtual bool admits_f64() const override;
virtual void on_expr(ref::brw<Expression> expr,
exprstatestack * p_stack,

View file

@ -22,16 +22,14 @@ namespace xo {
static std::unique_ptr<progress_xs> make(rp<Expression> valex);
#ifdef OBSOLETE
virtual bool admits_definition() const override;
#endif
bool admits_f64() const;
virtual bool admits_symbol() const override;
virtual bool admits_colon() const override;
virtual bool admits_semicolon() const override;
virtual bool admits_singleassign() const override;
virtual bool admits_leftparen() const override;
virtual bool admits_rightparen() const override;
virtual bool admits_f64() const override;
virtual void on_expr(ref::brw<Expression> expr,
exprstatestack * p_stack,