striuct 0.4.4 → 0.7.0

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.
Files changed (91) hide show
  1. checksums.yaml +7 -0
  2. data/MIT-LICENSE.txt +21 -0
  3. data/README.md +20 -41
  4. data/lib/striuct.rb +3 -3
  5. data/lib/striuct/classmethods/README.md +2 -2
  6. data/lib/striuct/classmethods/adjustment.rb +15 -13
  7. data/lib/striuct/classmethods/attributes.rb +93 -91
  8. data/lib/striuct/classmethods/conflict_management.rb +109 -106
  9. data/lib/striuct/classmethods/constructor.rb +47 -54
  10. data/lib/striuct/classmethods/copy.rb +45 -43
  11. data/lib/striuct/classmethods/default.rb +23 -21
  12. data/lib/striuct/classmethods/enum.rb +46 -44
  13. data/lib/striuct/classmethods/fix.rb +23 -21
  14. data/lib/striuct/classmethods/hashdeepdupulicatable.rb +14 -16
  15. data/lib/striuct/classmethods/inner.rb +57 -64
  16. data/lib/striuct/classmethods/length.rb +12 -10
  17. data/lib/striuct/classmethods/macro.rb +109 -111
  18. data/lib/striuct/classmethods/names.rb +69 -65
  19. data/lib/striuct/classmethods/predicate.rb +131 -138
  20. data/lib/striuct/classmethods/requirements.rb +3 -1
  21. data/lib/striuct/classmethods/to_struct.rb +21 -18
  22. data/lib/striuct/classmethods/validation.rb +15 -13
  23. data/lib/striuct/instancemethods/README.md +2 -2
  24. data/lib/striuct/instancemethods/assign.rb +29 -27
  25. data/lib/striuct/instancemethods/cast.rb +28 -26
  26. data/lib/striuct/instancemethods/compare.rb +26 -24
  27. data/lib/striuct/instancemethods/default.rb +31 -29
  28. data/lib/striuct/instancemethods/delegate_class_methods.rb +36 -32
  29. data/lib/striuct/instancemethods/enum.rb +86 -84
  30. data/lib/striuct/instancemethods/getter.rb +39 -37
  31. data/lib/striuct/instancemethods/hashy.rb +99 -97
  32. data/lib/striuct/instancemethods/keyvalidatable.rb +8 -6
  33. data/lib/striuct/instancemethods/lock.rb +46 -44
  34. data/lib/striuct/instancemethods/object.rb +50 -48
  35. data/lib/striuct/instancemethods/requirements.rb +11 -9
  36. data/lib/striuct/instancemethods/safety.rb +11 -9
  37. data/lib/striuct/instancemethods/setter.rb +46 -49
  38. data/lib/striuct/instancemethods/to_s.rb +39 -37
  39. data/lib/striuct/instancemethods/validation.rb +31 -29
  40. data/lib/striuct/instancemethods/values.rb +52 -33
  41. data/lib/striuct/requirements.rb +3 -1
  42. data/lib/striuct/singleton_class.rb +12 -17
  43. data/lib/striuct/structs.rb +3 -3
  44. metadata +48 -186
  45. data/.gitignore +0 -35
  46. data/.travis.yml +0 -20
  47. data/.yardopts +0 -1
  48. data/Gemfile +0 -11
  49. data/History.old(~0.3.n).rdoc +0 -289
  50. data/MIT-LICENSE +0 -22
  51. data/Rakefile +0 -10
  52. data/benchmark/basics.rb +0 -56
  53. data/example/README.rb +0 -53
  54. data/example/example1.rb +0 -235
  55. data/example/example2.rb +0 -22
  56. data/example/see_trace.rb +0 -32
  57. data/striuct.gemspec +0 -36
  58. data/test/helper.rb +0 -5
  59. data/test/test_sglc-constructor.rb +0 -36
  60. data/test/test_subc-c-add_members.rb +0 -13
  61. data/test/test_subc-c-close_member.rb +0 -36
  62. data/test/test_subc-c-constructor.rb +0 -92
  63. data/test/test_subc-c-copy.rb +0 -71
  64. data/test/test_subc-c-freeze.rb +0 -36
  65. data/test/test_subc-c-inheritable.rb +0 -58
  66. data/test/test_subc-c-safety_naming.rb +0 -73
  67. data/test/test_subc-f-alias_member.rb +0 -54
  68. data/test/test_subc-f-enum.rb +0 -139
  69. data/test/test_subc-f-predicate.rb +0 -711
  70. data/test/test_subc-f-to_struct.rb +0 -61
  71. data/test/test_subc-f-validation_util.rb +0 -59
  72. data/test/test_subc-f_debug.rb +0 -39
  73. data/test/test_subc-f_name.rb +0 -525
  74. data/test/test_subc-i-accessor.rb +0 -138
  75. data/test/test_subc-i-adjuster.rb +0 -95
  76. data/test/test_subc-i-assign.rb +0 -53
  77. data/test/test_subc-i-basic.rb +0 -32
  78. data/test/test_subc-i-cast.rb +0 -27
  79. data/test/test_subc-i-compare.rb +0 -52
  80. data/test/test_subc-i-copy.rb +0 -23
  81. data/test/test_subc-i-default_value.rb +0 -129
  82. data/test/test_subc-i-freeze.rb +0 -19
  83. data/test/test_subc-i-hashlike.rb +0 -144
  84. data/test/test_subc-i-keyvalidatable.rb +0 -25
  85. data/test/test_subc-i-lock.rb +0 -40
  86. data/test/test_subc-i-must.rb +0 -30
  87. data/test/test_subc-i-to_s_family.rb +0 -26
  88. data/test/test_subc-i-validation_inference.rb +0 -51
  89. data/test/test_subc-i-validation_specific_conditions.rb +0 -297
  90. data/test/test_subc-i-validation_with_getter.rb +0 -33
  91. data/test/test_version.rb +0 -13
