0
ответов

Boost.Spirit: Отчет об ошибках Lex + Qi

Я пишу парсер для довольно сложных конфигурационных файлов, которые используют отступы и т. Д. Я решил использовать Lex чтобы разбить ввод на токены, чтобы облегчить жизнь. Проблема в том, что я не могу ...
вопрос задан: 11 October 2012 10:01
0
ответов

Boost ::Spirit результат фразы _parse

Привет всем, я новичок в повышении и повышении ::духа, поэтому прошу прощения за нубский вопрос. Когда я использую qi ::фразу _parsefunction, функция возвращает только логическую переменную, которая указывает, имеет ли синтаксический анализ...
вопрос задан: 19 July 2012 07:02
0
ответов

Как выдать ожидание_сбоя из функции в Boost Spirit?

Как в Boost::Spirit вызвать ожидание_failure из функции, связанной с Boost::Bind? Предыстория: я разбираю большой файл, содержащий сложные записи. Когда запись не соответствует ...
вопрос задан: 22 May 2012 17:02
0
ответов

Как использовать boost::tuple в качестве атрибута в правиле boost::spirit?

У меня есть следующее правило в boost::spirit: typedef boost::tuple Entry; запись qi::rule; запись = qi::int_ >> qi::int_; А вот второй int это...
вопрос задан: 21 May 2012 20:23
0
ответов

Как анализировать записи, за которыми следует точка с запятой или новая строка (boost::spirit)?

Как в Boost::Spirit анализировать записи, за которыми следует либо точка с запятой, либо новая строка с необязательной точкой с запятой? Пример ввода, где каждая запись представляет собой int и double: 12 1.4; 63 13,2 ...
вопрос задан: 19 May 2012 23:40
0
ответов

Как реализовать директивы include с помощью boost::spirit::lex

У меня есть простой синтаксический анализатор файла конфигурации, построенный из Spirit::lex и Spirit::qi. Когда лексер достигает шаблона, включает «путь», я хочу, чтобы текст файла был включен. ::...
вопрос задан: 9 May 2012 22:47
0
ответов

Как сопоставить символы Юникода с boost::spirit?

Как мне сопоставить символы Юникода utf8 с помощью boost::spirit? Например, я хочу распознать все символы в этой строке: $ echo "На берегу пустынных волн" | ./a.out Н а б е р е гу п у с т ы н н ...
вопрос задан: 7 May 2012 01:33
0
ответов

Как я могу использовать пробел ascii ::шкипера БЕЗ пропуска eol?

