From c3f7f0c0556270ced988a7adddec885270bc1ea7 Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Mon, 10 Aug 2009 17:54:32 +0200 Subject: Inline file for the Token class --- cli/token.ixx | 70 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 70 insertions(+) create mode 100644 cli/token.ixx (limited to 'cli/token.ixx') diff --git a/cli/token.ixx b/cli/token.ixx new file mode 100644 index 0000000..bcf040a --- /dev/null +++ b/cli/token.ixx @@ -0,0 +1,70 @@ +// file : cli/token.ixx +// author : Boris Kolpackov +// copyright : Copyright (c) 2009 Code Synthesis Tools CC +// license : MIT; see accompanying LICENSE file + +inline Token::Type Token:: +type () const +{ + return type_; +} + +inline std::size_t Token:: +line () const +{ + return l_; +} + +inline std::size_t Token:: +column () const +{ + return c_; +} + +inline Token::Keyword Token:: +keyword () const +{ + return keyword_; +} + +inline std::string const& Token:: +identifier () const +{ + return str_; +} + +inline Token::Punctuation Token:: +punctuation () const +{ + return punctuation_; +} + +inline std::string const& Token:: +literal () const +{ + return str_; +} + +inline Token:: +Token (std::size_t l, std::size_t c) + : l_ (l), c_ (c), type_ (t_eos) +{ +} + +inline Token:: +Token (Keyword k, std::size_t l, std::size_t c) + : l_ (l), c_ (c), type_ (t_keyword), keyword_ (k) +{ +} + +inline Token:: +Token (Punctuation p, std::size_t l, std::size_t c) + : l_ (l), c_ (c), type_ (t_punctuation), punctuation_ (p) +{ +} + +inline Token:: +Token (Type t, std::string const& s, std::size_t l, std::size_t c) + : l_ (l), c_ (c), type_ (t), str_ (s) +{ +} -- cgit v1.1