Module: Sourcify

Defined in:
lib/sourcify/lib/sourcify.rb,
lib/sourcify/lib/sourcify/proc.rb,
lib/sourcify/lib/sourcify/errors.rb,
lib/sourcify/lib/sourcify/method.rb,
lib/sourcify/lib/sourcify/patches.rb,
lib/sourcify/lib/sourcify/version.rb,
lib/sourcify/lib/sourcify/proc/parser.rb,
lib/sourcify/lib/sourcify/method/parser.rb,
lib/sourcify/lib/sourcify/proc/parser/scanner.rb,
lib/sourcify/lib/sourcify/proc/methods/to_sexp.rb,
lib/sourcify/lib/sourcify/method/parser/scanner.rb,
lib/sourcify/lib/sourcify/proc/parser/converter.rb,
lib/sourcify/lib/sourcify/method/methods/to_sexp.rb,
lib/sourcify/lib/sourcify/proc/methods/to_source.rb,
lib/sourcify/lib/sourcify/proc/parser/normalizer.rb,
lib/sourcify/lib/sourcify/common/parser/converter.rb,
lib/sourcify/lib/sourcify/method/parser/converter.rb,
lib/sourcify/lib/sourcify/proc/parser/raw_scanner.rb,
lib/sourcify/lib/sourcify/proc/parser/source_code.rb,
lib/sourcify/lib/sourcify/method/methods/to_source.rb,
lib/sourcify/lib/sourcify/common/parser/source_code.rb,
lib/sourcify/lib/sourcify/method/parser/raw_scanner.rb,
lib/sourcify/lib/sourcify/method/parser/source_code.rb,
lib/sourcify/lib/sourcify/proc/methods/to_raw_source.rb,
lib/sourcify/lib/sourcify/method/methods/to_raw_source.rb,
lib/sourcify/lib/sourcify/proc/methods/source_location.rb,
lib/sourcify/lib/sourcify/common/parser/raw_scanner/comment.rb,
lib/sourcify/lib/sourcify/common/parser/raw_scanner/counter.rb,
lib/sourcify/lib/sourcify/common/parser/raw_scanner/dstring.rb,
lib/sourcify/lib/sourcify/common/parser/raw_scanner/heredoc.rb,
lib/sourcify/lib/sourcify/proc/parser/raw_scanner_extensions.rb,
lib/sourcify/lib/sourcify/common/parser/raw_scanner/extensions.rb,
lib/sourcify/lib/sourcify/method/parser/raw_scanner_extensions.rb

Overview

New way of adding new functionalities

Defined Under Namespace

Modules: Common, Method, Patches, Proc Classes: CannotFindSourceLocationError, CannotHandleCreatedOnTheFlyProcError, CannotParseEvalCodeError, MultipleMatchingMethodsPerLineError, MultipleMatchingProcsPerLineError, NoMatchingMethodError, NoMatchingProcError, ParserInternalError, PlatformNotSupportedError

Constant Summary collapse

IS_19x =
RUBY_VERSION.include?('1.9.')
HAS_RIPPER =
begin
  require 'ripper'
  true
rescue LoadError
  false
end
IS_PLATFORM_SUPPORTED =
begin
  [:source_location, :parameters].each{|meth| 1.method(:to_s).send(meth) }
  raise PlatformNotSupportedError if RUBY_PLATFORM =~ /java/i
  true
rescue NoMethodError, PlatformNotSupportedError
  false
end
VERSION =
"0.6.0.rc4"

Class Method Summary collapse

Class Method Details

.require_rb(*args) ⇒ Object



28
29
30
# File 'lib/sourcify/lib/sourcify.rb', line 28

def require_rb(*args)
  require root(*args)
end

.root(*args) ⇒ Object



32
33
34
35
# File 'lib/sourcify/lib/sourcify.rb', line 32

def root(*args)
  @root ||= File.join(File.dirname(File.expand_path(__FILE__)), 'sourcify')
  File.join(@root, *args)
end