Мне нужно использовать boost ::spirit для синтаксического анализа, и я хочу использовать фразу _функцию разбора :qi ::фразу _разбор (str.begin (), str.end (), грамматика, ascii ::пробел -qi ::eol ); Но четвертый термин (ascii ::пробел -qi ::...
вопрос задан: 5 May 2012 20:38
0
ответов

Как использовать boost ::spirit для анализа последовательности слов в вектор?

Я пытаюсь научиться повышать ::дух. В качестве примера я пытаюсь разобрать последовательность слов в вектор . Я попробовал:#включить #include
вопрос задан: 2 May 2012 21:16
0
ответов

Разобрать строки в кавычках с помощью boost ::Spirit

Я хочу разобрать предложение, в котором некоторые строки могут быть не в кавычках, "в кавычках" или "в кавычках". Код ниже почти работает -, но не соответствует закрывающим кавычкам. Я предполагаю, что это из-за qq...
вопрос задан: 24 April 2012 00:28
0
ответов

Изменить тип атрибута при анализе двоичного файла с помощью boost::spirit

Я успешно использовал boost::spirit::qi для анализа потока, состоящего из встроенных-парсеров (,например. байт_, маленькое_слово и т. д.). Однако теперь мне нужно проанализировать данные, которые не попадают аккуратно в...
вопрос задан: 15 March 2012 07:09
0
ответов

Компиляция простого синтаксического анализатора с помощью Boost.Spirit

Часть простой скелетной утилиты, над которой я работаю. У меня есть грамматика для запуска замен в тексте. Я подумал, что это замечательный способ освоиться с Boost.Spirit, но ошибки шаблона - это ...
вопрос задан: 22 February 2012 22:57
0
ответов

Обнаружение типов параметров в семантическом действии Spirit

Общий случай: я не могу понять, почему мои действия грамматики / семантики Spirit не компилируются. Иногда компилятор будет жаловаться на несовместимость присваиваний или типов, и я понятия не имею, что ...
вопрос задан: 22 February 2012 22:31
0
ответов

как вы читаете уникальный идентификатор тега NFC на android?

Tag myTag = (Tag) intent.getParcelableExtra (NfcAdapter.EXTRA_TAG); Log.i ("идентификатор тега", myTag.getId (). ToString ()); Это дает мне идентификатор типа «[ B @ 40521c40 », но этот идентификатор изменяется при каждом чтении. Любая помощь будет ...
вопрос задан: 24 January 2012 12:52
0
ответов

Ошибка компиляции Boost::Spirit

Я редко спрашиваю об ошибках компиляции, но следующая ошибка меня озадачила. Я успешно скомпилировал библиотеки boost для Android и пытаюсь использовать его библиотеку Spirit для создания парсера. Но когда ...
вопрос задан: 29 December 2011 04:06
0
ответов

Custom Skip Parser with Boost::Spirit

Стандартный ascii::space_type skipper, конечно, не пропускает мои комментарии. В документации упоминается, что можно сделать свой собственный анализатор пропусков, но нет примера того, как это сделать. Мне просто нужно ...
вопрос задан: 16 December 2011 09:13
0
ответов

Синтаксический анализатор выражений Boost :: Spirit

У меня другая проблема с моим синтаксическим анализатором boost :: spirit. template struct expression: qi :: grammar {expression (): ...
вопрос задан: 11 December 2011 15:06
0
ответов

Получение AST из парсера boost::spirit

После того, как я прочитал учебники по boost::spirit, он мне очень понравился из-за синтаксиса комбинатора парсера. Создавать парсер так просто. К сожалению, учебники были не так точны в вопросе ...
вопрос задан: 10 December 2011 23:41
0
ответов

Boost Spirit: «Семантические действия - зло»?

Чтение и просмотр этой презентации: http: // boost -spirit.com/home/2011/06/12/ast-construction-with-the-universal-tree/ Я обнаружил это утверждение - в основном нам предлагают не использовать ...
вопрос задан: 24 November 2011 15:35
0
ответов

Избегание копий атрибутов с помощью генераторов кармы

Я использую карму для создания представлений больших структур, но структуры копируются во время генерации. Я не думаю, что им нужно быть, поэтому было интересно, как этого избежать. Быстрый пример ...
вопрос задан: 10 November 2011 09:53
0
ответов

Я не могу получить строковое значение токена

Я пытаюсь реализовать лексер для небольшого языка программирования с Boost Spirit. Мне нужно получить значение токена, и я получаю исключение bad_get: terminate вызывается после создания экземпляра '...
вопрос задан: 14 October 2011 08:35
0
ответов

Теоретически может быть Boost.Spirit / практически используется для синтаксического анализа C ++ (0x) (или любого другого языка)?

Подходит ли это теоретически для задачи? Можно ли это сделать практически, и можно ли будет использовать получившийся в результате синтаксический анализатор с достаточной производительностью и выводом (скажем, LLVM IR или gimple GCC) для интеграции в ...
вопрос задан: 1 October 2011 14:00
0
ответов

«cc1plus.exe перестал работать» при компиляции кода Boost Spirit

У меня возникла небольшая проблема при попытке скомпилировать код с использованием последней версии MinGW (GCC 4.5.2) под Windows Vista Home Premium 64-бит. Во время компиляции этого файла я получаю сообщение ...
вопрос задан: 25 July 2011 02:17
0
ответов

Почему boost :: spirit :: qi :: parse () не устанавливает значение этого boost :: variant?

При попытке разобрать текст в boost :: variant , значение варианта не меняется. Сами по себе парсеры работают нормально, поэтому я предполагаю, что я делаю что-то не так с ...
вопрос задан: 4 July 2011 16:46
0
ответов

Boost Variant: Как моделировать JSON?

Я пытаюсь разобрать строку JSON с помощью объекта JSON хранилища Boost Spirit в рекурсивные структуры данных: Value <== [null, bool, long, double, std :: string, Array, Object]; Array <== [Value, Value, ...
вопрос задан: 3 July 2011 11:38
0
ответов

как разобрать и проверить упорядоченный список целых чисел с помощью ци

Я разбираю текстовый файл размером, возможно, несколько ГБ, состоящий из следующих строк: 11 0,1 14 0,78 532 -3.5 Обычно одно целое и одно число с плавающей запятой на строку. Целые числа должны быть упорядоченными и неотрицательными. ...
вопрос задан: 23 June 2011 15:58
0
ответов

Парсинг грамматики питона с boost::spirit - problem

Я пытаюсь написать парсер питона с библиотекой boost::spirit. Вот код: шаблон <типеназвание итератора>. класс Парсер : public qi::grammar { ...
вопрос задан: 30 May 2011 15:52
0
ответов

Динамически комбинируйте правила Boost.Spirit.Qi во время выполнения (произвольное количество альтернатив)

Мне было интересно, есть ли - это способ в Boost.Spirit.Qi динамически комбинировать произвольное количество правил во время выполнения. Внутренняя работа Boost.Spirit до сих пор остается для меня загадкой, но ...
вопрос задан: 6 May 2011 23:32
0
ответов

Пример boost :: spirit не компилируется

Я следил за инструкциями в документации Spirit и застрял здесь: #include #include <строка> #include template
вопрос задан: 26 March 2011 20:47
0
ответов

Boost Spirit Qi Re-Establish Пропуск с пользовательской грамматикой пропуска

У меня есть грамматика, которая до сих пор использовала стандартный boost :: spirit :: ascii :: space / boost :: spirit :: ascii :: space_type шкипер. У меня есть некоторые правила, которые используют шкипер, а некоторые нет, например ...
вопрос задан: 18 February 2011 04:52