Sha256: 0f12e2cc84f4cd6c77b761f7afb61668d8d1400eaeff1b86306b65096f0f9052

Contents?: true

Size: 1.59 KB

Versions: 26

Compression:

Stored size: 1.59 KB

Contents

class Object
  class << self
    def attr_block(*syms)
      syms.flatten.each do |sym|
        class_eval "def #{sym}(&block);block.call(@#{sym}) if block_given?;@#{sym};end"
      end
    end
  end
end

class String
  def relative_path_from(dir)
    Pathname.new(File.expand_path(self)).relative_path_from(Pathname.new(File.expand_path(dir))).to_s
  end

  def relative_path
    relative_path_from(Dir.pwd)
  end

  # Compatible with 1.9 on 1.8
  def %(params)
    if params.is_a?(Hash)
      str = self.clone
      params.each do |k, v|
        str.gsub!("%{#{k}}") { v }
      end
      str
    else
      if params.is_a?(Array)
        sprintf(self, *params)
      else
        sprintf(self, params)
      end
    end
  end
end

class Symbol
  # Compatible with 1.9 on 1.8
  def to_proc
    proc { |obj, *args| obj.send(self, *args) }
  end
end

module Enumerable
  # Compatible with 1.9 on 1.8
  def each_with_object(memo)
    return to_enum :each_with_object, memo unless block_given?
    each { |obj| yield obj, memo }
    memo
  end
end

$pp_show = true

if $verbose.nil?
  if Rake.respond_to?(:verbose) && !Rake.verbose.nil?
    if Rake.verbose.class == TrueClass
      # verbose message logging
      $pp_show = false
    else
      $pp_show = true
      Rake.verbose(false)
    end
  else
    # could not identify rake version
    $pp_show = false
  end
else
  $pp_show = false if $verbose
end

def _pp(cmd, src, tgt=nil, options={})
  return unless $pp_show

  width = 5
  template = options[:indent] ? "%#{width*options[:indent]}s %s %s" : "%-#{width}s %s %s"
  puts template % [cmd, src, tgt ? "-> #{tgt}" : nil]
end

Version data entries

26 entries across 26 versions & 3 rubygems

Version Path
script_core-0.0.6 ext/enterprise_script_service/mruby/lib/mruby-core-ext.rb
script_core-0.0.5 ext/enterprise_script_service/mruby/lib/mruby-core-ext.rb
esruby-0.2.0 resources/mruby/lib/mruby-core-ext.rb
esruby-0.1.5 resources/mruby/lib/mruby-core-ext.rb
esruby-0.1.4 resources/mruby/lib/mruby-core-ext.rb
esruby-0.1.3 resources/mruby/lib/mruby-core-ext.rb
esruby-0.1.2 resources/mruby/lib/mruby-core-ext.rb
esruby-0.1.1 resources/mruby/lib/mruby-core-ext.rb
esruby-0.1.0 resources/mruby/lib/mruby-core-ext.rb
esruby-0.0.11 resources/mruby/lib/mruby-core-ext.rb
esruby-0.0.10 resources/mruby/lib/mruby-core-ext.rb
esruby-0.0.9 resources/mruby/lib/mruby-core-ext.rb
esruby-0.0.8 resources/mruby/lib/mruby-core-ext.rb
esruby-0.0.7 resources/mruby/lib/mruby-core-ext.rb
esruby-0.0.6 resources/mruby/lib/mruby-core-ext.rb
esruby-0.0.5 resources/mruby/lib/mruby-core-ext.rb
esruby-0.0.3 resources/mruby/lib/mruby-core-ext.rb
esruby-0.0.2 resources/mruby/lib/mruby-core-ext.rb
esruby-0.0.0 resources/mruby/lib/mruby-core-ext.rb
script_core-0.0.4 ext/enterprise_script_service/mruby/lib/mruby-core-ext.rb