Added path param to load_grammar for loading custom grammar files

This commit is contained in:
Jonas Tranberg
2018-04-11 15:52:35 +02:00
committed by Dave Halter
parent 579146b501
commit bf5a4b7c2c

View File

@@ -20,7 +20,7 @@ class Grammar(object):
""" """
:py:func:`parso.load_grammar` returns instances of this class. :py:func:`parso.load_grammar` returns instances of this class.
Creating custom grammars by calling this is not supported, yet. Creating custom none-python grammars by calling this is not supported, yet.
""" """
#:param text: A BNF representation of your grammar. #:param text: A BNF representation of your grammar.
_error_normalizer_config = None _error_normalizer_config = None
@@ -219,12 +219,13 @@ def load_grammar(**kwargs):
version. version.
:param str version: A python version string, e.g. ``version='3.3'``. :param str version: A python version string, e.g. ``version='3.3'``.
:param str path: A path to a grammar file
""" """
def load_grammar(language='python', version=None): def load_grammar(language='python', version=None, path=None):
if language == 'python': if language == 'python':
version_info = parse_version_string(version) version_info = parse_version_string(version)
file = os.path.join( file = path or os.path.join(
'python', 'python',
'grammar%s%s.txt' % (version_info.major, version_info.minor) 'grammar%s%s.txt' % (version_info.major, version_info.minor)
) )