class AngularSprinkles::FormBinder::Base
Public Class Methods
new(_args)
click to toggle source
# File lib/angular_sprinkles/form_binder/base.rb, line 4 def initialize(_args) @method = _args.fetch(:method) @args = _args.fetch(:args).dup object = _args.fetch(:object) attribute = @args.first.to_sym @attribute_binding = object.bind(attribute) end
Public Instance Methods
call()
click to toggle source
# File lib/angular_sprinkles/form_binder/base.rb, line 14 def call # Let the original form helper raise the exception if helper_is_going_raise_argument_error? return @args end augment_args end
Private Instance Methods
augment_args()
click to toggle source
# File lib/angular_sprinkles/form_binder/base.rb, line 25 def augment_args; raise NotImplementedError; end
helper_is_going_raise_argument_error?()
click to toggle source
# File lib/angular_sprinkles/form_binder/base.rb, line 27 def helper_is_going_raise_argument_error? @args.count < required_parameters.count end
required_parameters()
click to toggle source
# File lib/angular_sprinkles/form_binder/base.rb, line 31 def required_parameters @method.parameters.select { |i| i.first == :req } end