class ActiveVlc::DSL::Base
Public Class Methods
new(context)
click to toggle source
# File lib/activevlc/dsl/base.rb, line 14 def initialize(context) @context = context end
Public Instance Methods
method_missing(sym, *args, &block)
click to toggle source
# File lib/activevlc/dsl/base.rb, line 18 def method_missing(sym, *args, &block) __option(normalize_option(sym), args.first, &block) end
param(name, value = nil)
click to toggle source
# File lib/activevlc/dsl/base.rb, line 22 def param(name, value = nil) if @context.parameters.has_param? name @context.parameters[name] else @context.parameters[name] = ActiveVlc::Parameter.new(name, value) end end
Also aliased as: p
Protected Instance Methods
__option(name, value, &block)
click to toggle source
# File lib/activevlc/dsl/base.rb, line 34 def __option(name, value, &block) if block_given? subcontext = ActiveVlc::Stage::Base.new(value) Base.new(subcontext).instance_eval &block @context[name] = subcontext else @context[name] = value end end
normalize_option(name)
click to toggle source
# File lib/activevlc/dsl/base.rb, line 32 def normalize_option(name) name.to_s.downcase.gsub('_', '-') end