Sha256: 9e238968503524cb5d28310832b9ca9c53248af073d1e8c67eb3fc40f30c5691

Contents?: true

Size: 1.33 KB

Versions: 23

Compression:

Stored size: 1.33 KB

Contents

# Author::    Eric Crane  (mailto:eric.crane@mac.com)
# Copyright:: Copyright (c) 2019 Eric Crane.  All rights reserved.
#
# Set the current context pointer.
# Alternatively if no value is provided, just show the context.
#

module GlooLang
  module Verbs
    class Context < GlooLang::Core::Verb

      KEYWORD = 'context'.freeze
      KEYWORD_SHORT = '@'.freeze

      #
      # Run the verb.
      #
      def run
        set_context if @tokens.token_count > 1
        show_context
      end

      #
      # Show the current context.
      #
      def show_context
        @engine.log.show "Context:  #{@engine.heap.context}"
      end

      #
      # Get the Verb's keyword.
      #
      def self.keyword
        return KEYWORD
      end

      #
      # Get the Verb's keyword shortcut.
      #
      def self.keyword_shortcut
        return KEYWORD_SHORT
      end

      # ---------------------------------------------------------------------
      #    Private functions
      # ---------------------------------------------------------------------

      private

      #
      # Set the context to the given path.
      #
      def set_context
        path = @tokens.second
        @engine.heap.context.set_to path
        @engine.heap.it.set_to path
        @engine.log.debug "Context set to #{@engine.heap.context}"
      end

    end
  end
end

Version data entries

23 entries across 23 versions & 1 rubygems

Version Path
gloo-lang-1.4.3 lib/gloo_lang/verbs/context.rb
gloo-lang-1.4.2 lib/gloo_lang/verbs/context.rb
gloo-lang-1.4.1 lib/gloo_lang/verbs/context.rb
gloo-lang-1.4.0 lib/gloo_lang/verbs/context.rb
gloo-lang-1.3.2 lib/gloo_lang/verbs/context.rb
gloo-lang-1.3.1 lib/gloo_lang/verbs/context.rb
gloo-lang-1.3.0 lib/gloo_lang/verbs/context.rb
gloo-lang-1.2.8 lib/gloo_lang/verbs/context.rb
gloo-lang-1.2.7 lib/gloo_lang/verbs/context.rb
gloo-lang-1.2.6 lib/gloo_lang/verbs/context.rb
gloo-lang-1.2.5 lib/gloo_lang/verbs/context.rb
gloo-lang-1.2.4 lib/gloo_lang/verbs/context.rb
gloo-lang-1.2.3 lib/gloo_lang/verbs/context.rb
gloo-lang-1.2.2 lib/gloo_lang/verbs/context.rb
gloo-lang-1.2.1 lib/gloo_lang/verbs/context.rb
gloo-lang-1.2.0 lib/gloo_lang/verbs/context.rb
gloo-lang-1.1.0 lib/gloo_lang/verbs/context.rb
gloo-lang-1.0.2 lib/gloo_lang/verbs/context.rb
gloo-lang-1.0.1 lib/gloo_lang/verbs/context.rb
gloo-lang-1.0.0 lib/gloo_lang/verbs/context.rb