Sha256: 557892162c5343626e0c7af3c9617280774d798f6c203633049ae29ebbab595b
Contents?: true
Size: 939 Bytes
Versions: 1
Compression:
Stored size: 939 Bytes
Contents
# frozen_string_literal: true require "dry/transformer" require "rom/plugins/class_methods" require_relative "components/provider" require_relative "processor/transformer" module ROM # Transformer is a data mapper which uses `Dry::Transformer`'s DSL to define transformations. # # @api public class Transformer < Dry::Transformer[Processor::Transformer::Functions] extend ROM::Provider(type: :mapper) extend Plugins::ClassMethods # Define transformation pipeline # # @example # class UsersMapper < ROM::Transformer # map do # rename_keys user_id: :id # deep_stringify_keys # end # end # # @return [self] # # @api public def self.map(&block) define! do map_array(&block) end end # Build a mapper instance # # @return [Transformer] # # @api public def self.build new end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
rom-6.0.0.alpha1 | lib/rom/transformer.rb |