20#ifndef LLVMEXPR_FRONTEND_INFIX2POSTFIX_POSTFIXBUILDER_HPP
21#define LLVMEXPR_FRONTEND_INFIX2POSTFIX_POSTFIXBUILDER_HPP
42 [[nodiscard]]
bool empty()
const;
45 void addNumber(
const std::string& num_literal);
51 void addLabel(
const std::string& label_name);
58 const std::string& prop_name);
60 const std::string& prop_name);
61 void addSetProp(
const std::string& prop_name,
const std::string& suffix);
64 const std::string& x,
const std::string& y,
65 const std::string& suffix);
67 const std::string& suffix);
69 const std::string& plane);
83 const std::string& size);
89 void addRaw(
const std::string& raw_string);
92 void pushToken(
const std::string& token);
93 std::vector<std::string> tokens;
void addConstant(const std::string &const_name)
void addStaticPixelAccess(const std::string &clip_name, const std::string &x, const std::string &y, const std::string &suffix)
void addSetProp(const std::string &prop_name, const std::string &suffix)
void addNumber(const std::string &num_literal)
void addLabel(const std::string &label_name)
void addUnconditionalJump(const std::string &label_name)
void addArrayAllocStatic(const std::string &array_name, const std::string &size)
void addPropExist(const std::string &clip_name, const std::string &prop_name)
void addDupN(int count=0)
void addConditionalJump(const std::string &label_name)
void addDeleteProp(const std::string &prop_name)
void prefixLabels(const std::string &prefix)
void addStoreSingle(const std::string &plane)
void addFunctionCall(const std::string &func_name)
void addArrayAllocDynamic(const std::string &array_name)
void addDropN(int count=1)
void addArrayLoad(const std::string &array_name)
void addDynPixelAccessExpr(const std::string &clip_name, const std::string &suffix)
void addUnaryOp(TokenType type)
void addArrayStore(const std::string &array_name)
void addDynPixelAccessSingle(const std::string &clip_name, const std::string &plane)
std::string getExpression() const
void append(const PostfixBuilder &other)
void addFrameDimension(const std::string &dim, const std::string &plane)
void addSwapN(int count=1)
void addVariableStore(const std::string &var_name)
void addRaw(const std::string &raw_string)
void addOp(TokenType type)
void addPropAccess(const std::string &clip_name, const std::string &prop_name)
void addVariableLoad(const std::string &var_name)