template_class 1.2.2 → 1.3.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 735dddf04d44a0c4c68d440b9bd03cce3492a2fc1cd9a3ebad7c5c45693ab105
4
- data.tar.gz: 769971cbd1122fbc11ac80e587bef01d76fc1a4c24708747d9978f5956fc609a
3
+ metadata.gz: 668ba7c1bca879891ab4e3d88974a1b426004cf6aebd80d85ea814ba0eb00f3d
4
+ data.tar.gz: 90b2d1afb78fee8ef58227097e5b5a7b49505cccef447e6e458da94e12ef74e6
5
5
  SHA512:
6
- metadata.gz: b317516970986d38dc1e8f637ea481c861a6e9d54f0de880fddcac129a74b857431177dcbdd7df10ec52861e13e9450e911bfde2ab06a58fe55063b79d898451
7
- data.tar.gz: 4f387baf8ab79ff206af4222df6cdb481af980a1283e6cc76343bb35fd5cc65f2a47a37786ae3a144acd609fc219de95ace09d29b4dd2e8415b17d4581309861
6
+ metadata.gz: 6b288596d3e5612c4fe8e02e0ba6e23201b370839d6f6d6d42bd21a86c2a284f02e42e13208d350eae1faa74f8ef4fb3bbe02f6d8b36d4a4734a479432a6df1d
7
+ data.tar.gz: 13a7d6ceb090b5c4303061aaaea61fa04520fddb52c980e08e6ba8090ccd8379c7ebd40ddd8a60d458167bda7930adcdf4ab6a58d044e5ca46987afee958be7d
data/CHANGELOG.md CHANGED
@@ -8,6 +8,12 @@
8
8
  ### Bug fixes
9
9
  )-->
10
10
 
11
+ ## 1.3.0 2025-02-17
12
+
13
+ ### New features
14
+
15
+ - Allow for template classes to create instances with `new`.
16
+
11
17
  ## 1.2.2 2025-01-29
12
18
 
13
19
  ### Bug fixes
data/README.md CHANGED
@@ -26,7 +26,7 @@ gem install template_class
26
26
 
27
27
  ## Usage
28
28
 
29
- Include `TemplateClass::Template` in the class or module you want to make into a template. You can't make instances of a template; instead, you need to *specialize* it to some parameter. By default, any new specialization is an empty class. To define how a specialization is defined from a parameter, call `resolve_template_specialization`. The block you pass will be yielded the parameter that's specializing the template and a class constructor that makes it possible to recursively use the new specialization.
29
+ Include `TemplateClass::Template` in the class or module you want to make into a template. You can still make instances of a template, but you are expected to *specialize* it to some parameter. By default, any new specialization is an empty class. To define how a specialization is defined from a parameter, call `resolve_template_specialization`. The block you pass will be yielded the parameter that's specializing the template and a class constructor that makes it possible to recursively use the new specialization.
30
30
 
31
31
  ```ruby
32
32
  class List
@@ -12,7 +12,6 @@ module TemplateClass
12
12
  instance_accessor: false
13
13
 
14
14
  singleton_class.delegate :[], :[]=, to: :cache
15
- singleton_class.undef_method :new
16
15
  end
17
16
 
18
17
  class CacheClassConstructor
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module TemplateClass
4
- VERSION = '1.2.2'
4
+ VERSION = '1.3.0'
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: template_class
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.2
4
+ version: 1.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Moku S.r.l.
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: exe
11
11
  cert_chain: []
12
- date: 2025-01-29 00:00:00.000000000 Z
12
+ date: 2025-02-17 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: activesupport