module Dentaku
infix visitor
use this visitor in a processor to get infix visiting order
visitor node deps accept -> visit left -> process visit right ->
Constants
- VERSION
Public Class Methods
aliases()
click to toggle source
# File lib/dentaku.rb, line 50 def self.aliases @aliases end
aliases=(hash)
click to toggle source
# File lib/dentaku.rb, line 54 def self.aliases=(hash) @aliases = hash end
cache_ast?()
click to toggle source
# File lib/dentaku.rb, line 30 def self.cache_ast? @enable_ast_caching end
cache_dependency_order?()
click to toggle source
# File lib/dentaku.rb, line 38 def self.cache_dependency_order? @enable_dependency_order_caching end
cache_identifier?()
click to toggle source
# File lib/dentaku.rb, line 46 def self.cache_identifier? @enable_identifier_caching end
calculator()
click to toggle source
# File lib/dentaku.rb, line 58 def self.calculator @calculator ||= Concurrent::ThreadLocalVar.new { Dentaku::Calculator.new } end
enable_ast_cache!()
click to toggle source
# File lib/dentaku.rb, line 26 def self.enable_ast_cache! @enable_ast_caching = true end
enable_caching!()
click to toggle source
# File lib/dentaku.rb, line 20 def self.enable_caching! enable_ast_cache! enable_dependency_order_cache! enable_identifier_cache! end
enable_dependency_order_cache!()
click to toggle source
# File lib/dentaku.rb, line 34 def self.enable_dependency_order_cache! @enable_dependency_order_caching = true end
enable_identifier_cache!()
click to toggle source
# File lib/dentaku.rb, line 42 def self.enable_identifier_cache! @enable_identifier_caching = true end
evaluate(expression, data = {}, &block)
click to toggle source
# File lib/dentaku.rb, line 12 def self.evaluate(expression, data = {}, &block) calculator.value.evaluate(expression, data, &block) end
evaluate!(expression, data = {}, &block)
click to toggle source
# File lib/dentaku.rb, line 16 def self.evaluate!(expression, data = {}, &block) calculator.value.evaluate!(expression, data, &block) end