@@ -1,7 +1,7 @@
1
- class Striuct
1
+ # frozen_string_literal: true
2
2
 
3
+ class Striuct
3
4
  # namespace for .to_struct_class, #to_struct
4
5
  module Structs
5
6
  end
6
-
7
- end
7
+ end
metadata CHANGED
@@ -1,152 +1,84 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: striuct
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.4
5
- prerelease:
4
+ version: 0.7.0
6
5
  platform: ruby
7
6
  authors:
8
7
  - Kenichi Kamiya
9
- autorequire:
8
+ autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2013-06-01 00:00:00.000000000 Z
11
+ date: 2021-06-03 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: validation
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
- - - ~>
17
+ - - ">="
20
18
  - !ruby/object:Gem::Version
21
- version: 0.0.5
22
- type: :runtime
23
- prerelease: false
24
- version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
- requirements:
27
- - - ~>
28
- - !ruby/object:Gem::Version
29
- version: 0.0.5
30
- - !ruby/object:Gem::Dependency
31
- name: optionalargument
32
- requirement: !ruby/object:Gem::Requirement
33
- none: false
34
- requirements:
35
- - - ~>
36
- - !ruby/object:Gem::Version
37
- version: 0.0.3
38
- type: :runtime
39
- prerelease: false
40
- version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
- requirements:
43
- - - ~>
44
- - !ruby/object:Gem::Version
45
- version: 0.0.3
46
- - !ruby/object:Gem::Dependency
47
- name: keyvalidatable
48
- requirement: !ruby/object:Gem::Requirement
49
- none: false
50
- requirements:
51
- - - ~>
19
+ version: 0.2.2
20
+ - - "<"
52
21
  - !ruby/object:Gem::Version
53
- version: 0.0.5
22
+ version: 0.3.0
54
23
  type: :runtime
