Module: Lapidary

Defined in:
lib/lapidary.rb,
lib/lapidary/command/build.rb

Overview

RubyGem project support library

Defined Under Namespace

Modules: Command

Constant Summary collapse

TEMPLATES_DIR =
File.expand_path(File.join(File.dirname(__FILE__), "lapidary", "templates"))

Class Method Summary collapse

Class Method Details

.default_loggerLogger

Reader method for the default logger of Lapidary

Returns:

  • (Logger)

    Logger object



39
40
41
42
43
# File 'lib/lapidary.rb', line 39

def self.default_logger
  l = Logger.new(STDERR)
  l.level = Logger::INFO
  l
end

.loggerLogger

Reader method for the logger of Lapidary

Returns:

  • (Logger)

    Logger object



20
21
22
23
24
25
26
27
28
# File 'lib/lapidary.rb', line 20

def self.logger
  if @logger.nil?
    @logger = (rails_logger || default_logger)
    @logger.formatter = proc { |severity, datetime, progname, msg|
      datetime.strftime("[%Y-%m-%d %H:%M:%S](#{severity}) #{msg}\n")
    }
  end
  return @logger
end

.logger=(logger) ⇒ Object

Writer method for the logger of Lapidary

Parameters:

  • logger (Logger)


47
48
49
# File 'lib/lapidary.rb', line 47

def self.logger=(logger)
  @logger = logger
end

.rails_loggerLogger

Reader method for the rails logger of Lapidary

Returns:

  • (Logger)

    Logger object



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

def self.rails_logger
  (defined?(Rails) && Rails.respond_to?(:logger) && Rails.logger) ||
  (defined?(RAILS_DEFAULT_LOGGER) && RAILS_DEFAULT_LOGGER.respond_to?(:debug) && RAILS_DEFAULT_LOGGER)
end

.to_camel_case(str) ⇒ String

Converter method from snake case string like ‘foo_bar_baz’ to camel case string like ‘FooBarBaz’

Parameters:

  • str (String)

    Snake case string like ‘foo_bar_baz’

Returns:

  • (String)

    Camel case string like ‘FooBarBaz’



14
15
16
# File 'lib/lapidary.rb', line 14

def self.to_camel_case(str)
  return str.split('_').map{|word| word.capitalize}.join
end