source: trunk/abcl/doc/design/pathnames/pathname.org

Last change on this file was 15184, checked in by Mark Evenson, 4 years ago

doc: start describing current problems with CL:PATHNAME

Also needs rethinking about literals like wildcard.

File size: 2.0 KB
Line 
1* ABCL Pathname refactoring
2
3##  Use Builder pattern
4
5Implement setter/getters for internal state. 
6
7Move to the use of Pathname.create() to create new underlying
8pathnames.  Thunk on the need to create either
9
10 | Pathname        | a file                                |
11 | LogicalPathname | a logical pathname                    |
12 | ArchivePathname | an archive containing other pathnames |
13
14Do we need an ArchivePathnameEntry?  "regular" pathnames with a proper
15DEVICE for their containing archive should be sufficient.
16 
17
18
19## Java Object Hierarchy
20
21
22#+BEGIN_SRC n3
23@prefix : "org.armedbear.lisp" .
24<> :in-package "org.armedbear.lisp" .
25
26#PathnameBase -- keep as Pathname for initial refactoring
27Pathname
28  rdfs:subClassOf LispObject ;
29  rdfs:comment "has methods make() and makeFrom() that returns the appropiate subtype."
30LogicalPathname
31  rdfs:subClassOf Pathname .
32#Pathname
33#  rdfs:subClassOf AbstractPathname .
34PathnameURI
35  rdfs:subClassOf Pathname .
36PathnameArchive
37  rdfs:subClassOf PathnameURI  .
38PathnameArchiveEntry
39  rdfs:subClassOf PathnameURI  .
40PathnameJarArchive
41  rdfs:subClassOf PathnameArchive  .
42PathnameFile
43  rdfs:subClassOf PathnameURI  .
44#+END_SRC
45
46
47#+BEGIN_SRC n3
48@prefix protocol: "org.armedbear.lisp.protocol" .
49
50Pathname rdfs:comment "Encapsultes
51
52#+END_SRC
53
54
55* Historical
56
57** Archived <2019-11-12 Tue> Working through mq
58
59
60| patch                      | Contents                                       | status  | notes |
61|----------------------------+------------------------------------------------+---------+-------|
62| pathname-refactor.diff     | getter/setter; object hierarchy skeleton       | Removed |       |
63| refactor-pathname.diff     | getter/setter                                  | removed |       |
64| abcl-asdf-mvn-version.diff | previous work subsumed via abcl-1.5.0          | removed |       |
65| abstract-pathname.diff     | Have AbstractPathname rdfs:subClassOf Pathname | removed |       |
66| build-version.diff         | problems with abcl.version ant target          | removed |       |
Note: See TracBrowser for help on using the repository browser.