heliodor 0.1.0 → 0.1.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.rubocop.yml +3 -0
- data/README.md +2 -0
- data/lib/heliodor/db.rb +15 -0
- data/lib/heliodor/query.rb +4 -3
- data/lib/heliodor/query_internal.rb +19 -5
- data/lib/heliodor/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d6dc391394976e4bb9858c31eeb9c366dcdfe265
|
4
|
+
data.tar.gz: 26f0f253d330e5e3172eb034b5cb3255d618c001
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2c067b11daf5e347d0955fe5050203cb32bf99027188147bb6c7c308350a2b5b0e193798b830360ff2113147e5f0c365afd467be916beeb115dba52bd5e0d3c0
|
7
|
+
data.tar.gz: cb726d9a3dd2a99ed10438c5a7d6a420c05e1865f7c828b94005f946f3f63209e4821b20ee5cd6b5dbe1a0b6d10a950c111e81a23d3ef38484d5551fd594fe89
|
data/.rubocop.yml
CHANGED
data/README.md
CHANGED
@@ -36,6 +36,8 @@ db
|
|
36
36
|
|
37
37
|
```
|
38
38
|
|
39
|
+
More info can be found at [rubydoc](http://www.rubydoc.info/gems/heliodor)
|
40
|
+
|
39
41
|
## Development
|
40
42
|
|
41
43
|
After checking out the repo, run `bin/setup` to install dependencies. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
|
data/lib/heliodor/db.rb
CHANGED
@@ -43,6 +43,21 @@ class Heliodor::DB
|
|
43
43
|
end
|
44
44
|
end
|
45
45
|
|
46
|
+
# Deletes given table
|
47
|
+
# @param table [String]
|
48
|
+
# @return [self]
|
49
|
+
def delete(table)
|
50
|
+
if @tsafe
|
51
|
+
@mutex.synchronize do
|
52
|
+
@dat.delete(table)
|
53
|
+
write(dat)
|
54
|
+
end
|
55
|
+
else
|
56
|
+
write(dat)
|
57
|
+
@dat.delete(table)
|
58
|
+
end
|
59
|
+
end
|
60
|
+
|
46
61
|
# Returns array of table names
|
47
62
|
# @return [Array<String>] Array of table names
|
48
63
|
def tables
|
data/lib/heliodor/query.rb
CHANGED
@@ -125,11 +125,12 @@ class Heliodor::Query
|
|
125
125
|
self
|
126
126
|
end
|
127
127
|
|
128
|
-
# Deletes
|
128
|
+
# Deletes matching items
|
129
129
|
# @return [self]
|
130
|
-
def delete
|
130
|
+
def delete(dat = {})
|
131
131
|
actions << {
|
132
|
-
'type' => 'delete'
|
132
|
+
'type' => 'delete',
|
133
|
+
'dat' => dat
|
133
134
|
}
|
134
135
|
self
|
135
136
|
end
|
@@ -50,10 +50,24 @@ class Heliodor::Query
|
|
50
50
|
@dat = @full[@table]
|
51
51
|
end
|
52
52
|
|
53
|
-
def _delete
|
54
|
-
|
55
|
-
@
|
56
|
-
|
53
|
+
def _delete(dat)
|
54
|
+
d = @dat
|
55
|
+
@dat = d.map do |i|
|
56
|
+
if dat.class == Hash
|
57
|
+
if i >= dat
|
58
|
+
nil
|
59
|
+
else
|
60
|
+
i
|
61
|
+
end
|
62
|
+
else
|
63
|
+
if i == dat
|
64
|
+
nil
|
65
|
+
else
|
66
|
+
i
|
67
|
+
end
|
68
|
+
end
|
69
|
+
end
|
70
|
+
@dat
|
57
71
|
end
|
58
72
|
|
59
73
|
def _write
|
@@ -83,7 +97,7 @@ class Heliodor::Query
|
|
83
97
|
when 'rename'
|
84
98
|
_rename(action['to'])
|
85
99
|
when 'delete'
|
86
|
-
_delete
|
100
|
+
_delete(actopm['dat'])
|
87
101
|
when 'write'
|
88
102
|
_write
|
89
103
|
else
|
data/lib/heliodor/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: heliodor
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Nickolay
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-03-
|
11
|
+
date: 2017-03-11 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|