ChebyRuby 0.0.3.pre → 0.1.0

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.
Files changed (4) hide show
  1. checksums.yaml +4 -4
  2. data/Rakefile +15 -0
  3. data/lib/chebyruby/expression.rb +5 -1
  4. metadata +1 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 7a3b71091027ccab487114bd6bbdeb2dd47dddce
4
- data.tar.gz: 9545f1e34a6e515bdb9343e893852a1acb3b1b10
3
+ metadata.gz: 3252d81142e31e2eb4e1f6f9375505e82ab92351
4
+ data.tar.gz: c24e5191aff126747b837a13e5a8fc9bb0dbf79e
5
5
  SHA512:
6
- metadata.gz: 5de743407a61d1199cea8a825a94a8f83f29c78bb34419cbb07195c74fc37faf74293432d7d13c50106921d4e8266d368cdb372a1e3061bb89fb27c477583be6
7
- data.tar.gz: a509277ec4e7dec53edd9d78fe3d9b8bfe4df9d3a3516147d419f9832166f891d3e1e1dc10bb7b8dd411f6367430d48d9c546529b60e153b35005191b027273c
6
+ metadata.gz: 5919c55140a5632c3defee1f22c1459ef524d6351e4f54b1aa8598bf2ba5fbb7262bb1f7cf1febe3a0db1168bbfda9b59e482d7412e410cd4b35972910ed7791
7
+ data.tar.gz: e57d75af7a75e6421707b8cd6226368c12fb6cabc642fff624b831738712ed7f44ab653c90fe877c2b74b2f275224429240258bba6c85ec24fa2d452003e2b92
data/Rakefile CHANGED
@@ -4,5 +4,20 @@ Rake::TestTask.new do |t|
4
4
  t.libs << 'test'
5
5
  end
6
6
 
7
+
7
8
  desc 'Run tests'
8
9
  task default: :test
10
+
11
+ task :clean do
12
+ `rm *.gem`
13
+ end
14
+
15
+ task :build do
16
+ `gem build chebyruby.gemspec`
17
+ end
18
+
19
+ task :deploy do
20
+ `rake clean`
21
+ `rake build`
22
+ `gem push *.gem`
23
+ end
@@ -17,7 +17,7 @@ class Expression
17
17
  a = []
18
18
  nested?[:left] ? a << left.vars : a << left.x
19
19
  nested?[:right] ? a << right.vars : a << right.x
20
- a.flatten
20
+ (a.flatten rescue a).select{|i| String === i}.uniq
21
21
  end
22
22
 
23
23
  def nested?
@@ -39,5 +39,9 @@ class Expression
39
39
  end
40
40
 
41
41
  def to_func
42
+ if a.vars.size == 1
43
+ blk = ->(intvar) {eval(to_s.gsub(vars[0],'intvar'))}
44
+ UnivariateFunction.new(&blk)
45
+ end
42
46
  end
43
47
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ChebyRuby
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3.pre
4
+ version: 0.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Eli Sadoff