;ELC   
;;; Compiled
;;; in Emacs version 28.2
;;; with all optimizations.



#@52 Hook to be run after `rng-current-schema' changes.
(defvar rng-schema-change-hook nil (#$ . 84))
#@54 Pattern to be used as schema for the current buffer.
(defvar rng-current-schema nil (#$ . 187))
(make-variable-buffer-local 'rng-current-schema)
#@13 

(fn NAME)
(defalias 'rng-make-ref #[257 "\300\301E\207" [ref nil] 4 (#$ . 338)])
#@20 

(fn REF PATTERN)
(defalias 'rng-ref-set #[514 "A\240\207" [] 4 (#$ . 428)])
#@12 

(fn REF)
(defalias 'rng-ref-get #[257 "\211A@\207" [] 2 (#$ . 514)])
#@17 

(fn PATTERNS)
(defalias 'rng-make-choice #[257 "\300B\207" [choice] 3 (#$ . 591)])
#@17 

(fn PATTERNS)
(defalias 'rng-make-group #[257 "\300B\207" [group] 3 (#$ . 683)])
#@17 

(fn PATTERNS)
(defalias 'rng-make-interleave #[257 "\300B\207" [interleave] 3 (#$ . 773)])
#@16 

(fn PATTERN)
(defalias 'rng-make-zero-or-more #[257 "\300D\207" [zero-or-more] 3 (#$ . 873)])
#@16 

(fn PATTERN)
(defalias 'rng-make-one-or-more #[257 "\300D\207" [one-or-more] 3 (#$ . 976)])
#@16 

(fn PATTERN)
(defalias 'rng-make-optional #[257 "\300D\207" [optional] 3 (#$ . 1077)])
#@16 

(fn PATTERN)
(defalias 'rng-make-mixed #[257 "\300D\207" [mixed] 3 (#$ . 1173)])
#@29 

(fn DATATYPE STR CONTEXT)
(defalias 'rng-make-value #[771 "\300F\207" [value] 7 (#$ . 1263)])
#@20 

(fn NAME PARAMS)
(defalias 'rng-make-data #[514 "\300E\207" [data] 5 (#$ . 1368)])
#@28 

(fn NAME PARAMS PATTERN)
(defalias 'rng-make-data-except #[771 "\300F\207" [data-except] 7 (#$ . 1461)])
#@16 

(fn PATTERN)
(defalias 'rng-make-list #[257 "\300D\207" [list] 3 (#$ . 1577)])
#@27 

(fn NAME-CLASS PATTERN)
(defalias 'rng-make-element #[514 "\300E\207" [element] 5 (#$ . 1665)])
#@27 

(fn NAME-CLASS PATTERN)
(defalias 'rng-make-attribute #[514 "\300E\207" [attribute] 5 (#$ . 1771)])
(defalias 'rng-make-text #[0 "\300\207" [(text)] 1])
(defalias 'rng-make-empty #[0 "\300\207" [(empty)] 1])
(defalias 'rng-make-not-allowed #[0 "\300\207" [(not-allowed)] 1])
(defalias 'rng-make-any-name-name-class #[0 "\300\207" [(any-name)] 1])
#@19 

(fn NAME-CLASS)
(defalias 'rng-make-any-name-except-name-class #[257 "\300D\207" [any-name-except] 3 (#$ . 2128)])
#@11 

(fn NS)
(defalias 'rng-make-ns-name-name-class #[257 "\300D\207" [ns-name] 3 (#$ . 2252)])
#@22 

(fn NS NAME-CLASS)
(defalias 'rng-make-ns-name-except-name-class #[514 "\300E\207" [ns-name-except] 5 (#$ . 2352)])
#@13 

(fn NAME)
(defalias 'rng-make-name-name-class #[257 "\300D\207" [name] 3 (#$ . 2478)])
#@21 

(fn NAME-CLASSES)
(defalias 'rng-make-choice-name-class #[257 "\300B\207" [choice] 3 (#$ . 2574)])
#@67 A pattern that matches the attributes and content of any element.
(defconst rng-any-content (byte-code "\300\301!\302\303\304 \305\306 \304 \"\307\306 \"E!!\310\"\210\207" [rng-make-ref "any-content" rng-make-zero-or-more rng-make-choice rng-make-text rng-make-attribute rng-make-any-name-name-class rng-make-element rng-ref-set] 8) (#$ . 2682))
#@37 A pattern that matches any element.
(defconst rng-any-element (byte-code "\300\301!\302\303 \304\305\306 \307\303 \306 \"E!!\"\310\"\210\207" [rng-make-ref "any-element" rng-make-element rng-make-any-name-name-class rng-make-zero-or-more rng-make-choice rng-make-text rng-make-attribute rng-ref-set] 9) (#$ . 3038))
#@22 

(fn NS LOCAL-NAME)
(defalias 'rng-make-name #[514 "B\207" [] 4 (#$ . 3364)])
#@23 

(fn URI LOCAL-NAME)
(defalias 'rng-make-datatype #[514 "\300!B\207" [intern] 5 (#$ . 3451)])
(provide 'rng-pttrn)
