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

#include <grammar_common.h>

Inherits grammar< Iterator, std::string(), qi::locals< boost::uint_least8_t > >.

Public Member Functions

 Digits ()
 

Public Attributes

qi::rule< Iterator,
std::string(), qi::locals
< boost::uint_least8_t > > 
digits_rule
 
qi::rule< Iterator,
boost::uint_least8_t()> 
end_padding_marker
 
qi::rule< Iterator,
boost::uint_least8_t()> 
lower_bits_padding
 

Detailed Description

template<typename Iterator>
struct acl::grammar::Digits< Iterator >

Definition at line 784 of file grammar_common.h.

Constructor & Destructor Documentation

template<typename Iterator >
acl::grammar::Digits< Iterator >::Digits ( )
inline

Definition at line 786 of file grammar_common.h.

786  : Digits::base_type(digits_rule, "Digits-bitefficient_grammar")
787  {
788  using encoding::char_;
789  digits_rule = lower_bits_padding [ label::_val += convertToNumberToken(label::_1) ]
790  | (+(qi::byte_ - end_padding_marker) [ label::_val += convertToNumberToken(label::_1) ]
791  >> end_padding_marker [ label::_val += convertToNumberToken(label::_1) ]
792  )
793  ;
794 
795  // padding bytes should only apply if the last codedNumber does not have 00 in the lowerbyte
796  end_padding_marker = char_(0x00) | lower_bits_padding;
797  lower_bits_padding = qi::byte_ [ label::_val = label::_1 ]
798  >> qi::eps( !(label::_val & 0x0f) )
799  ;
800 
804 
805  }
qi::rule< Iterator, boost::uint_least8_t()> lower_bits_padding
qi::rule< Iterator, std::string(), qi::locals< boost::uint_least8_t > > digits_rule
phoenix::function< convertToNumberTokenImpl > convertToNumberToken
qi::rule< Iterator, boost::uint_least8_t()> end_padding_marker
#define FIPA_DEBUG_RULE(X)

Member Data Documentation

template<typename Iterator >
qi::rule<Iterator, std::string(), qi::locals<boost::uint_least8_t> > acl::grammar::Digits< Iterator >::digits_rule

Definition at line 807 of file grammar_common.h.

template<typename Iterator >
qi::rule<Iterator, boost::uint_least8_t()> acl::grammar::Digits< Iterator >::end_padding_marker

Definition at line 808 of file grammar_common.h.

template<typename Iterator >
qi::rule<Iterator, boost::uint_least8_t()> acl::grammar::Digits< Iterator >::lower_bits_padding

Definition at line 809 of file grammar_common.h.


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