Attr_cast может быть полезным, чтобы помочь духу обнаруживают несколько несовместимых типов атрибутов (например, attr_cast<optional<bool>>
, чтобы изменить «Just bool» на «Maybe bool») и определить, какие атрибуты уровня будут разделены, например
string = '0' >> (repeat(3) [ qi::char_("0-9") ] % "'")
может иметь различную совместимость атрибутов от
string = '0' >> attr_cast(repeat(3) [ qi::char_("0-9") ]) % "'"
Смотрите также:
- в <>
- as_string
- as_wstring
Другими словами, я чувствую attr_cast
не в первую очередь полезно преобразовать атрибут значения, а аннотировать атрибуту типов в подвыражения с «предполагаемой открытой структурой атрибута», без необходимости прибегать к объявляя qi::rule<>
аннотировать это.
Я использую только attr_cast
как «легкие» правила.