Module: Lucio
- Defined in:
- lib/lucio/list.rb,
lib/lucio/lucio.rb,
lib/lucio/runner.rb,
lib/lucio/grammar.rb,
lib/lucio/lexicon.rb,
lib/lucio/operators/sum.rb,
lib/lucio/operators/macro.rb,
lib/lucio/operators/division.rb,
lib/lucio/operators/equality.rb,
lib/lucio/operators/operator.rb,
lib/lucio/operators/attribution.rb,
lib/lucio/operators/conditional.rb,
lib/lucio/operators/subtraction.rb,
lib/lucio/operators/multiplication.rb,
bin/repl.rb
Defined Under Namespace
Modules: Operator
Classes: Grammar, Lexicon, List, Repl, Runner
Class Method Summary
collapse
Class Method Details
.behead(list) ⇒ Object
26
27
28
|
# File 'lib/lucio/lucio.rb', line 26
def self.behead(list)
[list[0], list.drop(1)]
end
|
.eval(str) ⇒ Object
18
19
20
|
# File 'lib/lucio/lucio.rb', line 18
def self.eval(str)
parse(str).eval
end
|
.literal(str) ⇒ Object
22
23
24
|
# File 'lib/lucio/lucio.rb', line 22
def self.literal(str)
Lucio.eval(str).to_s
end
|
.parse(str, debug = false) ⇒ Object
9
10
11
12
13
14
15
16
|
# File 'lib/lucio/lucio.rb', line 9
def self.parse(str, debug = false)
parser = LucioParser.new
result = parser.parse str
puts "\n#{parser.failure_reason}" unless result || !debug
result
end
|