Skip to content

Instantly share code, notes, and snippets.

@codeodor
Forked from rlb3/bob.rb
Created August 14, 2013 13:46

Revisions

  1. @rlb3 rlb3 revised this gist Aug 14, 2013. 1 changed file with 0 additions and 1 deletion.
    1 change: 0 additions & 1 deletion bob.rb
    Original file line number Diff line number Diff line change
    @@ -1,7 +1,6 @@
    require 'ripper'

    def Object.const_missing(name)
    puts "defining #{name}"
    klass = const_set name, Class.new
    klass.class_eval do
    def method_missing name, *args
  2. @rlb3 rlb3 renamed this gist Aug 14, 2013. 1 changed file with 0 additions and 0 deletions.
    File renamed without changes.
  3. @rlb3 rlb3 created this gist Aug 14, 2013.
    17 changes: 17 additions & 0 deletions gistfile1.txt
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,17 @@
    require 'ripper'

    def Object.const_missing(name)
    puts "defining #{name}"
    klass = const_set name, Class.new
    klass.class_eval do
    def method_missing name, *args

    file, line_num, _ = caller[0].split(':')
    file_contents = File.open(file).read

    result = file_contents.split("\n")[line_num.to_i-1]
    Ripper.sexp(result)[1][0][2][1][0][1][1][1]
    end
    klass
    end
    end