Sha256: 03041f6ea2c022f7188942bec80d1854835c44f3c125df7636f687aed23842ec

Contents?: true

Size: 1.23 KB

Versions: 9

Compression:

Stored size: 1.23 KB

Contents

module Vedeu

  module DSL

    # Provides helper methods for building views.
    #
    module Use

      # Use the attribute of stored model.
      #
      # This DSL method provides access to a stored model by name. You can
      # then request an attribute of that model for use within the current
      # model. The models which current support this are Border, Geometry and
      # Interface.
      #
      # @example
      #   # Here the character used for 'my_border' is used in
      #   # 'my_other_border'.
      #   Vedeu.border 'my_other_border' do
      #     top_right use('my_border').top_right
      #   end
      #
      # @note
      #   - Only models of the same repository can be used in this way.
      #   - If the stored model cannot be found, a ModelNotFound exception may
      #     be raised, or the request for an attribute may raise a
      #     NoMethodError exception.
      #
      # @param name [String] The name of the model with the value you wish to
      #   use.
      # @raise [Vedeu::ModelNotFound|Vedeu::NoMethodError] The model or
      #   attribute cannot be found.
      # @return [void] The stored model.
      def use(name)
        model.repository.by_name(name)
      end

    end # Use

  end # DSL

end # Vedeu

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
vedeu-0.6.1 lib/vedeu/dsl/use.rb
vedeu-0.6.0 lib/vedeu/dsl/use.rb
vedeu-0.5.13 lib/vedeu/dsl/use.rb
vedeu-0.5.12 lib/vedeu/dsl/use.rb
vedeu-0.5.11 lib/vedeu/dsl/use.rb
vedeu-0.5.10 lib/vedeu/dsl/use.rb
vedeu-0.5.9 lib/vedeu/dsl/use.rb
vedeu-0.5.8 lib/vedeu/dsl/use.rb
vedeu-0.5.7 lib/vedeu/dsl/use.rb