jmmastey/level_up_exercises — pull request #156 by jmarks1enova (2014-10-16 19:07:59+00:00)
Title: Dino catalog2

FilteringEnumerable library: Wraps Enumerables with filters against reader methods, providing filtered views of enumerable contents
TokenSelectable: Mixin provides a class with factory method returning instances corresponding to input tokens
Dinodex library: Data domain of dinosaurs, including constrained sets of data items describing characteristics dinosaurs that can recognize input tokens corresponding to their value and print themselves for output
Dinodex::CSVLoader: CSV file processor constructing dinosaurs
Dinodex::CommandLineInterface: User input processor that builds a filter to apply against dinosaur list

example:

dino_catalog.rb -f dinodex.csv -d continent=Africa -f african_dinosaurs.csv -l -j -p cretaceous