Changeset 12613
- Timestamp:
- 04/15/10 14:51:18 (13 years ago)
- Location:
- trunk/abcl/doc/design/pathnames
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/abcl/doc/design/pathnames/jar-pathnames.markdown
r12607 r12613 4 4 Mark Evenson 5 5 Created: 09 JAN 2010 6 Modified: 25 MAR 20106 Modified: 10 APR 2010 7 7 8 8 Notes towards an implementation of "jar:" references to be contained … … 83 83 The DEVICE of a JAR PATHNAME will be a list with either one or two 84 84 elements. The first element of the JAR PATHNAME can be either a 85 PATHNAME representing a JAR on the filesystem, or a SimpleString 86 representing a URL. 85 PATHNAME representing a JAR on the filesystem, or a URL PATHNAME. 87 86 88 87 A PATHNAME occuring in the list in the DEVICE of a JAR PATHNAME is 89 88 known as a DEVICE PATHNAME. 90 89 91 If the DEVICE is a String it must be a String that successfully 92 references a URL via the java.net.URL(String) constructor 93 94 Only the first entry in the the DEVICE list may be a String. 90 Only the first entry in the the DEVICE list may be a URL PATHNAME. 95 91 96 92 Otherwise the the DEVICE PATHAME denotes the PATHNAME of the JAR file. … … 102 98 with the :ABSOLUTE keyword. Even though hierarchial entries in jar 103 99 files are stored in the form "foo/bar/a.lisp" not "/foo/bar/a.lisp", 104 the meaning of DIRECTORY component better represented as an absolute105 path.100 the meaning of DIRECTORY component is better represented as an 101 absolute path. 106 102 107 103 A jar Pathname has type JAR-PATHNAME, derived from PATHNAME. 104 108 105 109 106 BNF … … 222 219 namestring: "jar:http://example.org/abcl.jar!/org/armedbear/lisp/Version.class", 223 220 device: ( 224 "http://example.org/abcl.jar" 221 pathname: { 222 namestring: "http://example.org/abcl.jar" 223 } 225 224 pathname: { 226 225 directory: (:RELATIVE "org" "armedbear" "lisp") … … 234 233 namestring "jar:jar:http://example.org/abcl.jar!/foo.abcl!/foo-1.cls" 235 234 device: ( 236 "http://example.org/abcl.jar" 235 pathname: { 236 namestring: "http://example.org/abcl.jar" 237 } 237 238 pathname: { 238 239 name: "foo" … … 307 308 type: "abcl" 308 309 } 310 ) 309 311 } 310 312 … … 313 315 to have been considerably simplified. 314 316 317 When we implemented URL Pathnames, the special syntax for URL as an 318 abstract string in the first position of the device list was naturally 319 replaced with a URL pathname. 320 321 -
trunk/abcl/doc/design/pathnames/url-pathnames.markdown
r12607 r12613 4 4 Mark Evenson 5 5 Created: 25 MAR 2010 6 Modified: 26 MAR 20106 Modified: 11 APR 2010 7 7 8 8 Notes towards an implementation of URL references to be contained in … … 90 90 Valid authority according to the URI scheme. For "http" this 91 91 could be "example.org:8080". 92 :QUERY 93 The query of the URI 94 :FRAGMENT 95 The fragment portion of the URI 92 96 93 97 The DIRECTORY, NAME and TYPE fields of the PATHNAME are used to form 94 98 the URI `path` according to the conventions of the UNIX filesystem 95 (i.e. '/' is the directory separator). If needed, `query` and `fragment`96 portions of a URL are to be included in the URL pathname NAME 97 component. In a sense the HOST contains the base URL, to which the 98 `path` is a relative URL.99 (i.e. '/' is the directory separator). In a sense the HOST contains 100 the base URL, to which the `path` is a relative URL (although this 101 abstraction is violated somwhat by the storing of the QUERY and 102 FRAGMENT portions of the URI in the HOST component). 99 103 100 104 For the purposes of PATHNAME-MATCH-P, two URL pathnames may be said to
Note: See TracChangeset
for help on using the changeset viewer.