55
24
  prerelease: false
56
25
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
- requirements:
59
- - - ~>
60
- - !ruby/object:Gem::Version
61
- version: 0.0.5
62
- - !ruby/object:Gem::Dependency
63
- name: yard
64
- requirement: !ruby/object:Gem::Requirement
65
- none: false
66
- requirements:
67
- - - ! '>='
68
- - !ruby/object:Gem::Version
69
- version: 0.8.6.1
70
- - - <
71
- - !ruby/object:Gem::Version
72
- version: '2'
73
- type: :development
74
- prerelease: false
75
- version_requirements: !ruby/object:Gem::Requirement
76
- none: false
77
26
  requirements:
78
- - - ! '>='
27
+ - - ">="
79
28
  - !ruby/object:Gem::Version
80
- version: 0.8.6.1
81
- - - <
29
+ version: 0.2.2
30
+ - - "<"
82
31
  - !ruby/object:Gem::Version
83
- version: '2'
32
+ version: 0.3.0
84
33
  - !ruby/object:Gem::Dependency
85
- name: rake
34
+ name: optionalargument
86
35
  requirement: !ruby/object:Gem::Requirement
87
- none: false
88
36
  requirements:
89
- - - ! '>='
37
+ - - ">="
90
38
  - !ruby/object:Gem::Version
91
- version: '10'
92
- - - <
39
+ version: 0.5.1
40
+ - - "<"
93
41
  - !ruby/object:Gem::Version
94
- version: '20'
95
- type: :development
42
+ version: 0.6.0
43
+ type: :runtime
96
44
  prerelease: false
97
45
  version_requirements: !ruby/object:Gem::Requirement
98
- none: false
99
46
  requirements:
100
- - - ! '>='
47
+ - - ">="
101
48
  - !ruby/object:Gem::Version
102
- version: '10'
103
- - - <
49
+ version: 0.5.1
50
+ - - "<"
104
51
  - !ruby/object:Gem::Version
105
- version: '20'
52
+ version: 0.6.0
106
53
  - !ruby/object:Gem::Dependency
107
- name: bundler
54
+ name: keyvalidatable
108
55
  requirement: !ruby/object:Gem::Requirement
109
- none: false
110
56
  requirements:
111
- - - ! '>='
57
+ - - ">="
112
58
  - !ruby/object:Gem::Version
113
- version: 1.3.5
114
- - - <
59
+ version: 0.2.0
60
+ - - "<"
115
61
  - !ruby/object:Gem::Version
116
- version: '2'
117
- type: :development
62
+ version: 0.3.0
63
+ type: :runtime
118
64
  prerelease: false
119
65
  version_requirements: !ruby/object:Gem::Requirement
120
- none: false
121
66
  requirements:
122
- - - ! '>='
67
+ - - ">="
123
68
  - !ruby/object:Gem::Version
124
- version: 1.3.5
125
- - - <
69
+ version: 0.2.0
70
+ - - "<"
126
71
  - !ruby/object:Gem::Version
127
- version: '2'
128
- description: ! "Struct++ library.\n\n---\n\n Validatable, Inheritable, Member Aliasing,\n
129
- \ Conflict Management, Default Value, Divide nil with unassign,\n Lock setter of
130
- each member, Hash flendly API, ... And more Struct++ features :)"
72
+ version: 0.3.0
73
+ description: " Struct + validation + inheritable + default_value + etc...\n"
131
74
  email:
132
75
  - kachick1+ruby@gmail.com
133
76
  executables: []
134
77
  extensions: []
135
78
  extra_rdoc_files: []
136
79
  files:
137
- - .gitignore
138
- - .travis.yml
139
- - .yardopts
140
- - Gemfile
141
- - History.old(~0.3.n).rdoc
142
- - MIT-LICENSE
80
+ - MIT-LICENSE.txt
143
81
  - README.md
