Module: Glimmer::DSL::SWT::ExecExpression
- Includes:
- TopLevelExpression
- Included in:
- AsyncExecExpression, SyncExecExpression
- Defined in:
- lib/glimmer/dsl/swt/exec_expression.rb
Overview
Mixin for common code in async_exec and sync_exec expressions Uses name in subclass to auto-derive exec_operation
Instance Method Summary collapse
- #can_interpret?(parent, keyword, *args, &block) ⇒ Boolean
- #exec_operation ⇒ Object
- #interpret(parent, keyword, *args, &block) ⇒ Object
Instance Method Details
#can_interpret?(parent, keyword, *args, &block) ⇒ Boolean
16 17 18 19 20 |
# File 'lib/glimmer/dsl/swt/exec_expression.rb', line 16 def can_interpret?(parent, keyword, *args, &block) keyword == exec_operation and block_given? and args.empty? end |
#exec_operation ⇒ Object
12 13 14 |
# File 'lib/glimmer/dsl/swt/exec_expression.rb', line 12 def exec_operation @exec_operation ||= self.class.name.split(/::/).last.sub(/Expression$/, '').underscore end |
#interpret(parent, keyword, *args, &block) ⇒ Object
22 23 24 |
# File 'lib/glimmer/dsl/swt/exec_expression.rb', line 22 def interpret(parent, keyword, *args, &block) Glimmer::SWT::DisplayProxy.instance.send(exec_operation, &block) end |