# File lib/type_checker.rb, line 92 def self.process(klass, method=nil) processor = self.new rewriter = Rewriter.new sexp = ParseTree.new.parse_tree(klass, method) sexp = [sexp] unless Array === sexp.first result = [] sexp.each do |exp| # TODO: we need a composite processor to chain these cleanly sexp = rewriter.process(exp) result << processor.process(sexp) end result end