144
- - Rakefile
145
- - benchmark/basics.rb
146
- - example/README.rb
147
- - example/example1.rb
148
- - example/example2.rb
149
- - example/see_trace.rb
150
82
  - lib/striuct.rb
151
83
  - lib/striuct/classmethods/README.md
152
84
  - lib/striuct/classmethods/adjustment.rb
@@ -187,101 +119,31 @@ files:
187
119
  - lib/striuct/requirements.rb
188
120
  - lib/striuct/singleton_class.rb
189
121
  - lib/striuct/structs.rb
190
- - striuct.gemspec
191
- - test/helper.rb
192
- - test/test_sglc-constructor.rb
193
- - test/test_subc-c-add_members.rb
194
- - test/test_subc-c-close_member.rb
195
- - test/test_subc-c-constructor.rb
196
- - test/test_subc-c-copy.rb
197
- - test/test_subc-c-freeze.rb
198
- - test/test_subc-c-inheritable.rb
199
- - test/test_subc-c-safety_naming.rb
200
- - test/test_subc-f-alias_member.rb
201
- - test/test_subc-f-enum.rb
202
- - test/test_subc-f-predicate.rb
203
- - test/test_subc-f-to_struct.rb
204
- - test/test_subc-f-validation_util.rb
205
- - test/test_subc-f_debug.rb
206
- - test/test_subc-f_name.rb
207
- - test/test_subc-i-accessor.rb
208
- - test/test_subc-i-adjuster.rb
209
- - test/test_subc-i-assign.rb
210
- - test/test_subc-i-basic.rb
211
- - test/test_subc-i-cast.rb
212
- - test/test_subc-i-compare.rb
213
- - test/test_subc-i-copy.rb
214
- - test/test_subc-i-default_value.rb
215
- - test/test_subc-i-freeze.rb
216
- - test/test_subc-i-hashlike.rb
217
- - test/test_subc-i-keyvalidatable.rb
218
- - test/test_subc-i-lock.rb
219
- - test/test_subc-i-must.rb
220
- - test/test_subc-i-to_s_family.rb
221
- - test/test_subc-i-validation_inference.rb
222
- - test/test_subc-i-validation_specific_conditions.rb
223
- - test/test_subc-i-validation_with_getter.rb
224
- - test/test_version.rb
225
- homepage: http://kachick.github.com/striuct/
122
+ homepage: https://github.com/kachick/striuct
226
123
  licenses:
227
124
  - MIT
228
- post_install_message:
125
+ metadata:
126
+ documentation_uri: https://kachick.github.io/striuct/
127
+ homepage_uri: https://github.com/kachick/striuct
128
+ source_code_uri: https://github.com/kachick/striuct
129
+ bug_tracker_uri: https://github.com/kachick/striuct/issues
130
+ post_install_message:
229
131
  rdoc_options: []
230
132
  require_paths:
231
133
  - lib
232
134
  required_ruby_version: !ruby/object:Gem::Requirement
233
- none: false
234
135
  requirements:
235
- - - ! '>='
136
+ - - ">="
236
137
  - !ruby/object:Gem::Version
237
- version: 1.9.2
138
+ version: 2.6.0
238
139
  required_rubygems_version: !ruby/object:Gem::Requirement
239
- none: false
240
140
  requirements:
241
- - - ! '>='
141
+ - - ">="
242
142
  - !ruby/object:Gem::Version
243
143
  version: '0'
244
144
  requirements: []
