Sha256: bcade0c5cbf3f8806d3dcfc718ac90880d6da9094989ee160f02d2a957f97ee8

Contents?: true

Size: 454 Bytes

Versions: 5

Compression:

Stored size: 454 Bytes

Contents

require 'internal/node/as_code'
require 'internal/proc'
require 'internal/proc/signature'

class Proc
  def as_code(indent=0)
    sig = self.signature
    body_expression = self.body ? self.body.as_code(indent+1) : nil
    s = "#{'  '*indent}proc do"
    if not sig.args.unspecified then
      s += " #{sig}"
    end
    s += "\n"
    if body_expression then
      s += "#{body_expression}\n"
    end
    s += "#{'  '*indent}end"
    return s
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
ruby-internal-0.7.3 lib/internal/proc/as_code.rb
ruby-internal-0.7.2 lib/internal/proc/as_code.rb
ruby-internal-0.7.1 lib/internal/proc/as_code.rb
ruby-internal-0.7.0 lib/internal/proc/as_code.rb
ruby-internal-0.6.0 lib/internal/proc/as_code.rb