Sha256: 9fc868ac852185a7b661414754987476c1cc27edf81a02aefd19af6c2150cef4

Contents?: true

Size: 848 Bytes

Versions: 5

Compression:

Stored size: 848 Bytes

Contents

require "guard/group"

require "guard/plugin_util"
require "guard/internals/session"
require "guard/internals/scope"

module Guard
  module Internals
    class State
      # Minimal setup for non-interactive commands (list, init, show, etc.)
      def initialize(cmdline_opts)
        # NOTE: this is reset during reevaluation
        @session = Session.new(cmdline_opts)

        # NOTE: this should persist across reevaluate() calls
        @scope = Scope.new

        # NOTE: must be set before anything calls Guard::UI.debug
        Debugging.start if session.debug?
      end

      attr_reader :scope
      attr_reader :session

      # @private api
      # used to clear instance variables during reevaluation
      def reset_session
        options = @session.options.dup
        @session = Session.new(options)
      end
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
guard-2.10.2 lib/guard/internals/state.rb
guard-2.10.1 lib/guard/internals/state.rb
guard-2.10.0 lib/guard/internals/state.rb
guard-2.9.2 lib/guard/internals/state.rb
guard-2.9.1 lib/guard/internals/state.rb