mirror of
https://github.com/davidhalter/parso.git
synced 2025-12-07 21:34:32 +08:00
Load from cache even when code was given
Change Grammar._parse() to try load_module() even if code was passed to it. In many cases, _parse() is passed both the code and the path to the .py file. E.g. in jedi-vim if you type "import foo.", then every .py file in directory "foo" will reach Grammar._parse() with both the `code` and the `path` variables filled in. This change allows the cache to be used in those cases.
This commit is contained in:
committed by
Dave Halter
parent
4824534f8a
commit
04360cdfe7
@@ -94,10 +94,7 @@ class Grammar(object):
|
||||
if error_recovery and start_symbol != 'file_input':
|
||||
raise NotImplementedError("This is currently not implemented.")
|
||||
|
||||
if cache and code is None and path is not None:
|
||||
# With the current architecture we cannot load from cache if the
|
||||
# code is given, because we just load from cache if it's not older than
|
||||
# the latest change (file last modified).
|
||||
if cache and path is not None:
|
||||
module_node = load_module(self._hashed, path, cache_path=cache_path)
|
||||
if module_node is not None:
|
||||
return module_node
|
||||
|
||||
Reference in New Issue
Block a user