Method: Cubicle::Member#initialize

Defined in:
lib/cubicle/member.rb

#initialize(*args) ⇒ Member

Returns a new instance of Member.



12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
# File 'lib/cubicle/member.rb', line 12

def initialize(*args)
  opts = args.extract_options!
  @name = args.shift.to_sym if args[0].is_a?(String) or args[0].is_a?(Symbol)

  self.options = (opts || {}).symbolize_keys

  if @expression = options(:field_name)
    @expression_type = :field_name
    @field_name = @expression
  elsif @expression = options(:expression)
    @expression_type = :javascript
  else
    @expression = @name
    @field_name = @name
    @expression_type = :field_name
  end

  member_alias = options(:alias)
  if (member_alias)
    member_alias = [member_alias] unless member_alias.is_a?(Array)
    @alias_list = member_alias.map{|a|a.to_s}
  end

  @condition = options :condition_expression,:condition


end