<commit_before>;;;; -*- Mode: Lisp; Syntax: ANSI-Common-Lisp; indent-tabs-mode: nil -*-

(in-package :common-lisp-user)

;;; Need trivial-features to correctly handle the reader conditionals
;;; in the system definition form.
(eval-when (:load-toplevel :execute)
  (asdf:oos 'asdf:load-op :cffi-grovel)
  (asdf:oos 'asdf:load-op :trivial-features))

(asdf:defsystem :io.multiplex
  :description "I/O multiplexing library."
  :author "<NAME> <<EMAIL>>"
  :maintainer "<NAME> <<EMAIL>>"
  :licence "MIT"
  :depends-on (:iolib.base :osicat)
  :pathname (merge-pathnames #p"io.multiplex/" *load-truename*)
  :components
  ((:file "pkgdcl")

   ;; Foreign definitions
   (cffi-grovel:grovel-file "grovel" :depends-on ("pkgdcl"))
   (:file "foreign-unix" :depends-on ("pkgdcl" "grovel"))
   #+linux
   (:file "foreign-linux" :depends-on ("pkgdcl" "grovel"))
   #+bsd
   (:file "foreign-bsd" :depends-on ("pkgdcl" "grovel"))

   ;; Scheduler
   (:file "time" :depends-on ("pkgdcl"))
   (:file "utils" :depends-on ("pkgdcl" "grovel" "time"))
   (:file "timers" :depends-on ("pkgdcl" "time"))
   (:file "queue" :depends-on ("pkgdcl"))
   (:file "scheduler" :depends-on ("pkgdcl" "timers" "queue"))

   ;; Event loop
   (:file "fd-entry" :depends-on ("pkgdcl" "timers"))
   (:file "multiplexer" :depends-on ("pkgdcl" "utils" "fd-entry"))
   (:file "event-loop" :depends-on ("pkgdcl" "time" "timers" "queue"
                                    "scheduler" "fd-entry" "multiplexer"))

   ;; FD wait
   (:file "fd-wait" :depends-on ("pkgdcl" "grovel" "foreign-unix" "utils"))

   ;; Event sources
   (:file "backend-select"
          :depends-on ("pkgdcl" "utils" "grovel" "foreign-unix"
                                "fd-entry" "multiplexer"))
   #+linux
   (:file "backend-epoll"
          :depends-on ("pkgdcl" "grovel" "foreign-linux"
                                "utils" "fd-entry" "multiplexer"))
   #+bsd
   (:file "backend-kqueue"
          :depends-on ("pkgdcl" "grovel" "foreign-bsd"
                                "utils" "fd-entry" "multiplexer"))
   (:file "detect"
          :depends-on ("pkgdcl" "multiplexer" "backend-select"
                       #+linux "backend-epoll" #+bsd "backend-kqueue"))))
<commit_msg>Fix ASDF deps of IO.MULTIPLEX<commit_after>;;;; -*- Mode: Lisp; Syntax: ANSI-Common-Lisp; indent-tabs-mode: nil -*-

(in-package :common-lisp-user)

;;; Need trivial-features to correctly handle the reader conditionals
;;; in the system definition form.
(eval-when (:load-toplevel :execute)
  (asdf:oos 'asdf:load-op :cffi-grovel)
  (asdf:oos 'asdf:load-op :trivial-features))

(asdf:defsystem :io.multiplex
  :description "I/O multiplexing library."
  :author "<NAME> <<EMAIL>>"
  :maintainer "<NAME> <<EMAIL>>"
  :licence "MIT"
  :depends-on (:iolib.base :trivial-features :cffi :cffi-grovel :osicat)
  :pathname (merge-pathnames #p"io.multiplex/" *load-truename*)
  :components
  ((:file "pkgdcl")

   ;; Foreign definitions
   (cffi-grovel:grovel-file "grovel" :depends-on ("pkgdcl"))
   (:file "foreign-unix" :depends-on ("pkgdcl" "grovel"))
   #+linux
   (:file "foreign-linux" :depends-on ("pkgdcl" "grovel"))
   #+bsd
   (:file "foreign-bsd" :depends-on ("pkgdcl" "grovel"))

   ;; Scheduler
   (:file "time" :depends-on ("pkgdcl"))
   (:file "utils" :depends-on ("pkgdcl" "grovel" "time"))
   (:file "timers" :depends-on ("pkgdcl" "time"))
   (:file "queue" :depends-on ("pkgdcl"))
   (:file "scheduler" :depends-on ("pkgdcl" "timers" "queue"))

   ;; Event loop
   (:file "fd-entry" :depends-on ("pkgdcl" "timers"))
   (:file "multiplexer" :depends-on ("pkgdcl" "utils" "fd-entry"))
   (:file "event-loop" :depends-on ("pkgdcl" "time" "timers" "queue"
                                    "scheduler" "fd-entry" "multiplexer"))

   ;; FD wait
   (:file "fd-wait" :depends-on ("pkgdcl" "grovel" "foreign-unix" "utils"))

   ;; Event sources
   (:file "backend-select"
          :depends-on ("pkgdcl" "utils" "grovel" "foreign-unix"
                                "fd-entry" "multiplexer"))
   #+linux
   (:file "backend-epoll"
          :depends-on ("pkgdcl" "grovel" "foreign-linux"
                                "utils" "fd-entry" "multiplexer"))
   #+bsd
   (:file "backend-kqueue"
          :depends-on ("pkgdcl" "grovel" "foreign-bsd"
                                "utils" "fd-entry" "multiplexer"))
   (:file "detect"
          :depends-on ("pkgdcl" "multiplexer" "backend-select"
                       #+linux "backend-epoll" #+bsd "backend-kqueue"))))

{'fraction_non_alphanumeric': 0.1917686318131257, 'fraction_numerical': 0.0, 'mean_word_length': 3.0107047279214987, 'pattern_counts': {'":': 0, '<': 15, '<?xml version=': 0, '>': 15, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 2, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6295713', 'n_tokens_mistral': 1752, 'n_tokens_neox': 1645, 'n_words': 361}