def _check_setting_existence(self, setting_name): """ Check that ``setting_name`` is a known setting. :param setting_name: The setting's name. :type setting_name: basestring :raises booleano.exc.GrammarError: If the ``setting_name`` is unknown. """ if setting_name not in self.default_settings: raise GrammarError('Unknown setting "%s"' % setting_name)
def _check_generator_existence(self, generator_name): """ Check that ``generator_name`` is a known generator. :param generator_name: The generator's name. :type generator_name: basestring :raises booleano.exc.GrammarError: If the ``generator_name`` is unknown. """ if generator_name not in self.known_generators: raise GrammarError('Unknown generator "%s"' % generator_name)
def _check_token_existence(self, token_name): """ Check that ``token_name`` is a known token. :param token_name: The token's name. :type token_name: basestring :raises booleano.exc.GrammarError: If the ``token_name`` is unknown. """ if token_name not in self.default_tokens: raise GrammarError('Unknown token "%s"' % token_name)
def add_parser(self, locale, grammar): """ Create a parser for ``grammar`` and store it. :param locale: The locale of the ``grammar``. :type locale: basestring :param grammar: The grammar of the parser to be created. :type grammar: :class:`Grammar` """ if locale in self._parsers: raise GrammarError("There is already a parser for grammar %s" % locale) parser = self._define_parser(locale, grammar) self._parsers[locale] = parser