245
- rubyforge_project:
246
- rubygems_version: 1.8.23
247
- signing_key:
248
- specification_version: 3
249
- summary: Struct++ library. --- Validatable, Inheritable, Member Aliasing, Conflict
250
- Management, Default Value, Divide nil with unassign, Lock setter of each member,
251
- Hash flendly API, ... And more Struct++ features :)
252
- test_files:
253
- - test/helper.rb
254
- - test/test_sglc-constructor.rb
255
- - test/test_subc-c-add_members.rb
256
- - test/test_subc-c-close_member.rb
257
- - test/test_subc-c-constructor.rb
258
- - test/test_subc-c-copy.rb
259
- - test/test_subc-c-freeze.rb
260
- - test/test_subc-c-inheritable.rb
261
- - test/test_subc-c-safety_naming.rb
262
- - test/test_subc-f-alias_member.rb
263
- - test/test_subc-f-enum.rb
264
- - test/test_subc-f-predicate.rb
265
- - test/test_subc-f-to_struct.rb
266
- - test/test_subc-f-validation_util.rb
267
- - test/test_subc-f_debug.rb
268
- - test/test_subc-f_name.rb
269
- - test/test_subc-i-accessor.rb
270
- - test/test_subc-i-adjuster.rb
271
- - test/test_subc-i-assign.rb
272
- - test/test_subc-i-basic.rb
273
- - test/test_subc-i-cast.rb
274
- - test/test_subc-i-compare.rb
275
- - test/test_subc-i-copy.rb
276
- - test/test_subc-i-default_value.rb
277
- - test/test_subc-i-freeze.rb
278
- - test/test_subc-i-hashlike.rb
279
- - test/test_subc-i-keyvalidatable.rb
280
- - test/test_subc-i-lock.rb
281
- - test/test_subc-i-must.rb
282
- - test/test_subc-i-to_s_family.rb
283
- - test/test_subc-i-validation_inference.rb
284
- - test/test_subc-i-validation_specific_conditions.rb
285
- - test/test_subc-i-validation_with_getter.rb
286
- - test/test_version.rb
287
- has_rdoc:
145
+ rubygems_version: 3.1.4
146
+ signing_key:
147
+ specification_version: 4
148
+ summary: Struct++
149
+ test_files: []
data/.gitignore DELETED
@@ -1,35 +0,0 @@
1
- *.gem
2
- *.rbc
3
- .bundle
4
- .config
5
- coverage
6
- coverage.data
7
- InstalledFiles
8
- lib/bundler/man
9
- pkg
10
- rdoc
11
- spec/reports
12
- test/tmp
13
- test/version_tmp
14
- tmp
15
-
16
- # bundler
17
- vendor/
18
-
19
- # YARD artifacts
20
- .yardoc
21
- _yardoc
22
- doc/
23
-
24
- # tmp-old
25
- .old
26
-
27
- # editor
28
- *~
29
- .redcar
30
-
31
- # other
32
- *.lock
33
- *.bak
34
- tool/
35
- *\#*
data/.travis.yml DELETED
@@ -1,20 +0,0 @@
1
- language: ruby
2
-
3
- rvm:
4
- - ruby-head
5
- - 2.0.0
6
- - 1.9.3
7
- - 1.9.2
8
- - rbx-nightly-19mode
9
- - jruby-head
10
- - jruby-19mode
11
-
12
- matrix:
13
- allow_failures:
14
- - rvm: ruby-head
15
- - rvm: rbx-nightly-19mode
16
- - rvm: jruby-head
17
- - rvm: jruby-19mode
18
-
19
- before_install:
20
- - gem install bundler
data/.yardopts DELETED
@@ -1 +0,0 @@
1
- --readme README.md --private lib/**/*.rb --exclude attributes|hashdeepdupulicatable - MIT-LICENSE
data/Gemfile DELETED
@@ -1,11 +0,0 @@
1
- source 'https://rubygems.org'
2
-
3
- gemspec
4
-
5
- group :development do
6
- gem 'rake'
7
- end
8
-
9
- group :test do
10
- gem 'rake'
11
- end
@@ -1,289 +0,0 @@
1
- === 0.3.5.1 2012-9-14
2
-
3
- * Too minor changed :)
4
- Some doc & env
5
-
6
- === 0.3.5 2012-9-9
7
-
8
- * fix:
9
- * SubClass.dup, SubClass.clone
10
- * SubClass#replace_values
11
-
12
- === 0.3.4 2012-9-8
13
-
14
- * fix:
15
- * SubClass.#to_struct
16
- * SubClass#sufficient? (catch any error: error -> false)
17
-
18
- === 0.3.3 2012-9-7
19
-
20
- * modify:
21
- * SubClass#to_s
22
- * SubClass#inspect
23
-
24
- * fix:
25
- * SubClass.freeze
26
-
27
- * add:
28
- * compatibility with keyvalidatable-API
29
-
30
- === 0.3.2 2012-9-4
31
-
32
- * fix:
33
- * #assign
34
- * .for_pairs, .[]
35
-
36
- === 0.3.1 2012-9-2
37
-
38
- * add:
39
- * default value via member macro
40
-
41
- === 0.3.0 2012-4-3
42
-
43
- * modify:
44
- * use validation library (spin-off library)
45
-
46
- === 0.2.3 2012-4-2
47
-
48
- * fix:
49
- * Conditions.#NAND
50
- * Conditions.#XOR
51
- * Conditions.#XNOR
52
-
53
- === 0.2.2 2012-3-30
54
-
55
- * add:
56
- * aliases Conditions#[FUNC()] -> Conditions#[FUNC?()]
57
-
58
- * fix:
59
- * GENERICS check when build condition
60
- * arity checker when default with block parameter
61
-
62
- === 0.2.1 2012-1-30
63
-
64
- * delete:
65
- * Conditions#ANY, ALL
66
-
67
- * add:
68
- * can choose timing of validation (member with option and safety_setter? and more)
69
- * add Flavors (Useful flavor builders)
70
- * .#to_struct_class, #to_struct
71
- * #each_name_with_index (alias-> #each_member_with_index, #each_key_with_index)
72
-
73
- === 0.2.0 2012-1-27
74
-
75
- * delete:
76
- * constant StrictStruct
77
- * Eigen.#sufficient? (alias -> valid?, accept?)
78
-
79
- * modify:
80
- * conditions to a condition (use condition generator Conditions#OR)
81
- * to expr a flavor, before check condition
82
- * inference flag under option parameter
83
- * long macro names (define_xxx -> add_xxx)
84
-
85
- * add:
86
- * #each_pair_with_index
87
-
88
- === 0.1.7 2012-1-26
89
-
90
- * add:
91
- * default with Proc
92
- * detail error message in Subclass.#[]=
93
-
94
- * fix:
95
- * class duplicating
96
-
97
- === 0.1.6 2012-1-25
98
-
99
- * delete:
100
- * import.rb
101
-
102
- * modify:
103
- * Subclass.#define
104
- * naming risks (add bad name "_foo")
105
- * Conditions.#GENERICS (enum prior all? to each_value.all?)
106
- * timing of check default value
107
-
108
- * add:
109
- * detail error message in Subclass.#define
110
-
111
- * fix:
112
- * inherited behavior
113
-
114
- === 0.1.5 2012-1-17
115
-
116
- * add:
117
- * #lock, #lock?
118
- * some Specific Conditions
119
-
120
- * note:
121
- multiple conditions for 'or', dupulicated for direct throw member macro
122
- please use .#OR method in this case
123
-
124
- === 0.1.4 2012-1-16
125
-
126
- * modify:
127
- * trace logs
128
- * naming risks(add bad name "to_foo")
129
- * Subclass#unassign
130
-
131
- * add:
132
- * Specific Conditions
133
- (for Syntax Sugar of useful Functional Conditions)
134
- * Subclass.#each_index
135
- * Subclass.#valid?
136
- * Subclass#clear_at, reset_at
137
-
138
- === 0.1.3 2012-1-10
139
-
140
- * add:
141
- * Subclass.#alias_member
142
- * Subclass.#valid?
143
- * Subclass#valid?
144
-
145
- === 0.1.2 2012-1-9
146
-
147
- * modify:
148
- * Subclass.#hash
149
-
150
- * add:
151
- * Subclass.#to_yaml
152
-
153
- === 0.1.1 2011-12-26
154
-
155
- * modify:
156
- * Subclass.#sufficient?
157
-
158
- * add:
159
- * Subclass.#empty?
160
- * Subclass.#has_value? (value?)
161
- * Subclass.#flatten
162
- * Subclass.#select! (keep_if)
163
- * Subclass.#select
164
- * Subclass.#reject! (delete_if)
165
- * Subclass.#reject
166
- * Subclass.#assoc
167
- * Subclass.#rassoc
168
-
169
- * fix
170
- * Subclass.#sufficient?
171
-
172
- === 0.1.0 2011-12-25
173
-
174
- * modify:
175
- * Subclass.#define
176
-
177
- * add:
178
- * Subclass.#[] (alias load_pairs)
179
- * Subclass.#to_h
180
-
181
- === 0.0.11 2011-12-23
182
-
183
- * modify:
184
- * Subclass.#cname?
185
-
186
- * add:
187
- * inference checker
188
-
189
- === 0.0.10 2011-12-23
190
-
191
- * delete:
192
- * Subclass.#lock, Subclass.#unlock?
193
-
194
- * modify:
195
- * Subclass.#freeze
196
- * has_condition? -> has_conditions?
197
- * Subclass.#lock, Subclass.#lock? -> .close, .closed?
198
-
199
- * add:
200
- * Subclass.#protect_level # class macro
201
- * Subclass.#default?
202
-
203
- === 0.0.9 2011-12-21
204
-
205
- * delete:
206
- * Striuct.load_pairs
207
- * Subclass.#conditions
208
- * Subclass.#procedures
209
- * Subclass.#defaults
210
-
211
- * add:
212
- * Striuct.define
213
- * Subclass.#lock
214
- * Subclass.#default_for
215
-
216
- * fix:
217
- * Subclass.#inspect
218
- * Subclass.#to_s
219
-
220
- * note:
221
- * innner name changed "procedure" to "flavor"
222
-
223
- === 0.0.8 2011-12-18
224
-
225
- * modify:
226
- * Subclass.#define
227
- * Subclass.#accept?
228
- * functional checker's action:
229
- Proc: context to instance
230
- Method: === to call
231
-
232
- * add:
233
- * Subclass.#default
234
-
235
- * fix:
236
- * Subclass.#values_at
237
-
238
- === 0.0.7 2011-12-16
239
-
240
- * modify:
241
- * called macro's block to procedure
242
- * public to private Subclass.#unlock
243
-
244
- * add:
245
- * Subclass.#define
246
- * Subclass.#accept?
247
- * Subclass.#restrict?
248
- * Subclass.#assign?
249
- * Subclass.#assign
250
-
251
- * fix:
252
- * use clone method ( initialize_copy )
253
-
254
- === 0.0.6 2011-12-14
255
-
256
- * modify:
257
- * error type in some methods
258
-
259
- * add:
260
- * Subclass.#sufficent?
261
- * Subclass.#define
262
- * Subclass.#sufficent?
263
- * Subclass.#secure?
264
- * Subclass.#lock?
265
- * Subclass.#lock
266
- * Subclass.#unlock
267
-
268
- * fix:
269
- * typo
270
-
271
- === 0.0.5 2011-12-14
272
-
273
- * fix class constructor
274
- * modify #inspect
275
- * add arguments checks
276
-
277
- === 0.0.4 2011-12-13
278
-
279
- * divide modules for Subclass.#methods
280
- * modify return values for void methods
281
-
282
- === 0.0.3 2011-12-12
283
-
284
- === 0.0.2 2011-12-11
285
-
286
- === 0.0.1 2011-12-11
287
-
288
- * 1 major enhancement:
289
- * Initial release