module Nydp::Builtin::Base

Public Class Methods

ignore_errors(kla) click to toggle source
# File lib/nydp/builtin.rb, line 6
def self.ignore_errors kla
  @@reraise_errors << kla
end

Public Instance Methods

_nydp_call(*args)
Alias for: call
call(*args) click to toggle source
# File lib/nydp/builtin.rb, line 23
def call *args
  builtin_call *args
rescue => e
  handle_error e, *args
end
Also aliased as: _nydp_call
handle_error(e, *args) click to toggle source
# File lib/nydp/builtin.rb, line 12
def handle_error e, *args
  case e
  when *@@reraise_errors
    raise e
  else
    arg_msg = args.map { |a| "#{a._nydp_inspect}"}.join("\n").split(/\n/).map { |s| "  #{s}"}.join("\n")
    new_msg = "Called #{self._nydp_inspect}\nwith args\n#{arg_msg}"
    raise new_msg
  end
end
inspect() click to toggle source
# File lib/nydp/builtin.rb, line 38
def inspect   ; "builtin/#{name}" ; end
name() click to toggle source
# File lib/nydp/builtin.rb, line 31
def name
  cname = self.class.name.split("::").last
  cname = cname.gsub(/([a-z])([A-Z])/) { |m| "#{m[0]}-#{m[1].downcase}" }
  cname = cname.gsub(/^([A-Z])/) { |m|  m.downcase }
  cname
end
nydp_type() click to toggle source
# File lib/nydp/builtin.rb, line 40
def nydp_type ; "fn"              ; end
to_s() click to toggle source
# File lib/nydp/builtin.rb, line 39
def to_s      ; name              ; end