Lines Matching refs:AST

125 /// Base class representing the AST of a given expression.
138 /// AST or an error if evaluation fails.
141 /// \returns either the implicit format of this AST, a diagnostic against
142 /// \p SM if implicit formats of the AST's components conflict, or NoFormat
143 /// if the AST has no implicit format (e.g. AST is made up of a single
151 /// Class representing an unsigned literal in the AST of an expression.
191 /// Pointer to AST of the expression.
192 std::unique_ptr<ExpressionAST> AST;
198 /// Generic constructor for an expression represented by the given \p AST and
200 Expression(std::unique_ptr<ExpressionAST> AST, ExpressionFormat Format)
201 : AST(std::move(AST)), Format(Format) {}
203 /// \returns pointer to AST of the expression. Pointer is guaranteed to be
205 ExpressionAST *getAST() const { return AST.get(); }
278 /// Class representing the use of a numeric variable in the AST of an
301 /// Class representing a single binary operation in the AST of an expression.
322 /// Evaluates the value of the binary operation represented by this AST,
328 /// \returns the implicit format of this AST, if any, a diagnostic against
329 /// \p SM if the implicit formats of the AST's components conflict, or no
330 /// format if the AST has no implicit format (e.g. AST is made of a single
766 /// that operand in the AST of the expression or an error holding a
780 /// representing the binary operation in the AST of the expression, or an
792 /// variables. \returns the class representing that operand in the AST of the
803 /// AST of the expression or an error holding a diagnostic against \p SM