aly / src / packages.lisp

(in-package :cl-user)

(defpackage :aly.util
  (:use :cl)
  (:import-from :alexandria :with-gensyms)
  (:import-from :5pm :match)
  (:export :defalias :result-match :intersperse))

(defpackage :aly.stream
  (:use :cl)
  (:import-from :anaphora :aif :it)
  (:export :make-parser-stream :parser-stream :parser-stream-car
           :parser-stream-cdr))

(defpackage :aly.condition
  (:use :cl :aly.util :aly.stream)
  (:export :parser-error :parser-error-stream :parser-error-position
           :parser-error-expected))

(defpackage :aly.core
  (:use :cl :aly.util :aly.stream :aly.condition)
  (:import-from :alexandria :with-gensyms :flatten)
  (:import-from :5pm :match :guard)
  (:export :success :failure :satisfy :unit :fail :bind :mlet1 :mlet* :seq :seq1
           :seqn :seq/bind :choice :try :expect :many :skip-many :eoi :parse))

(defpackage :aly.combinator
  (:use :cl :aly.core)
  (:export :sep-by :sep-by1 :many1 :skip-many1 :end-by :end-by1 :times :between
           :many-till :chainl1 :chainl :chainr1 :chainr :not-followed-by))

(defpackage :aly
  (:use :cl :aly.condition :aly.core :aly.combinator)
  (:export :parser-error

           :unit :fail :bind :mlet1 :mlet* :seq :seq1 :seqn :seq/bind :choice
           :try :expect :many :skip-many :eoi :parse

           :sep-by :sep-by1 :many1 :skip-many1 :end-by :end-by1 :times :between
           :many-till :chainl1 :chainl :chainr1 :chainr :not-followed-by))

(defpackage :aly.char
  (:use :cl :aly.util :aly.core :aly.combinator)
  (:import-from :alexandria :curry :rcurry)
  (:export :specific-char :specific-string :one-of :none-of :any-char :upper
           :lower :letter :alpha-num :digit :decimal-digit :hex-digit :oct-digit
           :newline :tab :whitespace :whitespaces))
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.