module Rubylog::ContextModules::Predicates
Attributes
default_subject[W]
Public Instance Methods
default_subject()
click to toggle source
# File lib/rubylog/context_modules/predicates.rb, line 28 def default_subject @default_subject || [] end
predicate(*indicators)
click to toggle source
# File lib/rubylog/context_modules/predicates.rb, line 9 def predicate *indicators each_indicator(indicators) do |indicator| create_procedure(indicator).add_functor_to [default_subject, Variable] end end
predicate_for(subjects, *indicators)
click to toggle source
# File lib/rubylog/context_modules/predicates.rb, line 15 def predicate_for subjects, *indicators each_indicator(indicators) do |indicator| create_procedure(indicator).add_functor_to [subjects, Variable] end end
predicate_for_context(*indicators)
click to toggle source
# File lib/rubylog/context_modules/predicates.rb, line 21 def predicate_for_context *indicators each_indicator(indicators) do |indicator| create_procedure(indicator).add_functor_to ::Rubylog::Context end end
Protected Instance Methods
create_procedure(indicator)
click to toggle source
# File lib/rubylog/context_modules/predicates.rb, line 35 def create_procedure indicator Rubylog::Procedure.new indicator[0], indicator[1] end
each_indicator(indicators) { |i| ... }
click to toggle source
# File lib/rubylog/context_modules/predicates.rb, line 39 def each_indicator indicators # TODO check if not empty # indicators. flatten. map{|str|str.split(" ")}. flatten. map{|i| Rubylog::DSL::Indicators.unhumanize_indicator(i)}. each {|i| yield i } end