Sha256: 7101977b032b6af67f3470c488fe63e96374f9cdcb2eff84c6e62441f4a6cb70

Contents?: true

Size: 550 Bytes

Versions: 31

Compression:

Stored size: 550 Bytes

Contents

# @Opulent
module Opulent
  # @Nodes
  module Nodes
    # @Expression
    #
    # Literals are static values that have a Ruby representation, eg.: a string, a number,
    # true, false, nil, etc.
    #
    class Expression
      attr_accessor :value, :escaped

      def initialize(value = '')
        @value = value
        @escaped = true
      end

      def to_s
        @value
      end

      def evaluate(context)
        evaluated = context.evaluate @value
        @escaped ? Runtime.escape(evaluated) : evaluated
      end
    end
  end
end

Version data entries

31 entries across 31 versions & 1 rubygems

Version Path
opulent-1.5.5 .libold/opulent/nodes/expression.rb
opulent-1.5.4 .libold/opulent/nodes/expression.rb
opulent-1.5.3 .libold/opulent/nodes/expression.rb
opulent-1.5.2 .libold/opulent/nodes/expression.rb
opulent-1.5.1 .libold/opulent/nodes/expression.rb
opulent-1.5.0 .libold/opulent/nodes/expression.rb
opulent-1.4.8 .libold/opulent/nodes/expression.rb
opulent-1.4.7 .libold/opulent/nodes/expression.rb
opulent-1.4.6 .libold/opulent/nodes/expression.rb
opulent-1.4.5 .libold/opulent/nodes/expression.rb
opulent-1.4.3 .libold/opulent/nodes/expression.rb
opulent-1.4.2 .libold/opulent/nodes/expression.rb
opulent-1.4.1 .libold/opulent/nodes/expression.rb
opulent-1.4.0 .libold/opulent/nodes/expression.rb
opulent-1.3.3 .libold/opulent/nodes/expression.rb
opulent-1.3.2 .libold/opulent/nodes/expression.rb
opulent-1.3.1 .libold/opulent/nodes/expression.rb
opulent-1.3.0 .libold/opulent/nodes/expression.rb
opulent-1.2.1 .libold/opulent/nodes/expression.rb
opulent-1.2.0 .libold/opulent/nodes/expression.rb