smelter 0.1.2 → 0.1.3
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/smelter/extendable.rb +7 -7
- data/lib/smelter/scriptable.rb +9 -9
- data/lib/smelter/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a6ae48aba51812c92519efa7e43aa4a29fba3fee
|
4
|
+
data.tar.gz: 8c254a448cb7642308bbe335f11404cf6aa884e3
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a4a21e7196a19df82869e9f61359f479f1354c1f6be1afe8f63a7847d6b657cb03c98803518821c69a8d9e7943e3c28a33c789b5a35d71d5fb0fa6931f2cb883
|
7
|
+
data.tar.gz: 3b7e61f08159bb68525e6d20e461ca92d263d4c0198a508bb339c27cb9eea143712dff6cce0258ca63e73d9c351255fb6e906037f3fb908187c1adbcf4534739
|
data/lib/smelter/extendable.rb
CHANGED
@@ -6,8 +6,8 @@ module Smelter
|
|
6
6
|
# I.e. as with an ActiveRecord model
|
7
7
|
# end
|
8
8
|
#
|
9
|
-
# def
|
10
|
-
# returns the
|
9
|
+
# def id
|
10
|
+
# returns the id of the script
|
11
11
|
# end
|
12
12
|
#
|
13
13
|
# def source
|
@@ -23,7 +23,7 @@ module Smelter
|
|
23
23
|
end
|
24
24
|
|
25
25
|
def register
|
26
|
-
instance_eval source,
|
26
|
+
instance_eval source, id, 1
|
27
27
|
end
|
28
28
|
|
29
29
|
module ClassMethods
|
@@ -38,13 +38,13 @@ module Smelter
|
|
38
38
|
@registry ||= ThreadSafe::Cache.new
|
39
39
|
end
|
40
40
|
|
41
|
-
def register(
|
41
|
+
def register(extension_id, &block)
|
42
42
|
@registry ||= ThreadSafe::Cache.new
|
43
|
-
@registry[
|
43
|
+
@registry[extension_id.to_s] = block
|
44
44
|
end
|
45
45
|
|
46
|
-
def define(
|
47
|
-
definition_proxy = DefinitionProxy.new(
|
46
|
+
def define(extension_id, &block)
|
47
|
+
definition_proxy = DefinitionProxy.new(extension_id)
|
48
48
|
definition_proxy.instance_eval(&block)
|
49
49
|
end
|
50
50
|
end
|
data/lib/smelter/scriptable.rb
CHANGED
@@ -7,12 +7,12 @@ module Smelter
|
|
7
7
|
#
|
8
8
|
# runner_include Buzzsaw::DSL
|
9
9
|
#
|
10
|
-
# def self.
|
10
|
+
# def self.find(id)
|
11
11
|
# returns a script object
|
12
12
|
# end
|
13
13
|
#
|
14
|
-
# def
|
15
|
-
# returns the
|
14
|
+
# def id
|
15
|
+
# returns the id of the script
|
16
16
|
# end
|
17
17
|
#
|
18
18
|
# def source
|
@@ -30,7 +30,7 @@ module Smelter
|
|
30
30
|
# NOTE: This returns a populated instance of ScriptRunner
|
31
31
|
# that has all extensions defined on it and contains
|
32
32
|
# Procs for the code defined in source
|
33
|
-
instance_eval source,
|
33
|
+
instance_eval source, id, 1
|
34
34
|
end
|
35
35
|
|
36
36
|
module ClassMethods
|
@@ -38,14 +38,14 @@ module Smelter
|
|
38
38
|
Smelter::ScriptRunner.include(mod)
|
39
39
|
end
|
40
40
|
|
41
|
-
def runner(
|
42
|
-
return ScriptRunner.new unless
|
43
|
-
script =
|
41
|
+
def runner(id=nil)
|
42
|
+
return ScriptRunner.new unless id
|
43
|
+
script = find(id)
|
44
44
|
script.register
|
45
45
|
end
|
46
46
|
|
47
|
-
def define(
|
48
|
-
definition_proxy = DefinitionProxy.new(
|
47
|
+
def define(id, &block)
|
48
|
+
definition_proxy = DefinitionProxy.new(id)
|
49
49
|
definition_proxy.instance_eval(&block)
|
50
50
|
end
|
51
51
|
end
|
data/lib/smelter/version.rb
CHANGED