Class | ExpressionBuilder |
In: |
lib/runt/expressionbuilder.rb
|
Parent: | Object |
Convenience class for building temporal expressions in a more human-friendly way. Used in conjunction with shortcuts defined in the sugar.rb file, this allows one to create expressions like the following:
b = ExpressionBuilder.new expr = b.define do occurs daily_8_30am_to_9_45am on tuesday possibly wednesday end
This equivalent to:
expr = REDay.new(8,30,9,45) & DIWeek.new(Tuesday) | DIWeek.new(Wednesday)
ExpressionBuilder creates expressions by evaluating a block passed to the :define method. From inside the block, methods :occurs, :on, :every, :possibly, and :maybe can be called with a temporal expression which will be added to a composite expression as follows:
ctx | [RW] |