Codebase list cafeobj / 87d6758
work on require supporting foo::bar Norbert Preining 8 years ago
2 changed file(s) with 16 addition(s) and 2 deletion(s). Raw diff Collapse all Expand all
805805 (chaos-to-top)))
806806 (if file
807807 (funcall proc file)
808 (funcall proc feature)))))
808 (funcall proc (format nil "~{~A~^/~}"
809 (cl-ppcre:split "::" feature)))))))
809810
810811 ;;; *******
811812 ;;; PROTECT
132132 nil))
133133 (error "is-simple-file-name? : given non string arg ~a" path))))
134134
135 (defun is-relative-file-name? (path)
136 (declare (type (or simple-string pathname) path)
137 (values (or null t)))
138 (let ((pn (if (pathnamep path)
139 path
140 (if (stringp path)
141 (pathname path)
142 (error "is-relative-file-name? : given non string arg ~a" path)))))
143 (if (or (null (pathname-directory pn))
144 (member ':relative (pathname-directory pn) :test #'equal))
145 t
146 nil)))
147
135148 (defun supply-suffixes (path suffixes)
136149 (declare (type (or simple-string pathname) path)
137150 (type list suffixes)
161174 (when (and load-path (atom load-path))
162175 (setq load-path (list load-path)))
163176 ;;
164 (cond ((is-simple-file-name? file)
177 (cond ((is-relative-file-name? file)
165178 (let ((file-path (chaos-get-relative-path*
166179 (concatenate 'string "./" file)))
167180 (res nil))