fipa_acl  1.4
Public Member Functions | Public Attributes | List of all members
fipa::acl::grammar::string::DateTimeToken< Iterator > Struct Template Reference

#include <grammar_string_message.h>

Inherits grammar< Iterator, std::string() >.

Public Member Functions

 DateTimeToken ()
 

Public Attributes

qi::rule< Iterator, std::string()> year
 
qi::rule< Iterator, std::string()> month
 
qi::rule< Iterator, std::string()> day
 
qi::rule< Iterator, std::string()> hour
 
qi::rule< Iterator, std::string()> minute
 
qi::rule< Iterator, std::string()> second
 
qi::rule< Iterator, char()> digit
 
qi::rule< Iterator, std::string()> sign
 
qi::rule< Iterator, char()> typeDesignator
 
qi::rule< Iterator, std::string()> millisecond
 
qi::rule< Iterator, std::string()> date_time
 

Detailed Description

template<typename Iterator>
struct fipa::acl::grammar::string::DateTimeToken< Iterator >

Definition at line 174 of file grammar_string_message.h.

Constructor & Destructor Documentation

◆ DateTimeToken()

template<typename Iterator>
fipa::acl::grammar::string::DateTimeToken< Iterator >::DateTimeToken ( )
inline

Definition at line 176 of file grammar_string_message.h.

176  : DateTimeToken::base_type(date_time, "date_time_token-string_grammar")
177  {
178  using encoding::char_;
179 
180  date_time = - sign [ label::_val = label::_1 ]
181  >> year [ label::_val += label::_1 ]
182  >> month [ label::_val += label::_1 ]
183  >> day [ label::_val += label::_1 ]
184  >> char_('T') [ label::_val += label::_1 ]
185  >> hour [ label::_val += label::_1 ]
186  >> minute [ label::_val += label::_1 ]
187  >> second [ label::_val += label::_1 ]
188  >> millisecond [ label::_val += label::_1 ]
189  >> - typeDesignator [ label::_val += label::_1 ]
190  ;
191 
192  sign = encoding::string("+")
193  | encoding::string("-");
194 
195  typeDesignator = char_('a','z')
196  | char_('A','Z');
197 
198  digit = char_('0','9');
199 
200  year = digit
201  >> digit
202  >> digit
203  >> digit;
204 
205  month = digit
206  >> digit;
207 
208  day = month.alias();
209  hour = month.alias();
210  minute = month.alias();
211  second = month.alias();
212 
213  millisecond = digit
214  >> digit
215  >> digit
216  ;
217 
219 
220  }
qi::rule< Iterator, std::string()> minute
qi::rule< Iterator, std::string()> sign
qi::rule< Iterator, std::string()> date_time
qi::rule< Iterator, std::string()> second
qi::rule< Iterator, std::string()> month
qi::rule< Iterator, std::string()> year
qi::rule< Iterator, std::string()> hour
qi::rule< Iterator, std::string()> day
qi::rule< Iterator, std::string()> millisecond
#define FIPA_DEBUG_RULE(X)

Member Data Documentation

◆ date_time

template<typename Iterator>
qi::rule<Iterator, std::string()> fipa::acl::grammar::string::DateTimeToken< Iterator >::date_time

Definition at line 234 of file grammar_string_message.h.

◆ day

template<typename Iterator>
qi::rule<Iterator, std::string()> fipa::acl::grammar::string::DateTimeToken< Iterator >::day

Definition at line 224 of file grammar_string_message.h.

◆ digit

template<typename Iterator>
qi::rule<Iterator, char()> fipa::acl::grammar::string::DateTimeToken< Iterator >::digit

Definition at line 229 of file grammar_string_message.h.

◆ hour

template<typename Iterator>
qi::rule<Iterator, std::string()> fipa::acl::grammar::string::DateTimeToken< Iterator >::hour

Definition at line 225 of file grammar_string_message.h.

◆ millisecond

template<typename Iterator>
qi::rule<Iterator, std::string()> fipa::acl::grammar::string::DateTimeToken< Iterator >::millisecond

Definition at line 233 of file grammar_string_message.h.

◆ minute

template<typename Iterator>
qi::rule<Iterator, std::string()> fipa::acl::grammar::string::DateTimeToken< Iterator >::minute

Definition at line 226 of file grammar_string_message.h.

◆ month

template<typename Iterator>
qi::rule<Iterator, std::string()> fipa::acl::grammar::string::DateTimeToken< Iterator >::month

Definition at line 223 of file grammar_string_message.h.

◆ second

template<typename Iterator>
qi::rule<Iterator, std::string()> fipa::acl::grammar::string::DateTimeToken< Iterator >::second

Definition at line 227 of file grammar_string_message.h.

◆ sign

template<typename Iterator>
qi::rule<Iterator, std::string()> fipa::acl::grammar::string::DateTimeToken< Iterator >::sign

Definition at line 230 of file grammar_string_message.h.

◆ typeDesignator

template<typename Iterator>
qi::rule<Iterator, char()> fipa::acl::grammar::string::DateTimeToken< Iterator >::typeDesignator

Definition at line 231 of file grammar_string_message.h.

◆ year

template<typename Iterator>
qi::rule<Iterator, std::string()> fipa::acl::grammar::string::DateTimeToken< Iterator >::year

Definition at line 222 of file grammar_string_message.h.


The documentation for this struct was generated from the following file: