Sha256: 2a6178a8180f6d12229ade49374a1367c5d2ac54a2ad262c3cb010e8caf64c95

Contents?: true

Size: 715 Bytes

Versions: 1

Compression:

Stored size: 715 Bytes

Contents

# frozen_string_literal: true

class Solid::Result
  module EventLogs
    module Tracking
      require_relative 'tracking/enabled'
      require_relative 'tracking/disabled'

      VERSION = 1

      EMPTY_ARRAY = [].freeze
      EMPTY_HASH = {}.freeze
      EMPTY_TREE = Tree.new(nil).freeze
      EMPTY_IDS = { tree: EMPTY_ARRAY, matrix: EMPTY_HASH, level_parent: EMPTY_HASH }.freeze
      EMPTY = {
        version: VERSION,
        records: EMPTY_ARRAY,
        metadata: { duration: 0, ids: EMPTY_IDS, trace_id: nil }.freeze
      }.freeze

      def self.instance
        ::Solid::Result::Config.instance.feature.enabled?(:event_logs) ? Tracking::Enabled.new : Tracking::Disabled
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
solid-result-2.0.0 lib/solid/result/event_logs/tracking.rb