#ifndef COMPILER_LITERALS_H_INCLUDED #define COMPILER_LITERALS_H_INCLUDED #include #include #include namespace Compiler { /// \brief Literal values. class Literals { std::vector mIntegers; std::vector mFloats; std::vector mStrings; public: const std::vector& getIntegers() const { return mIntegers; } const std::vector& getFloats() const { return mFloats; } const std::vector& getStrings() const { return mStrings; } int addInteger(Interpreter::Type_Integer value); ///< add integer liternal and return index. int addFloat(Interpreter::Type_Float value); ///< add float literal and return value. int addString(const std::string& value); ///< add string literal and return value. void clear(); ///< remove all literals. }; } #endif