class Interscript::Node::Rule::Funcall

Attributes

kwargs[RW]
name[RW]
reverse_run[RW]

Public Class Methods

new(name, reverse_run: nil, **kwargs) click to toggle source
# File lib/interscript/node/rule/funcall.rb, line 3
def initialize name, reverse_run: nil, **kwargs
  @name = name
  @reverse_run = reverse_run
  @kwargs = kwargs
end

Public Instance Methods

==() click to toggle source
Calls superclass method Interscript::Node::Rule#==
# File lib/interscript/node/rule/funcall.rb, line 21
def ==
  super && self.name == other.name && self.kwargs == other.kwargs
end
inspect() click to toggle source
# File lib/interscript/node/rule/funcall.rb, line 25
def inspect
  "#{@name} #{kwargs.inspect[1..-2]}"
end
reverse() click to toggle source
# File lib/interscript/node/rule/funcall.rb, line 16
def reverse
  self.class.new(Interscript::Stdlib.reverse_function[@name.to_sym],
    reverse_run: reverse_run.nil? ? nil : !reverse_run, **kwargs)
end
to_hash() click to toggle source
# File lib/interscript/node/rule/funcall.rb, line 9
def to_hash
  { :class => self.class.to_s,
    :name => self.name,
    :kwargs => self.kwargs
  }
end