class FriendlyRoutes::Params::Base
Abstract base class for route params.
@abstract @attr [Symbol] type @attr [Symbol, String] name
Attributes
name[RW]
type[RW]
Public Class Methods
new(type, name, optional)
click to toggle source
# File lib/friendly_routes/params/base.rb, line 13 def initialize(type, name, optional) @type = type @name = name @optional = optional end
Public Instance Methods
allowed?()
click to toggle source
Check if value can be composed
# File lib/friendly_routes/params/base.rb, line 49 def allowed? raise NotImplementedError end
compose()
click to toggle source
Generate request value from params
Inverse of {parse}
# File lib/friendly_routes/params/base.rb, line 44 def compose raise NotImplementedError end
constraints()
click to toggle source
Regexp with allowed params
# File lib/friendly_routes/params/base.rb, line 30 def constraints raise NotImplementedError end
optional?()
click to toggle source
returns true if param is optional
# File lib/friendly_routes/params/base.rb, line 20 def optional? @optional == true end
parse()
click to toggle source
Parse values from request
Inverse of {compose}
# File lib/friendly_routes/params/base.rb, line 37 def parse raise NotImplementedError end
refused?(*args)
click to toggle source
Inverse of {allowed?}
# File lib/friendly_routes/params/base.rb, line 54 def refused?(*args) !allowed?(*args) end
required?()
click to toggle source
returns true if param required
# File lib/friendly_routes/params/base.rb, line 25 def required? @optional == false end