Class: Racc::UserAction

Inherits:
Object show all
Defined in:
lib/racc/grammar.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(src, proc) ⇒ UserAction

Returns a new instance of UserAction.



748
749
750
751
# File 'lib/racc/grammar.rb', line 748

def initialize(src, proc)
  @source = src
  @proc = proc
end

Instance Attribute Details

#procObject (readonly)

Returns the value of attribute proc.



754
755
756
# File 'lib/racc/grammar.rb', line 754

def proc
  @proc
end

#sourceObject (readonly)

Returns the value of attribute source.



753
754
755
# File 'lib/racc/grammar.rb', line 753

def source
  @source
end

Class Method Details

.emptyObject



742
743
744
# File 'lib/racc/grammar.rb', line 742

def UserAction.empty
  new(nil, nil)
end

.proc(pr = nil, &block) ⇒ Object



735
736
737
738
739
740
# File 'lib/racc/grammar.rb', line 735

def UserAction.proc(pr = nil, &block)
  if pr and block
    raise ArgumentError, "both of argument and block given"
  end
  new(nil, pr || block)
end

.source_text(src) ⇒ Object



731
732
733
# File 'lib/racc/grammar.rb', line 731

def UserAction.source_text(src)
  new(src, nil)
end

Instance Method Details

#empty?Boolean

Returns:

  • (Boolean)


764
765
766
# File 'lib/racc/grammar.rb', line 764

def empty?
  not @proc and not @source
end

#nameObject Also known as: inspect



768
769
770
# File 'lib/racc/grammar.rb', line 768

def name
  "{action type=#{@source || @proc || 'nil'}}"
end

#proc?Boolean

Returns:

  • (Boolean)


760
761
762
# File 'lib/racc/grammar.rb', line 760

def proc?
  not @source
end

#source?Boolean

Returns:

  • (Boolean)


756
757
758
# File 'lib/racc/grammar.rb', line 756

def source?
  not @proc
end