Sha256: e2e788d3d34e4b83fa74a1936f1e4441a403ebf053085a28a3872423b59a879c

Contents?: true

Size: 743 Bytes

Versions: 4

Compression:

Stored size: 743 Bytes

Contents

# frozen_string_literal: true

require_relative 'base_term'

module MiniKraken
  module Core
    # The generalization of any object that can be:
    #   - passed as argument to a goal.
    #   - passed as argument to a MiniKraken procedure
    #   - contained in a compositer term,
    #   - associated with a logical variable.
    class Term < BaseTerm
      # Abstract method.
      # Make a copy of self with all the variable reference being
      # replaced by the corresponding value in the Hash.
      # @param _substitutions [Hash {String => Term}]
      # @return [Term]
      def dup_cond(_substitutions)
        raise NotImplementedError, "Not implementation for #{self.class}."
      end
    end # class
  end # module
end # module

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
mini_kraken-0.3.03 lib/mini_kraken/core/term.rb
mini_kraken-0.3.02 lib/mini_kraken/core/term.rb
mini_kraken-0.3.01 lib/mini_kraken/core/term.rb
mini_kraken-0.3.00 lib/mini_kraken/core/term.rb