module Inch # The API module is the entry point for Inch's APIs # # APIs are kind of "use cases" that are utilized by the CLI classes to # actually "do things". # # Example: # # $ inch list lib/**/*.rb --private # # This basically calls something like this: # # codebase = Codebase::Proxy.new(Dir.pwd, ["lib/**/*.rb"], []) # options = {:visibility => [:public, :protected, :private]} # context = API::List.new(codebase, options) # context.objects # => Array # # The List API takes a Codebase::Proxy object and an options # hash or a class in API::Options and returns objects and grade_lists # matching that options. # module API end end require "inch/api/options/base" require "inch/api/options/filter" require "inch/api/options/suggest" require "inch/api/compare" require "inch/api/filter" require "inch/api/get" require "inch/api/list" require "inch/api/suggest" require "inch/api/stats" require "inch/api/diff"