Sha256: 03c0a3e2c69c39ceed1c927c1e26d59ee80ef0fab81d9aa0af83ff52cdf3102f

Contents?: true

Size: 902 Bytes

Versions: 14

Compression:

Stored size: 902 Bytes

Contents

# frozen_string_literal: true

module Expressir
  module Liquid
    module Declarations
      class TypeDrop < ::Expressir::Liquid::DeclarationDrop
        include ::Expressir::Liquid::IdentifierDrop

        def initialize(model)
          @model = model
          initialize_identifier(@model)
          super
        end

        def underlying_type
          drop_klass_by_model(@model.underlying_type)
        end

        def where_rules
          return [] unless @model.where_rules

          @model.where_rules.map do |item|
            ::Expressir::Liquid::Declarations::WhereRuleDrop.new(item)
          end
        end

        def informal_propositions
          return [] unless @model.informal_propositions

          @model.informal_propositions.map do |item|
            ::Expressir::Liquid::Declarations::RemarkItemDrop.new(item)
          end
        end
      end
    end
  end
end

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
expressir-2.1.13 lib/expressir/liquid/declarations/type_drop.rb
expressir-2.1.12 lib/expressir/liquid/declarations/type_drop.rb
expressir-2.1.11 lib/expressir/liquid/declarations/type_drop.rb
expressir-2.1.10 lib/expressir/liquid/declarations/type_drop.rb
expressir-2.1.9 lib/expressir/liquid/declarations/type_drop.rb
expressir-2.1.8 lib/expressir/liquid/declarations/type_drop.rb
expressir-2.1.7 lib/expressir/liquid/declarations/type_drop.rb
expressir-2.1.6 lib/expressir/liquid/declarations/type_drop.rb
expressir-2.1.5 lib/expressir/liquid/declarations/type_drop.rb
expressir-2.1.4 lib/expressir/liquid/declarations/type_drop.rb
expressir-2.1.3 lib/expressir/liquid/declarations/type_drop.rb
expressir-2.1.2 lib/expressir/liquid/declarations/type_drop.rb
expressir-2.1.1 lib/expressir/liquid/declarations/type_drop.rb
expressir-2.1.0 lib/expressir/liquid/declarations/type_drop.rb