Class: Kiba::Extend::Transforms::Delete::FieldValueConditional
- Inherits:
-
Object
- Object
- Kiba::Extend::Transforms::Delete::FieldValueConditional
- Includes:
- BooleanLambdaParamable
- Defined in:
- lib/kiba/extend/transforms/delete/field_value_conditional.rb
Overview
Delete a field value if the arbitrary Lambda passed in evaluates to true
Instance Method Summary collapse
-
#initialize(fields:, lambda:, delim: nil) ⇒ FieldValueConditional
constructor
A new instance of FieldValueConditional.
-
#process(row) ⇒ Object
Methods included from BooleanLambdaParamable
included, #lambda_tested, #test_lambda
Constructor Details
#initialize(fields:, lambda:, delim: nil) ⇒ FieldValueConditional
Returns a new instance of FieldValueConditional.
61 62 63 64 65 66 |
# File 'lib/kiba/extend/transforms/delete/field_value_conditional.rb', line 61 def initialize(fields:, lambda:, delim: nil) @fields = [fields].flatten @lambda = lambda @multival = delim ? true : false @delim = delim || Kiba::Extend.delim end |
Instance Method Details
#process(row) ⇒ Object
72 73 74 75 76 77 |
# File 'lib/kiba/extend/transforms/delete/field_value_conditional.rb', line 72 def process(row) test_lambda(["foo", row]) unless lambda_tested fields.each { |field| row[field] = delete_from_field(row, field) } row end |