script_storage 1.2.0 → 1.2.2
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/lib/script_storage.rb +13 -9
- data/lib/script_storage_item.rb +7 -5
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7757fb5b1ce5e6d524bb454f4a593604349dde9f165ccd309907003deec2072f
|
4
|
+
data.tar.gz: 435ca77531b9aae571d61cf22e5a298d712d28066af721f712d02d5ac5e2f720
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e9a4a9638148891d449828cb9c0c1262ffc624d64224c472851dcc4ed7278acc1e05acbe15dde9987fda1583c1c6367003d8b4293f3a39e73dc8748325642cb5
|
7
|
+
data.tar.gz: a5653120db3522f3fd4a47073973a39c68452bfa310d3684e694c5dc97a6f36d02fcc3b6c2db132c6b36d7f7a6a710e0ebd212de71bfc7c2178daa5eb6841aa3
|
data/lib/script_storage.rb
CHANGED
@@ -1,21 +1,27 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
require 'script_storage_item'
|
2
4
|
|
3
5
|
@data = []
|
4
6
|
|
7
|
+
def path
|
8
|
+
"#{`pwd`.strip}/#{$PROGRAM_NAME}"
|
9
|
+
end
|
10
|
+
|
5
11
|
def write_file
|
6
|
-
File.open(
|
12
|
+
File.open(path) do |file|
|
7
13
|
file_data = "#{file.read.split("\n__END__\n")[0]}\n__END__\n"
|
8
14
|
|
9
15
|
@data.each do |v|
|
10
16
|
file_data += "#{v.show}\n"
|
11
17
|
end
|
12
18
|
|
13
|
-
File.write(
|
19
|
+
File.write(path, file_data)
|
14
20
|
end
|
15
21
|
end
|
16
22
|
|
17
23
|
def load_storage
|
18
|
-
File.open(
|
24
|
+
File.open(path) do |file|
|
19
25
|
file_content = file.read
|
20
26
|
|
21
27
|
break if file_content.split("\n__END__\n").length == 1
|
@@ -24,7 +30,7 @@ def load_storage
|
|
24
30
|
|
25
31
|
file_data.scan(/([A-z]*)(.*[()]*):(.*)/).each do |raw|
|
26
32
|
type = raw[1].strip[1..-2]
|
27
|
-
type = '' if type
|
33
|
+
type = '' if type.nil?
|
28
34
|
|
29
35
|
case type
|
30
36
|
when 'array'
|
@@ -52,9 +58,7 @@ end
|
|
52
58
|
def write_storage(key, value)
|
53
59
|
if @data.include?(key)
|
54
60
|
@data.each do |v|
|
55
|
-
if v.key == key
|
56
|
-
v.value = value
|
57
|
-
end
|
61
|
+
v.value = value if v.key == key
|
58
62
|
end
|
59
63
|
else
|
60
64
|
@data.append(Item.new(key, value))
|
@@ -71,10 +75,10 @@ def delete_storage(key)
|
|
71
75
|
end
|
72
76
|
|
73
77
|
def delete_all_storage
|
74
|
-
File.open(
|
78
|
+
File.open(path) do |file|
|
75
79
|
file_data = file.read.split("\n__END__\n")[0]
|
76
80
|
|
77
|
-
File.write(
|
81
|
+
File.write(path, file_data)
|
78
82
|
end
|
79
83
|
end
|
80
84
|
|
data/lib/script_storage_item.rb
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
class Item
|
2
4
|
attr_accessor :key, :value
|
3
5
|
|
@@ -30,10 +32,10 @@ class Item
|
|
30
32
|
end
|
31
33
|
|
32
34
|
def ==(other)
|
33
|
-
if other.class == String
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
35
|
+
@key == if other.class == String
|
36
|
+
other
|
37
|
+
else
|
38
|
+
other.key
|
39
|
+
end
|
38
40
|
end
|
39
41
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: script_storage
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.2.
|
4
|
+
version: 1.2.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- TauchMe
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-
|
11
|
+
date: 2023-04-05 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: A simple gem that lets you store basic data in your ruby script without
|
14
14
|
needing to create a separate file for it
|
@@ -41,7 +41,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
41
41
|
- !ruby/object:Gem::Version
|
42
42
|
version: '0'
|
43
43
|
requirements: []
|
44
|
-
rubygems_version: 3.4.
|
44
|
+
rubygems_version: 3.4.10
|
45
45
|
signing_key:
|
46
46
|
specification_version: 4
|
47
47
|
summary: Save simple data in your script
|