Skip to content

Instantly share code, notes, and snippets.

@Bike

Bike/regex.txt Secret

Created April 19, 2020 14:02
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Bike/44cb1285741356cbaae547f2d57b69d0 to your computer and use it in GitHub Desktop.
Save Bike/44cb1285741356cbaae547f2d57b69d0 to your computer and use it in GitHub Desktop.
CL-USER> (regex::scanner-source-from-parse-tree (regex::parse-regex "a*|bcd"))
(LAMBDA (STRING REGEX::START REGEX::END)
(LET ((REGEX::INDEX REGEX::START))
(BLOCK NIL
(TAGBODY
(GO REGEX::START)
REGEX::START
(UNLESS (= REGEX::INDEX REGEX::END)
(CASE (CHAR STRING REGEX::INDEX) ((#\a) (INCF REGEX::INDEX) (GO 0))))
(GO 1)
1
(RETURN NIL)
0
(GO 2)
2
(UNLESS (= REGEX::INDEX REGEX::END)
(CASE (CHAR STRING REGEX::INDEX)
((#\d) (INCF REGEX::INDEX) (GO REGEX::SUCCESS))))
(GO 3)
3
(UNLESS (= REGEX::INDEX REGEX::END)
(CASE (CHAR STRING REGEX::INDEX)
((#\b) (INCF REGEX::INDEX) (GO 0))
((#\c) (INCF REGEX::INDEX) (GO 0))))
(GO 1)
REGEX::SUCCESS
(RETURN REGEX::INDEX)))))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment