module BibTeX::Filters

Constants

LOAD_PATH

Public Class Methods

resolve(filter) click to toggle source
# File lib/bibtex/filters.rb, line 39
def self.resolve(filter)
  if filter.respond_to?(:apply)
    filter
  elsif filter.respond_to?(:to_s)
    klass = Filter.subclasses.detect do |c|
      c.name == filter.to_s || c.name.split(/::/)[-1] =~ /^#{filter}$/i
    end
    klass&.instance
  end
end
resolve!(filter) click to toggle source
# File lib/bibtex/filters.rb, line 35
def self.resolve!(filter)
  resolve(filter) || raise(ArgumentError, "Failed to load filter #{filter.inspect}")
end