22 lines
622 B
Common Lisp
22 lines
622 B
Common Lisp
;;;; cl-scopes/core/message
|
|
|
|
(defpackage :scopes/core/message
|
|
(:use :common-lisp)
|
|
(:export #:message #:create
|
|
#:head #:data #:sender))
|
|
|
|
(in-package :scopes/core/message)
|
|
|
|
;;;; message
|
|
|
|
(defclass message ()
|
|
((head :reader head :initarg :head)
|
|
(sender :reader sender :initarg :sender :initform nil)
|
|
(timestamp)
|
|
(data :accessor data :initarg :data :initform nil)))
|
|
|
|
(defun create (head &key data sender)
|
|
(make-instance 'message :head head :data data :sender sender))
|
|
|
|
(defmethod print-object ((msg message) stream)
|
|
(format stream "<message ~s ~s <data ~s>>" (head msg) (sender msg) (data msg)))
|