32 lines
569 B
Common Lisp
32 lines
569 B
Common Lisp
;;;; cl-scopes/core - here comes the real action
|
|
|
|
(defpackage :scopes/core
|
|
(:use :common-lisp)
|
|
(:local-nicknames (:config :scopes/config))
|
|
(:export #:config
|
|
#:message
|
|
#:context #:name #:send))
|
|
|
|
(in-package :scopes/core)
|
|
|
|
(defclass config (config:base)
|
|
(services))
|
|
|
|
(defclass message ()
|
|
((domain)
|
|
(action)
|
|
(class)
|
|
(item)
|
|
(sender)
|
|
(timestamp)
|
|
(data)))
|
|
|
|
(defclass context ()
|
|
((name :initarg :name :reader name)))
|
|
|
|
(defgeneric send (rcvr msg)
|
|
(:method ((rcvr context) msg)
|
|
rcvr
|
|
msg))
|
|
|
|
(defvar *context* nil)
|