Module: GrapePathHelpers::AllRoutes
- Defined in:
- lib/grape-path-helpers/all_routes.rb
Overview
methods to extend Grape::API’s behavior so it can get a list of routes from all APIs and decorate them with the DecoratedRoute class
Instance Method Summary collapse
Instance Method Details
#all_routes ⇒ Object
13 14 15 16 |
# File 'lib/grape-path-helpers/all_routes.rb', line 13 def all_routes routes = subclasses.flat_map { |s| s.send(:prepare_routes) } routes.uniq { |r| r..merge(path: r.path) } end |
#decorated_routes ⇒ Object
6 7 8 9 10 11 |
# File 'lib/grape-path-helpers/all_routes.rb', line 6 def decorated_routes # memoize so that construction of decorated routes happens once @decorated_routes ||= all_routes .map { |r| DecoratedRoute.new(r) } .sort_by { |r| -r.dynamic_path_segments.count } end |