]> git.localhorst.tv Git - blank.git/blobdiff - src/io/TokenStreamReader.hpp
some linting
[blank.git] / src / io / TokenStreamReader.hpp
index c702703f6915c3e201bf71f759afb5b25794e966..f1b73491447c5c662aa37b219b2e42b0d5c283db 100644 (file)
@@ -14,7 +14,7 @@ namespace blank {
 class TokenStreamReader {
 
 public:
-       TokenStreamReader(std::istream &);
+       explicit TokenStreamReader(std::istream &);
 
        bool HasMore();
        const Token &Next();
@@ -39,15 +39,23 @@ public:
 
        void ReadQuat(glm::quat &);
 
+       // the Get* functions advance to the next token
+       // the As* functions try to cast the current token
+       // if the value could not be converted, a std::runtime_error is thrown
+
        bool GetBool();
+       bool AsBool() const;
        float GetFloat();
+       float AsFloat() const;
        int GetInt();
+       int AsInt() const;
        unsigned long GetULong();
+       unsigned long AsULong() const;
 
 private:
        void SkipComments();
 
-       void Assert(Token::Type);
+       void Assert(Token::Type) const;
        Token::Type GetType() const noexcept;
        const std::string &GetValue() const noexcept;