ragni-cas 0.1.5 → 0.1.6

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
  SHA1:
3
- metadata.gz: a4242043e0dc955dc78fbb741acc0ddea85e53e5
4
- data.tar.gz: ddb216f2b7e4fdda8abe923b0b73aa572387d878
3
+ metadata.gz: a095b6caf92bc41279d088acbed381ee4191cda1
4
+ data.tar.gz: b11a8bccb4cbac26b6f74fafe529e39254a83bbd
5
5
  SHA512:
6
- metadata.gz: fe985e5da5eacf6e38194b4973f076e93c219e29140172f4cc296058287c39452a65c47b5ab4cf38f67c361e240c38905ffb1920bf6fd6b61f1dc457b259c24b
7
- data.tar.gz: 7f80d8eaf5983d19de5bdda2886bd05f521ed7d2543d61b99ea54717a29bbf5946f18c5b45f0c221ab18e55f850bd5064f42b57fa9ed366ac7557ee627743d0a
6
+ metadata.gz: a461de33b8309b1fcc8fa27cb6bccf035cfc01ca2920f026d0bcf8cfb4ba3cea7f6f4605e4bbe037c4b23e6ef4f21afe0cc3f086017e6682270b057f89fc241b
7
+ data.tar.gz: a874d3fcb8ce0dad237f1354b745b962491f93f90578b69177a776582dc036d78e667ff3d319ef9dafbba9a857fa8a0d6f5c9c9822a4e930d75db579e8f5b71c
checksums.yaml.gz.sig CHANGED
Binary file
data.tar.gz.sig CHANGED
Binary file
data/lib/numbers.rb CHANGED
@@ -47,7 +47,7 @@ module CAS
47
47
  "Const(#{@x})"
48
48
  end
49
49
  end
50
-
50
+
51
51
  def self.const(f)
52
52
  CAS::Constant.new f
53
53
  end
@@ -95,7 +95,7 @@ module CAS
95
95
  end
96
96
 
97
97
  def to_code
98
- "#{@name}.call(fd)"
98
+ "#{@name}"
99
99
  end
100
100
 
101
101
  def args
@@ -111,8 +111,13 @@ module CAS
111
111
  end
112
112
  end # Number
113
113
 
114
- def self.variable(name)
115
- CAS::Variable.new name
114
+ def self.vars(*name)
115
+ (return CAS::Variable.new(name[0])) if name.size == 1
116
+ ret = []
117
+ name.each do |n|
118
+ ret << CAS::Variable.new(n)
119
+ end
120
+ return ret
116
121
  end
117
122
 
118
123
  # _______ ___ ___
data/lib/op.rb CHANGED
@@ -41,7 +41,8 @@ module CAS
41
41
  end
42
42
 
43
43
  def subs(dt)
44
- @x == dt[@x] if dt[@x].inspect == @x.inspect
44
+ @x == dt[@x] if dt.keys.include? @x
45
+ return self
45
46
  end
46
47
 
47
48
  def to_s
@@ -99,8 +100,10 @@ module CAS
99
100
  end
100
101
 
101
102
  def as_proc(bind)
102
- arguments = (self.args.map { |e| e.to_s }).join(" ")
103
- bind.eval("Proc.new do |#{arguments}, fd|; #{self.to_code}; end")
103
+ args_ext = self.args.map { |e| "#{e} = fd[\"#{e}\"];" }
104
+ code = "Proc.new do |fd|; #{args_ext.join " "} #{self.to_code}; end"
105
+ puts code
106
+ bind.eval(code)
104
107
  end
105
108
 
106
109
  def args
@@ -152,8 +155,9 @@ module CAS
152
155
  end
153
156
 
154
157
  def subs(dt)
155
- @x = dt[@x] if dt[@x].inspect @x.inspect
156
- @y = dt[@y] if dt[@y].inspect @y.inspect
158
+ @x = dt[@x] if dt.keys.include? @x
159
+ @y = dt[@y] if dt.keys.include? @y
160
+ return self
157
161
  end
158
162
 
159
163
  def call
data/lib/version.rb CHANGED
@@ -2,6 +2,6 @@
2
2
  #!/usr/bin/env ruby
3
3
 
4
4
  module CAS
5
- VERSION = [0, 1, 5]
5
+ VERSION = [0, 1, 6]
6
6
  end
7
7
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ragni-cas
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.5
4
+ version: 0.1.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Matteo Ragni
metadata.gz.sig CHANGED
Binary file