aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGravatar Peter McGoron 2024-12-27 23:30:39 -0500
committerGravatar Peter McGoron 2024-12-27 23:30:39 -0500
commit4981e4e527a4f05a64a000142201a99adfee7fbd (patch)
tree65be1155208111a590c1743523b4d1c245c672fa
parentREADME (diff)
chicken egg
-rw-r--r--mcgoron.ris.exceptions.sld38
-rw-r--r--mcgoron.ris.parse.scm (renamed from mcgoron.ris.scm)15
-rw-r--r--mcgoron.ris.parse.sld (renamed from mcgoron.ris.sld)7
-rw-r--r--sris.egg14
-rw-r--r--tests/10.1038_s41467-022-34369-4-citation.ris (renamed from test/10.1038_s41467-022-34369-4-citation.ris)0
-rw-r--r--tests/run.scm (renamed from test/test.scm)5
6 files changed, 58 insertions, 21 deletions
diff --git a/mcgoron.ris.exceptions.sld b/mcgoron.ris.exceptions.sld
new file mode 100644
index 0000000..559cc77
--- /dev/null
+++ b/mcgoron.ris.exceptions.sld
@@ -0,0 +1,38 @@
+#| Copyright 2024 Peter McGoron
+ |
+ | Licensed under the Apache License, Version 2.0 (the "License");
+ |
+ | you may not use this file except in compliance with the License.
+ | You may obtain a copy of the License at
+ |
+ | http://www.apache.org/licenses/LICENSE-2.0
+ |
+ | Unless required by applicable law or agreed to in writing, software
+ | distributed under the License is distributed on an "AS IS" BASIS,
+ | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ | See the License for the specific language governing permissions and
+ | limitations under the License.
+ |#
+
+(define-library (mcgoron ris exceptions)
+ (import (scheme base))
+ (export not-a-stream-error not-a-stream-error?
+ not-a-stream-error:obj
+ malformed-reference-error malformed-reference-error?
+ malformed-reference-error:stream
+ stream-error stream-error?
+ stream-error:stream)
+ (begin
+ (define-record-type <not-a-stream-error>
+ (not-a-stream-error obj)
+ not-a-stream-error?
+ (obj not-a-stream-error:obj))
+ (define-record-type <malformed-reference-error>
+ (malformed-reference-error stream)
+ malformed-reference-error?
+ (stream malformed-reference-error:stream))
+ (define-record-type <stream-error>
+ (stream-error stream)
+ stream-error?
+ (stream stream-error:stream))))
+
diff --git a/mcgoron.ris.scm b/mcgoron.ris.parse.scm
index 93e8d85..3711a96 100644
--- a/mcgoron.ris.scm
+++ b/mcgoron.ris.parse.scm
@@ -14,21 +14,6 @@
| limitations under the License.
|#
-(define-record-type <not-a-stream-error>
- (not-a-stream-error obj)
- not-a-stream-error?
- (obj not-a-stream-error:obj))
-
-(define-record-type <malformed-reference-error>
- (malformed-reference-error stream)
- malformed-reference-error?
- (stream malformed-reference-error:stream))
-
-(define-record-type <stream-error>
- (stream-error stream)
- stream-error?
- (stream stream-error:stream))
-
;;; Stream destructors.
(define (stream-pair=> stream)
diff --git a/mcgoron.ris.sld b/mcgoron.ris.parse.sld
index 22fa6a9..aa02ac0 100644
--- a/mcgoron.ris.sld
+++ b/mcgoron.ris.parse.sld
@@ -14,9 +14,10 @@
| limitations under the License.
|#
-(define-library (mcgoron ris)
+(define-library (mcgoron ris parse)
(import (scheme base) (scheme char)
(srfi 214) (srfi 128) (srfi 146) (srfi 26) (srfi 41)
- (mcgoron cond-thunk) (mcgoron cond-thunk values))
+ (mcgoron cond-thunk) (mcgoron cond-thunk values)
+ (mcgoron ris exceptions))
(export ris->mapping)
- (include "mcgoron.ris.scm")) \ No newline at end of file
+ (include "mcgoron.ris.parse.scm")) \ No newline at end of file
diff --git a/sris.egg b/sris.egg
new file mode 100644
index 0000000..bfb8566
--- /dev/null
+++ b/sris.egg
@@ -0,0 +1,14 @@
+((author "Peter McGoron")
+ (version "0.1.0")
+ (synopsis "Parse RIS files")
+ (category "parsing")
+ (license "Apache-2.0")
+ (dependencies "r7rs")
+ (test-dependencies "test")
+ (components (extension mcgoron.ris.exceptions
+ (source "mcgoron.ris.exceptions.sld")
+ (csc-options "-R" "r7rs" "-X" "r7rs"))
+ (extension mcgoron.ris.parse
+ (source "mcgoron.ris.parse.sld")
+ (csc-options "-R" "r7rs" "-X" "r7rs")
+ (component-dependencies mcgoron.ris.exceptions))))
diff --git a/test/10.1038_s41467-022-34369-4-citation.ris b/tests/10.1038_s41467-022-34369-4-citation.ris
index 37ef355..37ef355 100644
--- a/test/10.1038_s41467-022-34369-4-citation.ris
+++ b/tests/10.1038_s41467-022-34369-4-citation.ris
diff --git a/test/test.scm b/tests/run.scm
index 2b7441a..1d80564 100644
--- a/test/test.scm
+++ b/tests/run.scm
@@ -14,9 +14,7 @@
| limitations under the License.
|#
-(import r7rs)
-(load "../mcgoron.ris.sld")
-(import (mcgoron ris) test (srfi 146) (srfi 214))
+(import r7rs (mcgoron ris parse) test (srfi 146) (srfi 214))
(define file
(call-with-input-file "10.1038_s41467-022-34369-4-citation.ris" ris->mapping))
@@ -63,3 +61,4 @@
(test-ref "DO" "10.1038/s41467-022-34369-4")
(test-ref "ID" "Prudkovskiy2022")
(test-end "10.1038_s41467-022-34369-4-citation.ris")
+(test-exit)