Sha256: 85ef86580da0cc63236111bb4bec20e12b56e415c10e6268bc6e9df2d7b565ef

Contents?: true

Size: 927 Bytes

Versions: 11

Compression:

Stored size: 927 Bytes

Contents

# Author::    Eric Crane  (mailto:eric.crane@mac.com)
# Copyright:: Copyright (c) 2019 Eric Crane.  All rights reserved.
#
# A script to be run.
#

module Gloo
  module Exec
    class Script

      attr_accessor :obj

      #
      # Set up the script.
      #
      def initialize( obj )
        @obj = obj
      end

      #
      # Run the script.
      # The script might be a single string or an array
      # of lines.
      #
      def run
        $engine.exec_env.push_script self

        if @obj.value.is_a? String
          $engine.parser.run @obj.value
        elsif @obj.value.is_a? Array
          @obj.value.each do |line|
            $engine.parser.run line
          end
        end

        $engine.exec_env.pop_script
      end

      #
      # Generic function to get display value.
      # Can be used for debugging, etc.
      #
      def display_value
        return @obj.pn
      end

    end
  end
end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
gloo-0.8.0 lib/gloo/exec/script.rb
gloo-0.7.7 lib/gloo/exec/script.rb
gloo-0.7.6 lib/gloo/exec/script.rb
gloo-0.7.5 lib/gloo/exec/script.rb
gloo-0.7.4 lib/gloo/exec/script.rb
gloo-0.7.3 lib/gloo/exec/script.rb
gloo-0.7.2 lib/gloo/exec/script.rb
gloo-0.7.1 lib/gloo/exec/script.rb
gloo-0.7.0 lib/gloo/exec/script.rb
gloo-0.6.1 lib/gloo/exec/script.rb
gloo-0.6.0 lib/gloo/exec/script.rb