railhead_memorize 0.1.4 → 0.2.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 8cd2149bf559cab624d7beb6297519844bb9fe284c3539fc85e368063ce69af7
4
- data.tar.gz: 402b2ff6b923f6830a02d771e8e76f4e9e5e8ef24138219558c267d9579cc11c
3
+ metadata.gz: ae6973a6c92a81ab5536e7ca55c7bb83ce551a1b1346b317f18faeaf261087e8
4
+ data.tar.gz: 8181232441b358691b084671dc22698e8ecb5b88b80694197e746103341de52a
5
5
  SHA512:
6
- metadata.gz: c6c9ea555ae432d00b05cf99cbb88ce66ca9b591e765368888bfd03efe6f26d50cb089ee0ebcf0af12abb5b591b5be89c83166d96e162989996291bf2cbf0311
7
- data.tar.gz: e5ff566690cdc9cb1415693a564a39636b1e4032d6c7d2df12f8be3640dd1dbb221178477649e9f25213a5c9aa0d107ba3d39b0e3501297f09960ca3045efcf8
6
+ metadata.gz: 969db4158c56ac6a58889b88ff1c30158bd2bc5910d4ed589174fd912fe6360a3a7c3bfac9fe9725c0a91bc569976f716e31e6b19a5cc92edaecc7c3bc206244
7
+ data.tar.gz: ddba9ecbe1fdce3e7d02b4c4d3fc5093fbaf7eb4c79495e6ffedd38b1ef80d0ec5b91f82dc728d9ac595a44cab1a2d039e43d25e725f385ec6ed3ea77072c096
@@ -1,46 +1,36 @@
1
- require 'active_support'
2
- require 'multi_json'
3
-
4
-
5
1
  module RailheadMemorize
6
2
 
7
3
  def self.included(base)
8
4
  base.extend ClassMethods
9
5
  end
10
6
 
7
+
11
8
  module ClassMethods
12
9
 
13
- def memorize(key, options = {})
14
- options.reverse_merge! :on_view => true
10
+ def memorize(key)
15
11
  class_eval <<-END
16
12
  alias #{key}_unmemorized #{key}
17
- before_create :initialize_memorized_#{key}
18
-
19
- def initialize_memorized_#{key}
20
- self.memorized_#{key} = MultiJson.dump(#{options[:default] ? options[:default].inspect : '[]'}) if respond_to?(:memorized_#{key})
21
- end
22
13
 
23
14
  def memorize_#{key}
24
- if respond_to?(:memorized_#{key}) and not frozen? and (memorized_#{key}.blank? or MultiJson.load(memorized_#{key}) != #{key}_unmemorized)
25
- update_column :memorized_#{key}, MultiJson.dump(#{key}_unmemorized)
15
+ unless frozen?
16
+ _memorize_#{key} = #{key}_unmemorized
17
+ if respond_to?(:memorized_#{key}) and (memorized_#{key}.blank? or MultiJson.load(memorized_#{key}) != _memorize_#{key})
18
+ update_column :memorized_#{key}, MultiJson.dump(_memorize_#{key})
19
+ end
20
+ _memorize_#{key}
26
21
  end
27
- @#{key} = nil
28
22
  end
29
23
 
30
24
  def #{key}
31
- @#{key} ||= if respond_to?(:memorized_#{key})
25
+ @_#{key} ||= if respond_to?(:memorized_#{key})
32
26
  if not memorized_#{key}.blank?
33
27
  begin
34
28
  MultiJson.load(memorized_#{key})
35
29
  rescue
36
30
  memorize_#{key}
37
- #{key}
38
31
  end
39
- elsif #{!!options[:on_view]}
40
- memorize_#{key}
41
- #{key}
42
32
  else
43
- #{key}_unmemorized
33
+ memorize_#{key}
44
34
  end
45
35
  else
46
36
  #{key}_unmemorized
@@ -58,6 +48,7 @@ module RailheadMemorizeLoader
58
48
  base.extend ClassMethods
59
49
  end
60
50
 
51
+
61
52
  module ClassMethods
62
53
 
63
54
  def use_memorize
@@ -1,11 +1,10 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = "railhead_memorize"
3
- s.version = "0.1.4"
4
- s.date = "2019-06-05"
3
+ s.version = "0.2.0"
4
+ s.date = "2021-08-03"
5
5
  s.summary = "RailheadMemorize is a Ruby on Rails plugin that easily memorize model functions."
6
6
  s.email = "bence.nagy@gmail.com"
7
7
  s.homepage = "http://github.com/nagybence/railhead_memorize"
8
- s.has_rdoc = true
9
8
  s.authors = ["Bence Nagy"]
10
9
  s.files = ["MIT-LICENSE",
11
10
  "README.rdoc",
metadata CHANGED
@@ -1,16 +1,16 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: railhead_memorize
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.4
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Bence Nagy
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-06-05 00:00:00.000000000 Z
11
+ date: 2021-08-03 00:00:00.000000000 Z
12
12
  dependencies: []
13
- description:
13
+ description:
14
14
  email: bence.nagy@gmail.com
15
15
  executables: []
16
16
  extensions: []
@@ -24,7 +24,7 @@ homepage: http://github.com/nagybence/railhead_memorize
24
24
  licenses:
25
25
  - MIT
26
26
  metadata: {}
27
- post_install_message:
27
+ post_install_message:
28
28
  rdoc_options:
29
29
  - "--main"
30
30
  - README.rdoc
@@ -41,8 +41,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
41
41
  - !ruby/object:Gem::Version
42
42
  version: '0'
43
43
  requirements: []
44
- rubygems_version: 3.0.2
45
- signing_key:
44
+ rubygems_version: 3.0.8
45
+ signing_key:
46
46
  specification_version: 4
47
47
  summary: RailheadMemorize is a Ruby on Rails plugin that easily memorize model functions.
48
48
  test_files: []