Sha256: 9d8dfbea196ada25e600fe0daf159a13e593f0a8f9a24b472f3b996d41fc7a58

Contents?: true

Size: 1.18 KB

Versions: 8

Compression:

Stored size: 1.18 KB

Contents

#!/usr/bin/env rbx
# -*- ruby -*-

base = File.dirname(__FILE__)
require File.expand_path("../boot/fancy_ext", base)

class Object
  define_method("__AFTER__BOOTSTRAP__:") do |block|
    block.call
  end
end

# Use the bootstrapping code loader.
require File.expand_path("../boot/load", base)

do_retry = true
begin
  Fancy::CodeLoader.load_compiled_file File.expand_path("../lib/boot", base)

  # Remove the bootstrapping code loader
  bcl = Fancy.send :remove_const, :CodeLoader
  bcl.load_compiled_file File.expand_path("../lib/rbx/code_loader", base)

  # Initialize the load path
  Fancy::CodeLoader.push_loadpath File.expand_path("../lib", base)

  # Load compiler+eval support
  Fancy::CodeLoader.load_compiled_file File.expand_path("../lib/eval", base)

  # Run main
  Fancy::CodeLoader.load_compiled_file File.expand_path("../lib/main", base)

rescue RuntimeError => e
  if e.message =~ /File not found (.*)lib\/boot.fyc/
    if do_retry
      puts "Fancy hasn't been bootstrapped yet. Doing that now.\n\n"
      `cd #{base} && rbx -S rake clean && rbx -S rake`
      do_retry = false
      retry
    else
      raise e
    end
  else
    raise e
  end
rescue Interrupt => e
  puts e
  exit
end

Version data entries

8 entries across 4 versions & 1 rubygems

Version Path
fancy-0.9.0 ruby_lib/fancy
fancy-0.9.0 bin/fancy
fancy-0.8.0 ruby_lib/fancy
fancy-0.8.0 bin/fancy
fancy-0.7.0 ruby_lib/fancy
fancy-0.7.0 bin/fancy
fancy-0.6.0 ruby_lib/fancy
fancy-0.6.0 bin/fancy