Parsing of Leo input files.
(input-file-parsep tokens file) → yes/no
This is analogous to file-parsep, but for input files instead of (code) files.
Note also that, while file-parsep passes
the empty list of identifiers to token-fringe,
here we pass the list consisting of the
Function:
(defun input-file-parsep (tokens file) (declare (xargs :guard (and (abnf::tree-listp tokens) (abnf::treep file)))) (let ((__function__ 'input-file-parsep)) (declare (ignorable __function__)) (and (abnf-tree-with-root-p (abnf::tree-fix file) "input-file") (equal (token-fringe file (list "private")) (abnf::tree-list-fix tokens)))))
Theorem:
(defthm booleanp-of-input-file-parsep (b* ((yes/no (input-file-parsep tokens file))) (booleanp yes/no)) :rule-classes :rewrite)
Theorem:
(defthm input-file-parsep-of-tree-list-fix-tokens (equal (input-file-parsep (abnf::tree-list-fix tokens) file) (input-file-parsep tokens file)))
Theorem:
(defthm input-file-parsep-tree-list-equiv-congruence-on-tokens (implies (abnf::tree-list-equiv tokens tokens-equiv) (equal (input-file-parsep tokens file) (input-file-parsep tokens-equiv file))) :rule-classes :congruence)
Theorem:
(defthm input-file-parsep-of-tree-fix-file (equal (input-file-parsep tokens (abnf::tree-fix file)) (input-file-parsep tokens file)))
Theorem:
(defthm input-file-parsep-tree-equiv-congruence-on-file (implies (abnf::tree-equiv file file-equiv) (equal (input-file-parsep tokens file) (input-file-parsep tokens file-equiv))) :rule-classes :congruence)