# :nocov: def jruby? RUBY_ENGINE == 'jruby' end # :nocov: module DaruLite DAYS_OF_WEEK = { 'SUN' => 0, 'MON' => 1, 'TUE' => 2, 'WED' => 3, 'THU' => 4, 'FRI' => 5, 'SAT' => 6 }.freeze MONTH_DAYS = { 1 => 31, 2 => 28, 3 => 31, 4 => 30, 5 => 31, 6 => 30, 7 => 31, 8 => 31, 9 => 30, 10 => 31, 11 => 30, 12 => 31 }.freeze MISSING_VALUES = [nil, Float::NAN].freeze @lazy_update = false SPLIT_TOKEN = ','.freeze @error_stream = $stderr class << self # A variable which will set whether Vector metadata is updated immediately or lazily. # Call the #update method every time a values are set or removed in order to update # metadata like positions of missing values. attr_accessor :lazy_update, :error_stream def create_has_library(library) lib_underscore = library.to_s.tr('-', '_') define_singleton_method(:"has_#{lib_underscore}?") do cv = "@@#{lib_underscore}" unless class_variable_defined? cv begin require library.to_s class_variable_set(cv, true) rescue LoadError # :nocov: class_variable_set(cv, false) # :nocov: end end class_variable_get(cv) end end def error(msg) error_stream&.puts msg end end end autoload :CSV, 'csv' require 'matrix' require 'forwardable' require 'erb' require 'date' require 'daru_lite/version' require 'open-uri' require 'daru_lite/index/index' require 'daru_lite/index/multi_index' require 'daru_lite/index/categorical_index' require 'daru_lite/helpers/array' require 'daru_lite/configuration' require 'daru_lite/vector' require 'daru_lite/dataframe' require 'daru_lite/monkeys' require 'daru_lite/formatters/table' require 'daru_lite/iruby/helpers' require 'daru_lite/exceptions' require 'daru_lite/core/group_by' require 'daru_lite/core/query' require 'daru_lite/core/merge' require 'daru_lite/date_time/offsets' require 'daru_lite/date_time/index'