ragni-cas 0.1.2 → 0.1.4
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
- checksums.yaml.gz.sig +0 -0
- data/lib/numbers.rb +14 -0
- data/lib/op.rb +13 -1
- data/lib/ragni-cas.rb +2 -5
- data/lib/version.rb +7 -0
- data.tar.gz.sig +0 -0
- metadata +3 -2
- metadata.gz.sig +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3b2ffa2dcbd78af09927a604e69f2a565a81a37e
|
4
|
+
data.tar.gz: 134be78382ccefbada1ab75dbcc3869c4d4204e9
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: df5f85762fccdfce9d886aaadaec1b0648867e05bde256c0d24c3b8ae3b89bfb71863023bc14b36811352ca2b89f03002c5a80768a7f451da8e31566015bb643
|
7
|
+
data.tar.gz: c43b45ee2efab3ed5d4a786d76a9b4d10a1b69f0fa01949d03422b6ac21a8b35817c03aaf05f73129e2ceb2e4111892323790d83aa9a45daa0eee2f0bd822af8
|
checksums.yaml.gz.sig
CHANGED
Binary file
|
data/lib/numbers.rb
CHANGED
@@ -40,12 +40,22 @@ module CAS
|
|
40
40
|
# \ V / _` | '_| / _` | '_ \ / -_)
|
41
41
|
# \_/\__,_|_| |_\__,_|_.__/_\___|
|
42
42
|
class Variable < CAS::Op
|
43
|
+
@@counter = 0
|
44
|
+
@@vars = {}
|
45
|
+
|
46
|
+
def self.all_variables
|
47
|
+
@@vars
|
48
|
+
end
|
49
|
+
|
43
50
|
def initialize(name = "x")
|
44
51
|
self.is(name)
|
52
|
+
@@vars[@identifier] = self
|
53
|
+
@@counter = @@counter + 1
|
45
54
|
end
|
46
55
|
|
47
56
|
def is(name)
|
48
57
|
@name = name
|
58
|
+
@identifier = "var[#{@@counter}]"
|
49
59
|
end
|
50
60
|
|
51
61
|
def diff(v)
|
@@ -64,6 +74,10 @@ module CAS
|
|
64
74
|
"#{@name}"
|
65
75
|
end
|
66
76
|
|
77
|
+
def to_code
|
78
|
+
"#{@identifier}"
|
79
|
+
end
|
80
|
+
|
67
81
|
def simplify
|
68
82
|
return self
|
69
83
|
end
|
data/lib/op.rb
CHANGED
@@ -45,7 +45,7 @@ module CAS
|
|
45
45
|
end
|
46
46
|
|
47
47
|
def to_code
|
48
|
-
|
48
|
+
"#{@x}"
|
49
49
|
end
|
50
50
|
|
51
51
|
def +(op)
|
@@ -76,6 +76,18 @@ module CAS
|
|
76
76
|
@x = @x.simplify
|
77
77
|
end
|
78
78
|
end
|
79
|
+
|
80
|
+
def inspect
|
81
|
+
self.to_code
|
82
|
+
end
|
83
|
+
|
84
|
+
def as_proc
|
85
|
+
eval <<-EOP
|
86
|
+
Proc.new do |var|
|
87
|
+
#{self.to_code}
|
88
|
+
end
|
89
|
+
EOP
|
90
|
+
end
|
79
91
|
end # Op
|
80
92
|
|
81
93
|
# ___ _ ___
|
data/lib/ragni-cas.rb
CHANGED
@@ -7,10 +7,7 @@ require_relative 'fnc-trig.rb'
|
|
7
7
|
require_relative 'fnc-trsc.rb'
|
8
8
|
|
9
9
|
module CAS
|
10
|
-
|
11
|
-
|
12
|
-
def self.as_method(binding, op)
|
13
|
-
code = op.to_code
|
14
|
-
puts code
|
10
|
+
def self.as_proc(obj, op)
|
11
|
+
eval("Proc.new do |var|; #{op.to_code}; end")
|
15
12
|
end
|
16
13
|
end
|
data/lib/version.rb
ADDED
data.tar.gz.sig
CHANGED
Binary file
|
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.
|
4
|
+
version: 0.1.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Matteo Ragni
|
@@ -29,7 +29,7 @@ cert_chain:
|
|
29
29
|
XorZtzkkLImvKFj35xKLFfVkv0Vd8tGQoiL8vdmQNJjAjtE+C+Y7OI4dpiZPKO4G
|
30
30
|
R/8JOvUuk9jPbyLxjQH/sFaFqqYGX2xo1zk2CRy/A0WhJrSaXVw1r5lEi7b0W5gg
|
31
31
|
-----END CERTIFICATE-----
|
32
|
-
date: 2016-07-
|
32
|
+
date: 2016-07-20 00:00:00.000000000 Z
|
33
33
|
dependencies: []
|
34
34
|
description:
|
35
35
|
email: info@ragni.me
|
@@ -43,6 +43,7 @@ files:
|
|
43
43
|
- lib/numbers.rb
|
44
44
|
- lib/op.rb
|
45
45
|
- lib/ragni-cas.rb
|
46
|
+
- lib/version.rb
|
46
47
|
homepage: https://github.com/MatteoRagni/cas-rb
|
47
48
|
licenses:
|
48
49
|
- MIT
|
metadata.gz.sig
CHANGED
Binary file
|