Sha256: 88e3c39b44550f0d6258b0f779ef866d3ccfce38bd81961c79923d98f49ce6fe

Contents?: true

Size: 826 Bytes

Versions: 10

Compression:

Stored size: 826 Bytes

Contents

module PowerStencil
  module Project

    module Completion

      def query_for_completion(query_type)
        case query_type
        when :entities
          engine.entities(engine.root_universe).map(&:as_path).sort
        when :'entity-types'
          engine.available_entity_types.sort
        when :scenario
          engine.entities(engine.root_universe, criterion: :by_type, value: :entity_override) do |entity|
            !entity.scenario.nil? and !entity.scenario.empty?
          end.map(&:scenario).sort.uniq
        when :buildable
          engine.entities(engine.root_universe) do |entity|
            entity.buildable?
          end.map(&:as_path).sort
        else
          raise PowerStencil::Error, "'#{query_type}' is not a valid query type for completion !"
        end
      end

    end

  end
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
power_stencil-0.8.11 lib/power_stencil/project/completion.rb
power_stencil-0.8.10 lib/power_stencil/project/completion.rb
power_stencil-0.8.9 lib/power_stencil/project/completion.rb
power_stencil-0.8.8 lib/power_stencil/project/completion.rb
power_stencil-0.8.7 lib/power_stencil/project/completion.rb
power_stencil-0.8.6 lib/power_stencil/project/completion.rb
power_stencil-0.8.5 lib/power_stencil/project/completion.rb
power_stencil-0.8.4 lib/power_stencil/project/completion.rb
power_stencil-0.8.3 lib/power_stencil/project/completion.rb
power_stencil-0.8.2 lib/power_stencil/project/completion.rb