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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: aa13412eb35a046cb93285d721b8d5ac24fead59
4
- data.tar.gz: d1d031829686394fdb19eb83ed618f0a6d2f5076
3
+ metadata.gz: 34b859969223925ef1468c2df21c66809dc5f68d
4
+ data.tar.gz: 34c85ac82dc02e79556d70ca5d1d5ead5263b734
5
5
  SHA512:
6
- metadata.gz: 1a5d712825b558a07827661547e0ebecc3b5c37afe2673c845e45e6a2718c6962d9325b5bba99e965775debdc6a53317bfc5e5d2d7f5b86f7c75e10d0523f469
7
- data.tar.gz: 815082aab0181563dd393e5c031eacbfd7ae134908b37aeaccb0599365a253dd075ec6a9fc26141095419217c1ef795bc8a274fbc3213a2a47a3c2b25ad0bd91
6
+ metadata.gz: 1692dd35f128df42c977c36b763682c545207e1d1e2d111939a73a2860014c962e1970c795af3519906ca242ea5a3356c7b9267db0cbcb32938656878894908a
7
+ data.tar.gz: de2eda5c3aadd87edb4823ab6a622c793899ac8d977643b46e0155c1567efbf0664f116b8d30df021c81d292be02cf81d611afed23957127f7d5b38f7d0291d9
@@ -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 '("store a new calendar under the given name") '(name label expr) nil '(kalendor))
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") '(day n) nil '(kalendor))
35
- (dox-add-doc 'kalendor-build/annual 'def '("the same specified date in every year") '(date month) nil '(kalendor))
36
- (dox-add-doc 'kalendor-build/union 'def '("the union of all dates provided by the given calendars") 'args nil '(kalendor))
37
- (dox-add-doc 'kalendor-build/intersect 'def '("the intersection of all dates provided by the given calendars") 'args nil '(kalendor))
38
- (dox-add-doc 'kalendor-build/subtract 'def '("all the dates of 'keep, except for any dates in 'toss") '(keep toss) nil '(kalendor))
39
- (dox-add-doc 'kalendor-build/list 'def '("a preset list of dates") 'args nil '(kalendor))
40
- (dox-add-doc 'kalendor-build/interval 'def '("all the dates from 'from upto 'upto (inclusive)") '(from upto) nil '(kalendor))
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") '(month) nil '(kalendor))
43
- (dox-add-doc 'kalendor/find 'def '("find the given calendar in the store") '(name) nil '(kalendor))
44
- (dox-add-doc 'kalendor/add 'def '("add the given calendar to the store") '(kal) nil '(kalendor))
45
- (dox-add-doc 'kalendor/delete 'def '("remove the given calendar from the store") '(name) nil '(kalendor))
46
- (dox-add-doc 'kalendor/names 'def '("get the list of stored calendar names") nil nil '(kalendor))
47
- (dox-add-doc 'kalendor/list 'def '("get the list of stored calendars") nil nil '(kalendor))
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 France, Oktober" }
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 "vacances scolaires France, décembre"
173
- de "Schulferien France, Dezember" }
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-c
180
- { en "Winter school holidays, France, Zone C"
181
- fr "vacances scolaires France, hiver, zone c"
182
- de "Schulferien France, Winter, Zone C" }
183
- (union (interval "2016-02-20" "2016-03-06")
184
- (interval "2017-02-04" "2017-02-19")
185
- (interval "2018-02-17" "2018-03-04")))
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 "vacances scolaires France, hiver, zone B"
191
- de "Schulferien France, Winter, Zone B" }
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-a
198
- { en "Winter school holidays, France, Zone A"
199
- fr "vacances scolaires France, hiver, zone A"
200
- de "Schulferien France, Winter, Zone A" }
201
- (union (interval "2016-02-13" "2016-02-29")
202
- (interval "2017-02-18" "2017-03-05")
203
- (interval "2018-02-10" "2018-02-25")))
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 "vacances scolaires France, Paques, zone c"
209
- de "Schulferien France, Ostern, Zone C" }
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 "vacances scolaires France, Paques, zone B"
218
- de "Schulferien France, Ostern, Zone B" }
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-a
225
- { en "Easter school holidays, France, Zone A"
226
- fr "vacances scolaires France, Paques, zone A"
227
- de "Schulferien France, Ostern, Zone A" }
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 France, Sommer" }
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 France, Zone C" }
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 France, Zone B" }
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 France, Zone A" }
291
+ de "Schulferien Frankreich, Zone A" }
265
292
  (union france/private.october
266
293
  france/private.december
267
294
  france/private.winter/zone-a
@@ -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 vm, day, nth ; vm.push_arg @factory.weekday day, nth ; end
86
- def builtin_invoke_2 vm, day ; vm.push_arg @factory.weekday day ; end ; end
87
- class Annual < Base ; def builtin_invoke_3 vm, date, month ; vm.push_arg @factory.annual date, month ; end ; end
88
- class Union < Base ; def builtin_invoke vm, args ; vm.push_arg @factory.union *(n2r args) ; end ; end
89
- class Intersect < Base ; def builtin_invoke vm, args ; vm.push_arg @factory.intersect *(n2r args) ; end ; end
90
- class Subtract < Base ; def builtin_invoke_3 vm, keep, toss ; vm.push_arg @factory.subtract keep, toss ; end ; end
91
- class DateList < Base ; def builtin_invoke vm, args ; vm.push_arg @factory.list *(n2r args) ; end ; end
92
- class Interval < Base ; def builtin_invoke_3 vm, from, upto ; vm.push_arg @factory.interval from, upto ; end ; end
93
- class Month < Base ; def builtin_invoke_2 vm, m ; vm.push_arg @factory.month m ; end ; end
94
- class Named < Base ; def builtin_invoke_4 vm, name, label, kal ; vm.push_arg @factory.named n2r(name), n2r(label), kal ; end ; end
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
@@ -1,5 +1,5 @@
1
1
  module Nydp
2
2
  module Kalendor
3
- VERSION = "0.0.3"
3
+ VERSION = "0.0.4"
4
4
  end
5
5
  end
@@ -23,5 +23,5 @@ Gem::Specification.new do |spec|
23
23
  spec.add_development_dependency 'rspec_numbering_formatter'
24
24
 
25
25
  spec.add_dependency 'nydp', '~> 0.2'
26
- spec.add_dependency 'kalendor'
26
+ spec.add_dependency 'kalendor', '0.0.4'
27
27
  end
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.3
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: 2017-05-07 00:00:00.000000000 Z
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: '0'
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: '0'
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.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