nydp-kalendor 0.0.3 → 0.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.zeiger.yml +28 -0
- data/lib/lisp/kalendor-000-core.nydp +80 -53
- data/lib/nydp/kalendor.rb +19 -10
- data/lib/nydp/kalendor/version.rb +1 -1
- data/nydp-kalendor.gemspec +1 -1
- metadata +8 -7
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 34b859969223925ef1468c2df21c66809dc5f68d
|
4
|
+
data.tar.gz: 34c85ac82dc02e79556d70ca5d1d5ead5263b734
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 1692dd35f128df42c977c36b763682c545207e1d1e2d111939a73a2860014c962e1970c795af3519906ca242ea5a3356c7b9267db0cbcb32938656878894908a
|
7
|
+
data.tar.gz: de2eda5c3aadd87edb4823ab6a622c793899ac8d977643b46e0155c1567efbf0664f116b8d30df021c81d292be02cf81d611afed23957127f7d5b38f7d0291d9
|
data/.zeiger.yml
ADDED
@@ -0,0 +1,28 @@
|
|
1
|
+
search:
|
2
|
+
- "bin/**/*"
|
3
|
+
- "lib/**/*"
|
4
|
+
- "spec/**/*"
|
5
|
+
- "*.gemspec"
|
6
|
+
- ".*.yml"
|
7
|
+
- ".git?*"
|
8
|
+
- "Gemfile*"
|
9
|
+
- README
|
10
|
+
ignore:
|
11
|
+
- .doc$
|
12
|
+
- .ods$
|
13
|
+
- .gz$
|
14
|
+
- .png$
|
15
|
+
- .gif$
|
16
|
+
- .zip$
|
17
|
+
- .jpg$
|
18
|
+
- .xcf$
|
19
|
+
- .pdf$
|
20
|
+
- /select2/.*.js$
|
21
|
+
stats:
|
22
|
+
nydp:
|
23
|
+
- ".*\\.nydp"
|
24
|
+
code:
|
25
|
+
- "lib/.*\\.(rb|rake)"
|
26
|
+
test:
|
27
|
+
- "spec/.*"
|
28
|
+
- "test/.*"
|
@@ -10,7 +10,6 @@
|
|
10
10
|
;;
|
11
11
|
;; simple builders
|
12
12
|
;;
|
13
|
-
;; * kalendor-build/named
|
14
13
|
;; * kalendor-build/annual
|
15
14
|
;; * kalendor-build/union
|
16
15
|
;; * kalendor-build/intersect
|
@@ -28,23 +27,24 @@
|
|
28
27
|
|
29
28
|
(chapter-start 'kalendor "utilities for defining, building, and manipulating calendars. ")
|
30
29
|
|
31
|
-
(dox-add-doc 'kalendor-build/named 'def '("
|
30
|
+
(dox-add-doc 'kalendor-build/named 'def '("apply a name and label to a calendar") '(kal name label) nil '(kalendor))
|
32
31
|
(dox-add-doc 'kalendor-build/weekday 'def '("all dates for the given day of the week ;
|
33
32
|
if there is a second integer parameter n,
|
34
|
-
limit to the nth of the given day each month")
|
35
|
-
(dox-add-doc 'kalendor-build/annual 'def '("the same specified date in every year")
|
36
|
-
(dox-add-doc 'kalendor-build/union 'def '("the union of all dates provided by the given calendars")
|
37
|
-
(dox-add-doc 'kalendor-build/intersect 'def '("the intersection of all dates provided by the given calendars")
|
38
|
-
(dox-add-doc 'kalendor-build/subtract 'def '("all the dates of 'keep, except for any dates in 'toss")
|
39
|
-
(dox-add-doc 'kalendor-build/list 'def '("a preset list of dates")
|
40
|
-
(dox-add-doc 'kalendor-build/interval 'def '("all the dates from 'from upto 'upto (inclusive)")
|
33
|
+
limit to the nth of the given day each month") '(day n) nil '(kalendor))
|
34
|
+
(dox-add-doc 'kalendor-build/annual 'def '("the same specified date in every year") '(date month) nil '(kalendor))
|
35
|
+
(dox-add-doc 'kalendor-build/union 'def '("the union of all dates provided by the given calendars") 'args nil '(kalendor))
|
36
|
+
(dox-add-doc 'kalendor-build/intersect 'def '("the intersection of all dates provided by the given calendars") 'args nil '(kalendor))
|
37
|
+
(dox-add-doc 'kalendor-build/subtract 'def '("all the dates of 'keep, except for any dates in 'toss") '(keep toss) nil '(kalendor))
|
38
|
+
(dox-add-doc 'kalendor-build/list 'def '("a preset list of dates") 'args nil '(kalendor))
|
39
|
+
(dox-add-doc 'kalendor-build/interval 'def '("all the dates from 'from upto 'upto (inclusive)") '(from upto) nil '(kalendor))
|
41
40
|
(dox-add-doc 'kalendor-build/month 'def '("all the dates in the given month, every year.
|
42
|
-
'month is an integer, january is 1")
|
43
|
-
(dox-add-doc 'kalendor/find 'def '("find the given calendar in the store")
|
44
|
-
(dox-add-doc 'kalendor/add 'def '("add the given calendar to the store")
|
45
|
-
(dox-add-doc 'kalendor/delete 'def '("remove the given calendar from the store")
|
46
|
-
(dox-add-doc 'kalendor/names 'def '("get the list of stored calendar names")
|
47
|
-
(dox-add-doc 'kalendor/list 'def '("get the list of stored calendars")
|
41
|
+
'month is an integer, january is 1") '(month) nil '(kalendor))
|
42
|
+
(dox-add-doc 'kalendor/find 'def '("find the given calendar in the store") '(name) nil '(kalendor))
|
43
|
+
(dox-add-doc 'kalendor/add 'def '("add the given calendar to the store") '(kal) nil '(kalendor))
|
44
|
+
(dox-add-doc 'kalendor/delete 'def '("remove the given calendar from the store") '(name) nil '(kalendor))
|
45
|
+
(dox-add-doc 'kalendor/names 'def '("get the list of stored calendar names") nil nil '(kalendor))
|
46
|
+
(dox-add-doc 'kalendor/list 'def '("get the list of stored calendars") nil nil '(kalendor))
|
47
|
+
(dox-add-doc 'kalendor/dates 'def '("get the set of dates from calendar between the given dates") '(kal from upto) nil '(kalendor))
|
48
48
|
|
49
49
|
(assign kalendor/substitutions
|
50
50
|
{
|
@@ -161,87 +161,114 @@
|
|
161
161
|
october
|
162
162
|
{ en "October school holidays, France"
|
163
163
|
fr "vacances scolaires France, octobre"
|
164
|
-
de "Schulferien
|
164
|
+
de "Schulferien Frankreich, Oktober" }
|
165
165
|
(union (interval "2015-10-17" "2015-11-01")
|
166
166
|
(interval "2016-10-19" "2016-11-02")
|
167
|
-
(interval "2017-10-21" "2017-11-05")
|
167
|
+
(interval "2017-10-21" "2017-11-05")
|
168
|
+
(interval "2018-10-20" "2018-11-04")
|
169
|
+
(interval "2019-10-19" "2019-11-03")
|
170
|
+
))
|
168
171
|
|
169
172
|
(kalendor/private france/private
|
170
173
|
december
|
171
174
|
{ en "December school holidays, France"
|
172
|
-
fr "
|
173
|
-
de "Schulferien
|
175
|
+
fr "Vacances scolaires France, décembre"
|
176
|
+
de "Schulferien Frankreich, Dezember" }
|
174
177
|
(union (interval "2015-12-19" "2016-01-03")
|
175
178
|
(interval "2016-12-17" "2017-01-02")
|
176
|
-
(interval "2017-12-23" "2018-01-07")
|
179
|
+
(interval "2017-12-23" "2018-01-07")
|
180
|
+
(interval "2018-12-22" "2019-01-06")
|
181
|
+
(interval "2019-12-21" "2020-01-05")
|
182
|
+
))
|
177
183
|
|
178
184
|
(kalendor/private france/private
|
179
|
-
winter/zone-
|
180
|
-
{ en "Winter school holidays, France, Zone
|
181
|
-
fr "
|
182
|
-
de "Schulferien
|
183
|
-
(union (interval "2016-02-
|
184
|
-
(interval "2017-02-
|
185
|
-
(interval "2018-02-
|
185
|
+
winter/zone-a
|
186
|
+
{ en "Winter school holidays, France, Zone A"
|
187
|
+
fr "Vacances scolaires France, hiver, zone A"
|
188
|
+
de "Schulferien Frankreich, Winter, Zone A" }
|
189
|
+
(union (interval "2016-02-13" "2016-02-29")
|
190
|
+
(interval "2017-02-18" "2017-03-05")
|
191
|
+
(interval "2018-02-10" "2018-02-25")
|
192
|
+
(interval "2019-02-16" "2019-03-03")
|
193
|
+
(interval "2020-02-22" "2020-03-08")
|
194
|
+
))
|
186
195
|
|
187
196
|
(kalendor/private france/private
|
188
197
|
winter/zone-b
|
189
198
|
{ en "Winter school holidays, France, Zone B"
|
190
|
-
fr "
|
191
|
-
de "Schulferien
|
199
|
+
fr "Vacances scolaires France, hiver, zone B"
|
200
|
+
de "Schulferien Frankreich, Winter, Zone B" }
|
192
201
|
(union (interval "2016-02-06" "2016-02-21")
|
193
202
|
(interval "2017-02-11" "2017-02-26")
|
194
|
-
(interval "2018-02-24" "2018-03-11")
|
203
|
+
(interval "2018-02-24" "2018-03-11")
|
204
|
+
(interval "2019-02-09" "2019-02-24")
|
205
|
+
(interval "2020-02-15" "2020-03-01")
|
206
|
+
))
|
195
207
|
|
196
208
|
(kalendor/private france/private
|
197
|
-
winter/zone-
|
198
|
-
{ en "Winter school holidays, France, Zone
|
199
|
-
fr "
|
200
|
-
de "Schulferien
|
201
|
-
(union (interval "2016-02-
|
202
|
-
(interval "2017-02-
|
203
|
-
(interval "2018-02-
|
209
|
+
winter/zone-c
|
210
|
+
{ en "Winter school holidays, France, Zone C"
|
211
|
+
fr "Vacances scolaires France, hiver, zone c"
|
212
|
+
de "Schulferien Frankreich, Winter, Zone C" }
|
213
|
+
(union (interval "2016-02-20" "2016-03-06")
|
214
|
+
(interval "2017-02-04" "2017-02-19")
|
215
|
+
(interval "2018-02-17" "2018-03-04")
|
216
|
+
(interval "2019-02-23" "2019-03-10")
|
217
|
+
(interval "2020-02-08" "2020-02-23")
|
218
|
+
))
|
204
219
|
|
205
220
|
(kalendor/private france/private
|
206
221
|
easter/zone-a
|
207
222
|
{ en "Easter school holidays, France, Zone C"
|
208
|
-
fr "
|
209
|
-
de "Schulferien
|
223
|
+
fr "Vacances scolaires France, Paques, zone c"
|
224
|
+
de "Schulferien Frankreich, Ostern, Zone C" }
|
210
225
|
(union (interval "2016-04-16" "2016-05-01")
|
211
226
|
(interval "2017-04-01" "2017-04-17")
|
212
|
-
(interval "2018-04-14" "2018-04-29")
|
227
|
+
(interval "2018-04-14" "2018-04-29")
|
228
|
+
(interval "2019-04-13" "2019-04-28")
|
229
|
+
(interval "2020-04-18" "2020-05-03")
|
230
|
+
))
|
213
231
|
|
214
232
|
(kalendor/private france/private
|
215
233
|
easter/zone-b
|
216
234
|
{ en "Easter school holidays, France, Zone B"
|
217
|
-
fr "
|
218
|
-
de "Schulferien
|
235
|
+
fr "Vacances scolaires France, Paques, zone B"
|
236
|
+
de "Schulferien Frankreich, Ostern, Zone B" }
|
219
237
|
(union (interval "2016-04-02" "2016-04-17")
|
220
238
|
(interval "2017-04-08" "2017-04-23")
|
221
|
-
(interval "2018-04-21" "2018-05-06")
|
239
|
+
(interval "2018-04-21" "2018-05-06")
|
240
|
+
(interval "2019-04-06" "2019-04-22")
|
241
|
+
(interval "2020-04-18" "2020-04-26")
|
242
|
+
))
|
222
243
|
|
223
244
|
(kalendor/private france/private
|
224
|
-
easter/zone-
|
225
|
-
{ en "Easter school holidays, France, Zone
|
226
|
-
fr "
|
227
|
-
de "Schulferien
|
245
|
+
easter/zone-c
|
246
|
+
{ en "Easter school holidays, France, Zone C"
|
247
|
+
fr "Vacances scolaires France, Paques, zone C"
|
248
|
+
de "Schulferien Frankreich, Ostern, Zone C" }
|
228
249
|
(union (interval "2016-02-13" "2016-02-29")
|
229
250
|
(interval "2017-02-18" "2017-03-05")
|
230
|
-
(interval "2018-02-10" "2018-02-25")
|
251
|
+
(interval "2018-02-10" "2018-02-25")
|
252
|
+
(interval "2019-04-20" "2019-05-05")
|
253
|
+
(interval "2020-04-04" "2020-04-19")
|
254
|
+
))
|
231
255
|
|
232
256
|
(kalendor/private france/private
|
233
257
|
summer
|
234
258
|
{ en "Summer school holidays, France"
|
235
259
|
fr "vacances scolaires France, été"
|
236
|
-
de "Schulferien
|
260
|
+
de "Schulferien Frankreich, Sommer" }
|
237
261
|
(union (interval "2016-07-04" "2016-08-31")
|
238
262
|
(interval "2017-07-08" "2017-09-03")
|
239
|
-
(interval "2018-07-07" "2018-09-01")
|
263
|
+
(interval "2018-07-07" "2018-09-01")
|
264
|
+
(interval "2019-07-06" "2019-09-01")
|
265
|
+
(interval "2020-07-04" "2020-09-01")
|
266
|
+
))
|
240
267
|
|
241
268
|
(kalendor/public france-school-holidays-zone-c
|
242
269
|
{ en "school holidays, France, zone C"
|
243
270
|
fr "vacances scolaires France, zone C"
|
244
|
-
de "Schulferien
|
271
|
+
de "Schulferien Frankreich, Zone C" }
|
245
272
|
(union france/private.october
|
246
273
|
france/private.december
|
247
274
|
france/private.winter/zone-c
|
@@ -251,7 +278,7 @@
|
|
251
278
|
(kalendor/public france-school-holidays-zone-b
|
252
279
|
{ en "school holidays, France, zone B"
|
253
280
|
fr "vacances scolaires France, zone B"
|
254
|
-
de "Schulferien
|
281
|
+
de "Schulferien Frankreich, Zone B" }
|
255
282
|
(union france/private.october
|
256
283
|
france/private.december
|
257
284
|
france/private.winter/zone-b
|
@@ -261,7 +288,7 @@
|
|
261
288
|
(kalendor/public france-school-holidays-zone-a
|
262
289
|
{ en "school holidays, France, zone A"
|
263
290
|
fr "vacances scolaires France, zone A"
|
264
|
-
de "Schulferien
|
291
|
+
de "Schulferien Frankreich, Zone A" }
|
265
292
|
(union france/private.october
|
266
293
|
france/private.december
|
267
294
|
france/private.winter/zone-a
|
data/lib/nydp/kalendor.rb
CHANGED
@@ -1,4 +1,5 @@
|
|
1
1
|
require "kalendor"
|
2
|
+
require "kalendor/instance"
|
2
3
|
require "kalendor/instance/store"
|
3
4
|
require "nydp"
|
4
5
|
require "nydp/kalendor/version"
|
@@ -9,6 +10,13 @@ module Nydp
|
|
9
10
|
end
|
10
11
|
|
11
12
|
module Kalendor
|
13
|
+
module KalendorInstance
|
14
|
+
include Nydp::AutoWrap
|
15
|
+
def _nydp_whitelist
|
16
|
+
@_nwl ||= Set.new([:name, :label])
|
17
|
+
end
|
18
|
+
end
|
19
|
+
|
12
20
|
class Plugin
|
13
21
|
def name ; "Nydp/Kalendor plugin" ; end
|
14
22
|
|
@@ -29,6 +37,7 @@ module Nydp
|
|
29
37
|
end
|
30
38
|
|
31
39
|
def setup ns
|
40
|
+
::Kalendor::Instance::Base.send :include, ::Nydp::Kalendor::KalendorInstance
|
32
41
|
store = ns.kalendor_store = ::Kalendor::Instance::Store.new
|
33
42
|
factory = ::Kalendor::Factory.new
|
34
43
|
Symbol.mk("kalendor/add" , ns).assign(Nydp::Kalendor::Builtin::Store::Add .new store, factory)
|
@@ -82,16 +91,16 @@ module Nydp
|
|
82
91
|
end
|
83
92
|
|
84
93
|
module Builder
|
85
|
-
class Weekday < Base ; def builtin_invoke_3
|
86
|
-
def builtin_invoke_2
|
87
|
-
class Annual < Base ; def builtin_invoke_3
|
88
|
-
class Union < Base ; def builtin_invoke
|
89
|
-
class Intersect < Base ; def builtin_invoke
|
90
|
-
class Subtract < Base ; def builtin_invoke_3
|
91
|
-
class DateList < Base ; def builtin_invoke
|
92
|
-
class Interval < Base ; def builtin_invoke_3
|
93
|
-
class Month < Base ; def builtin_invoke_2
|
94
|
-
class Named < Base ; def builtin_invoke_4
|
94
|
+
class Weekday < Base ; def builtin_invoke_3 vm, day, nth ; vm.push_arg @factory.weekday day, nth ; end
|
95
|
+
def builtin_invoke_2 vm, day ; vm.push_arg @factory.weekday day ; end ; end
|
96
|
+
class Annual < Base ; def builtin_invoke_3 vm, date, month ; vm.push_arg @factory.annual date, month ; end ; end
|
97
|
+
class Union < Base ; def builtin_invoke vm, args ; vm.push_arg @factory.union *(n2r args) ; end ; end
|
98
|
+
class Intersect < Base ; def builtin_invoke vm, args ; vm.push_arg @factory.intersect *(n2r args) ; end ; end
|
99
|
+
class Subtract < Base ; def builtin_invoke_3 vm, keep, toss ; vm.push_arg @factory.subtract keep, toss ; end ; end
|
100
|
+
class DateList < Base ; def builtin_invoke vm, args ; vm.push_arg @factory.list *(n2r args) ; end ; end
|
101
|
+
class Interval < Base ; def builtin_invoke_3 vm, from, upto ; vm.push_arg @factory.interval from, upto ; end ; end
|
102
|
+
class Month < Base ; def builtin_invoke_2 vm, m ; vm.push_arg @factory.month m ; end ; end
|
103
|
+
class Named < Base ; def builtin_invoke_4 vm, n, lbl, k ; k.name, k.label = n2r(n), n2r(lbl) ; vm.push_arg k ; end ; end
|
95
104
|
end
|
96
105
|
end
|
97
106
|
end
|
data/nydp-kalendor.gemspec
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: nydp-kalendor
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Conan Dalton
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2020-01-31 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -84,16 +84,16 @@ dependencies:
|
|
84
84
|
name: kalendor
|
85
85
|
requirement: !ruby/object:Gem::Requirement
|
86
86
|
requirements:
|
87
|
-
- -
|
87
|
+
- - '='
|
88
88
|
- !ruby/object:Gem::Version
|
89
|
-
version:
|
89
|
+
version: 0.0.4
|
90
90
|
type: :runtime
|
91
91
|
prerelease: false
|
92
92
|
version_requirements: !ruby/object:Gem::Requirement
|
93
93
|
requirements:
|
94
|
-
- -
|
94
|
+
- - '='
|
95
95
|
- !ruby/object:Gem::Version
|
96
|
-
version:
|
96
|
+
version: 0.0.4
|
97
97
|
description: provides functions and macros to simplify date management within nydp
|
98
98
|
email:
|
99
99
|
- conan@conandalton.net
|
@@ -103,6 +103,7 @@ extensions: []
|
|
103
103
|
extra_rdoc_files: []
|
104
104
|
files:
|
105
105
|
- ".gitignore"
|
106
|
+
- ".zeiger.yml"
|
106
107
|
- Gemfile
|
107
108
|
- MIT-LICENSE.txt
|
108
109
|
- README.md
|
@@ -136,7 +137,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
136
137
|
version: '0'
|
137
138
|
requirements: []
|
138
139
|
rubyforge_project:
|
139
|
-
rubygems_version: 2.2.
|
140
|
+
rubygems_version: 2.5.2.3
|
140
141
|
signing_key:
|
141
142
|
specification_version: 4
|
142
143
|
summary: nydp integration for Kalendor gem
|