Sha256: 53ed022498cd9d98bed1935b65206076489113ae5bf87099a42d9e1783b79aa0

Contents?: true

Size: 751 Bytes

Versions: 4

Compression:

Stored size: 751 Bytes

Contents

# frozen_string_literal: true

require 'eac_ruby_utils/core_ext'
require 'eac_templates/abstract/file'
require 'eac_templates/interface_methods'
require 'eac_templates/modules/base/fs_object'

module EacTemplates
  module Modules
    class Base
      class File < ::EacTemplates::Abstract::File
        include ::EacTemplates::Modules::Base::FsObject
        delegate(*EacTemplates::InterfaceMethods::FILE + [:template?], to: :ancestor_found)

        def basename
          ancestor_found.if_present(&:basename)
        end

        def found?
          ancestor_found.present?
        end

        private

        def ancestor_found_uncached
          owner.ancestors.lazy.map(&:file).select(&:found?).first
        end
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 2 rubygems

Version Path
eac_templates-0.7.1 lib/eac_templates/modules/base/file.rb
eac_tools-0.93.0 sub/eac_templates/lib/eac_templates/modules/base/file.rb
eac_templates-0.7.0 lib/eac_templates/modules/base/file.rb
eac_tools-0.91.0 sub/eac_templates/lib/eac_templates/modules/base/file.rb