Introduce class named-address for protocol addresses with an explicit endpoint
authorStelian Ionescu <sionescu@cddr.org>
Sun, 5 May 2013 01:22:26 +0000 (5 03:22 +0200)
committerStelian Ionescu <sionescu@cddr.org>
Sun, 5 May 2013 01:22:26 +0000 (5 03:22 +0200)
src/sockets/address.lisp
src/sockets/pkgdcl.lisp

index a45796b..9852543 100644 (file)
@@ -8,10 +8,14 @@
 ;;;; Class Definitions
 
 (defclass address ()
-  ((name :initarg :name :reader address-name :type vector))
+  ()
   (:documentation "Base class for all socket address classes."))
 
-(defclass inet-address (address) ()
+(defclass named-address ()
+  ((name :initarg :name :reader address-name :type vector))
+  (:documentation "Base class for socket address with a name."))
+
+(defclass inet-address (named-address) ()
   (:documentation "Base class for IPv4 and IPv6 addresses."))
 
 (defclass ipv4-address (inet-address) ()
@@ -24,7 +28,7 @@ ADDRESS-NAME reader."))
 can be accessed as vector of type IPV6-ARRAY through the
 ADDRESS-NAME reader."))
 
-(defclass local-address (address)
+(defclass local-address (named-address)
   ((abstract :initform nil :initarg :abstract
              :reader abstract-address-p :type boolean))
   (:documentation "UNIX socket address."))
index a796daf..c1a91d9 100644 (file)
@@ -58,6 +58,7 @@
    ;; Address Classes
    #:address
    #:inet-address
+   #:named-address
    #:ipv4-address
    #:ipv6-address
    #:local-address