# frozen_string_literal: true require "smarter_csv/version" require "smarter_csv/file_io" require "smarter_csv/options_processing" require "smarter_csv/auto_detection" require "smarter_csv/variables" require 'smarter_csv/header_transformations' require 'smarter_csv/header_validations' require "smarter_csv/headers" require "smarter_csv/hash_transformations" require "smarter_csv/parse" # load the C-extension: case RUBY_ENGINE when 'ruby' begin if `uname -s`.chomp == 'Darwin' # # Please report if you see cases where the rake-compiler is building x86_64 code on arm64 cpus: # https://github.com/rake-compiler/rake-compiler/issues/231 # require 'smarter_csv/smarter_csv.bundle' else # :nocov: require_relative "smarter_csv/smarter_csv" # :nocov: end rescue Exception # rubocop:disable Lint/RescueException # require_relative 'smarter_csv/smarter_csv' end # :nocov: # when 'truffleruby' # puts "\n\n truffleruby case in the load path | RUBY_ENGINE: #{RUBY_ENGINE} , #{RUBY_VERSION}\n\n" # # this might not work - if you encounter problems, please contribute and create a PR # # require 'truffleruby/smarter_csv' else puts <<-BLOCK_COMMENT ------------------------------------------------------------------------- RUBY_ENGINE: #{RUBY_ENGINE} , #{RUBY_VERSION} Acceleration via C-Extension is currently not supported for #{RUBY_ENGINE} Please contribute and create a pull request if you need this ------------------------------------------------------------------------- BLOCK_COMMENT end # :nocov: require "smarter_csv/smarter_csv"