Sha256: 961be4032f7705fe78cab8d22f9819088005e1277ed1803b99c6bfae7347f5e9
Contents?: true
Size: 930 Bytes
Versions: 1
Compression:
Stored size: 930 Bytes
Contents
# frozen_string_literal: true require_relative "conversion_error" require_relative "system_arguments" require "primer/view_components/constants" module ERBLint module Linters module ArgumentMappers # Provides the base interface to implement an `ArgumentMapper`. # Override attribute_to_args in a child class to customize its mapping behavior. class Base DEFAULT_TAG = nil def initialize(tag) @tag = tag end def to_s to_args.map { |k, v| "#{k}: #{v}" }.join(", ") end def to_args args = {} args[:tag] = ":#{@tag.name}" unless self.class::DEFAULT_TAG.nil? || @tag.name == self.class::DEFAULT_TAG @tag.attributes.each do |attribute| args.merge!(attribute_to_args(attribute)) end args end def attribute_to_args(attribute); end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
primer_view_components-0.0.49 | lib/primer/view_components/linters/argument_mappers/base.rb |