MCPcopy
hub / github.com/psf/black / load_grammar

Function load_grammar

src/blib2to3/pgen2/driver.py:241–263  ·  view source on GitHub ↗

Load the grammar (maybe from a pickle).

(
    gt: str = "Grammar.txt",
    gp: str | None = None,
    save: bool = True,
    force: bool = False,
    logger: Logger | None = None,
)

Source from the content-addressed store, hash-verified

239
240
241def load_grammar(
242 gt: str = "Grammar.txt",
243 gp: str | None = None,
244 save: bool = True,
245 force: bool = False,
246 logger: Logger | None = None,
247) -> Grammar:
248 """Load the grammar (maybe from a pickle)."""
249 if logger is None:
250 logger = logging.getLogger(__name__)
251 gp = _generate_pickle_name(gt) if gp is None else gp
252 if force or not _newer(gp, gt):
253 g: grammar.Grammar = pgen.generate_grammar(gt)
254 if save:
255 try:
256 g.dump(gp)
257 except OSError:
258 # Ignore error, caching is not vital.
259 pass
260 else:
261 g = grammar.Grammar()
262 g.load(gp)
263 return g
264
265
266def _newer(a: str, b: str) -> bool:

Callers 2

load_packaged_grammarFunction · 0.85
mainFunction · 0.85

Calls 4

dumpMethod · 0.95
loadMethod · 0.95
_generate_pickle_nameFunction · 0.85
_newerFunction · 0.85

Tested by

no test coverage detected