factbase 0.19.2 → 0.19.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (111) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +3 -3
  3. data/Gemfile.lock +27 -25
  4. data/LICENSE.txt +1 -1
  5. data/LICENSES/MIT.txt +1 -1
  6. data/README.md +2 -2
  7. data/Rakefile +1 -1
  8. data/factbase.gemspec +1 -1
  9. data/lib/factbase/accum.rb +2 -2
  10. data/lib/factbase/cached/cached_fact.rb +4 -8
  11. data/lib/factbase/cached/cached_factbase.rb +2 -2
  12. data/lib/factbase/cached/cached_query.rb +2 -2
  13. data/lib/factbase/cached/cached_term.rb +2 -2
  14. data/lib/factbase/churn.rb +2 -2
  15. data/lib/factbase/fact.rb +2 -2
  16. data/lib/factbase/fact_as_yaml.rb +2 -2
  17. data/lib/factbase/flatten.rb +2 -2
  18. data/lib/factbase/impatient.rb +2 -2
  19. data/lib/factbase/indexed/indexed_absent.rb +1 -1
  20. data/lib/factbase/indexed/indexed_and.rb +1 -1
  21. data/lib/factbase/indexed/indexed_eq.rb +1 -1
  22. data/lib/factbase/indexed/indexed_exists.rb +1 -1
  23. data/lib/factbase/indexed/indexed_fact.rb +2 -2
  24. data/lib/factbase/indexed/indexed_factbase.rb +2 -2
  25. data/lib/factbase/indexed/indexed_gt.rb +1 -1
  26. data/lib/factbase/indexed/indexed_lt.rb +1 -1
  27. data/lib/factbase/indexed/indexed_not.rb +1 -1
  28. data/lib/factbase/indexed/indexed_one.rb +1 -1
  29. data/lib/factbase/indexed/indexed_or.rb +1 -1
  30. data/lib/factbase/indexed/indexed_query.rb +2 -2
  31. data/lib/factbase/indexed/indexed_term.rb +2 -2
  32. data/lib/factbase/indexed/indexed_unique.rb +1 -1
  33. data/lib/factbase/inv.rb +2 -2
  34. data/lib/factbase/lazy_taped.rb +1 -1
  35. data/lib/factbase/lazy_taped_array.rb +1 -1
  36. data/lib/factbase/lazy_taped_hash.rb +1 -1
  37. data/lib/factbase/light.rb +2 -2
  38. data/lib/factbase/logged.rb +2 -2
  39. data/lib/factbase/pre.rb +2 -2
  40. data/lib/factbase/query.rb +2 -2
  41. data/lib/factbase/rules.rb +2 -2
  42. data/lib/factbase/sync/sync_factbase.rb +2 -2
  43. data/lib/factbase/sync/sync_query.rb +2 -2
  44. data/lib/factbase/syntax.rb +2 -2
  45. data/lib/factbase/tallied.rb +2 -2
  46. data/lib/factbase/taped.rb +2 -2
  47. data/lib/factbase/tee.rb +2 -2
  48. data/lib/factbase/term.rb +2 -2
  49. data/lib/factbase/terms/absent.rb +1 -1
  50. data/lib/factbase/terms/agg.rb +1 -1
  51. data/lib/factbase/terms/always.rb +1 -1
  52. data/lib/factbase/terms/and.rb +1 -1
  53. data/lib/factbase/terms/arithmetic.rb +1 -1
  54. data/lib/factbase/terms/as.rb +1 -1
  55. data/lib/factbase/terms/assert.rb +1 -1
  56. data/lib/factbase/terms/base.rb +2 -2
  57. data/lib/factbase/terms/best.rb +1 -1
  58. data/lib/factbase/terms/boolean.rb +1 -1
  59. data/lib/factbase/terms/compare.rb +1 -1
  60. data/lib/factbase/terms/concat.rb +2 -2
  61. data/lib/factbase/terms/count.rb +1 -1
  62. data/lib/factbase/terms/defn.rb +3 -3
  63. data/lib/factbase/terms/div.rb +1 -1
  64. data/lib/factbase/terms/either.rb +1 -1
  65. data/lib/factbase/terms/empty.rb +1 -1
  66. data/lib/factbase/terms/env.rb +1 -1
  67. data/lib/factbase/terms/eq.rb +1 -1
  68. data/lib/factbase/terms/exists.rb +1 -1
  69. data/lib/factbase/terms/first.rb +1 -1
  70. data/lib/factbase/terms/gt.rb +1 -1
  71. data/lib/factbase/terms/gte.rb +1 -1
  72. data/lib/factbase/terms/head.rb +1 -1
  73. data/lib/factbase/terms/inverted.rb +1 -1
  74. data/lib/factbase/terms/join.rb +1 -1
  75. data/lib/factbase/terms/lt.rb +1 -1
  76. data/lib/factbase/terms/lte.rb +1 -1
  77. data/lib/factbase/terms/many.rb +1 -1
  78. data/lib/factbase/terms/matches.rb +2 -2
  79. data/lib/factbase/terms/max.rb +1 -1
  80. data/lib/factbase/terms/min.rb +1 -1
  81. data/lib/factbase/terms/minus.rb +1 -1
  82. data/lib/factbase/terms/never.rb +1 -1
  83. data/lib/factbase/terms/nil.rb +1 -1
  84. data/lib/factbase/terms/not.rb +1 -1
  85. data/lib/factbase/terms/nth.rb +1 -1
  86. data/lib/factbase/terms/one.rb +2 -2
  87. data/lib/factbase/terms/or.rb +1 -1
  88. data/lib/factbase/terms/plus.rb +1 -1
  89. data/lib/factbase/terms/prev.rb +1 -1
  90. data/lib/factbase/terms/simplified.rb +2 -2
  91. data/lib/factbase/terms/size.rb +1 -1
  92. data/lib/factbase/terms/sorted.rb +1 -1
  93. data/lib/factbase/terms/sprintf.rb +2 -2
  94. data/lib/factbase/terms/sum.rb +1 -1
  95. data/lib/factbase/terms/times.rb +1 -1
  96. data/lib/factbase/terms/to_float.rb +1 -1
  97. data/lib/factbase/terms/to_integer.rb +1 -1
  98. data/lib/factbase/terms/to_string.rb +1 -1
  99. data/lib/factbase/terms/to_time.rb +1 -1
  100. data/lib/factbase/terms/traced.rb +1 -1
  101. data/lib/factbase/terms/type.rb +1 -1
  102. data/lib/factbase/terms/undef.rb +2 -2
  103. data/lib/factbase/terms/unique.rb +1 -1
  104. data/lib/factbase/terms/when.rb +1 -1
  105. data/lib/factbase/terms/zero.rb +1 -1
  106. data/lib/factbase/to_json.rb +2 -2
  107. data/lib/factbase/to_xml.rb +2 -2
  108. data/lib/factbase/to_yaml.rb +2 -2
  109. data/lib/factbase/version.rb +3 -3
  110. data/lib/factbase.rb +2 -2
  111. metadata +1 -1
data/lib/factbase/pre.rb CHANGED
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
3
+ # SPDX-FileCopyrightText: Copyright (c) 2024-2026 Yegor Bugayenko
4
4
  # SPDX-License-Identifier: MIT
5
5
 
6
6
  require 'loog'
@@ -20,7 +20,7 @@ require_relative '../factbase'
20
20
  # one is the fact just inserted.
21
21
  #
22
22
  # Author:: Yegor Bugayenko (yegor256@gmail.com)
23
- # Copyright:: Copyright (c) 2024-2025 Yegor Bugayenko
23
+ # Copyright:: Copyright (c) 2024-2026 Yegor Bugayenko
24
24
  # License:: MIT
25
25
  class Factbase::Pre
26
26
  decoor(:fb)
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
3
+ # SPDX-FileCopyrightText: Copyright (c) 2024-2026 Yegor Bugayenko
4
4
  # SPDX-License-Identifier: MIT
5
5
 
6
6
  require_relative '../factbase'
@@ -17,7 +17,7 @@ require_relative 'tee'
17
17
  # It is NOT thread-safe!
18
18
  #
19
19
  # Author:: Yegor Bugayenko (yegor256@gmail.com)
20
- # Copyright:: Copyright (c) 2024-2025 Yegor Bugayenko
20
+ # Copyright:: Copyright (c) 2024-2026 Yegor Bugayenko
21
21
  # License:: MIT
22
22
  class Factbase::Query
23
23
  include Enumerable
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
3
+ # SPDX-FileCopyrightText: Copyright (c) 2024-2026 Yegor Bugayenko
4
4
  # SPDX-License-Identifier: MIT
5
5
 
6
6
  require 'decoor'
@@ -22,7 +22,7 @@ require_relative '../factbase/tallied'
22
22
  # end # Runtime exception here (transaction won't commit)
23
23
  #
24
24
  # Author:: Yegor Bugayenko (yegor256@gmail.com)
25
- # Copyright:: Copyright (c) 2024-2025 Yegor Bugayenko
25
+ # Copyright:: Copyright (c) 2024-2026 Yegor Bugayenko
26
26
  # License:: MIT
27
27
  class Factbase::Rules
28
28
  decoor(:fb)
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
3
+ # SPDX-FileCopyrightText: Copyright (c) 2024-2026 Yegor Bugayenko
4
4
  # SPDX-License-Identifier: MIT
5
5
 
6
6
  require 'decoor'
@@ -10,7 +10,7 @@ require_relative '../../factbase'
10
10
  # A synchronous thread-safe factbase.
11
11
  #
12
12
  # Author:: Yegor Bugayenko (yegor256@gmail.com)
13
- # Copyright:: Copyright (c) 2024-2025 Yegor Bugayenko
13
+ # Copyright:: Copyright (c) 2024-2026 Yegor Bugayenko
14
14
  # License:: MIT
15
15
  class Factbase::SyncFactbase
16
16
  decoor(:origin)
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
3
+ # SPDX-FileCopyrightText: Copyright (c) 2024-2026 Yegor Bugayenko
4
4
  # SPDX-License-Identifier: MIT
5
5
 
6
6
  require_relative '../../factbase'
@@ -8,7 +8,7 @@ require_relative '../../factbase'
8
8
  # Synchronized thread-safe query.
9
9
  #
10
10
  # Author:: Yegor Bugayenko (yegor256@gmail.com)
11
- # Copyright:: Copyright (c) 2024-2025 Yegor Bugayenko
11
+ # Copyright:: Copyright (c) 2024-2026 Yegor Bugayenko
12
12
  # License:: MIT
13
13
  class Factbase::SyncQuery
14
14
  include Enumerable
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
3
+ # SPDX-FileCopyrightText: Copyright (c) 2024-2026 Yegor Bugayenko
4
4
  # SPDX-License-Identifier: MIT
5
5
 
6
6
  require 'backtrace'
@@ -14,7 +14,7 @@ require_relative 'term'
14
14
  # This is an internal class, it is not supposed to be instantiated directly.
15
15
  #
16
16
  # Author:: Yegor Bugayenko (yegor256@gmail.com)
17
- # Copyright:: Copyright (c) 2024-2025 Yegor Bugayenko
17
+ # Copyright:: Copyright (c) 2024-2026 Yegor Bugayenko
18
18
  # License:: MIT
19
19
  class Factbase::Syntax
20
20
  # If the syntax is broken.
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
3
+ # SPDX-FileCopyrightText: Copyright (c) 2024-2026 Yegor Bugayenko
4
4
  # SPDX-License-Identifier: MIT
5
5
 
6
6
  require 'decoor'
@@ -12,7 +12,7 @@ require_relative 'churn'
12
12
  # an instance of Factbase::Churn.
13
13
  #
14
14
  # Author:: Yegor Bugayenko (yegor256@gmail.com)
15
- # Copyright:: Copyright (c) 2024-2025 Yegor Bugayenko
15
+ # Copyright:: Copyright (c) 2024-2026 Yegor Bugayenko
16
16
  # License:: MIT
17
17
  class Factbase::Tallied
18
18
  attr_reader :churn
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
3
+ # SPDX-FileCopyrightText: Copyright (c) 2024-2026 Yegor Bugayenko
4
4
  # SPDX-License-Identifier: MIT
5
5
 
6
6
  require 'decoor'
@@ -10,7 +10,7 @@ require_relative '../factbase'
10
10
  # using their +object_id+.
11
11
  #
12
12
  # Author:: Yegor Bugayenko (yegor256@gmail.com)
13
- # Copyright:: Copyright (c) 2024-2025 Yegor Bugayenko
13
+ # Copyright:: Copyright (c) 2024-2026 Yegor Bugayenko
14
14
  # License:: MIT
15
15
  class Factbase::Taped
16
16
  def initialize(origin, inserted: [], deleted: [], added: [])
data/lib/factbase/tee.rb CHANGED
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
3
+ # SPDX-FileCopyrightText: Copyright (c) 2024-2026 Yegor Bugayenko
4
4
  # SPDX-License-Identifier: MIT
5
5
 
6
6
  require 'others'
@@ -9,7 +9,7 @@ require_relative '../factbase'
9
9
  # Tee of two facts.
10
10
  #
11
11
  # Author:: Yegor Bugayenko (yegor256@gmail.com)
12
- # Copyright:: Copyright (c) 2024-2025 Yegor Bugayenko
12
+ # Copyright:: Copyright (c) 2024-2026 Yegor Bugayenko
13
13
  # License:: MIT
14
14
  class Factbase::Tee
15
15
  # Ctor.
data/lib/factbase/term.rb CHANGED
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
3
+ # SPDX-FileCopyrightText: Copyright (c) 2024-2026 Yegor Bugayenko
4
4
  # SPDX-License-Identifier: MIT
5
5
 
6
6
  require 'backtrace'
@@ -84,7 +84,7 @@ require_relative 'terms/max'
84
84
  # It is NOT thread-safe!
85
85
  #
86
86
  # Author:: Yegor Bugayenko (yegor256@gmail.com)
87
- # Copyright:: Copyright (c) 2024-2025 Yegor Bugayenko
87
+ # Copyright:: Copyright (c) 2024-2026 Yegor Bugayenko
88
88
  # License:: MIT
89
89
  class Factbase::Term < Factbase::TermBase
90
90
  # The operator of this term
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
3
+ # SPDX-FileCopyrightText: Copyright (c) 2024-2026 Yegor Bugayenko
4
4
  # SPDX-License-Identifier: MIT
5
5
 
6
6
  require_relative 'base'
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
3
+ # SPDX-FileCopyrightText: Copyright (c) 2024-2026 Yegor Bugayenko
4
4
  # SPDX-License-Identifier: MIT
5
5
 
6
6
  require_relative 'base'
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
3
+ # SPDX-FileCopyrightText: Copyright (c) 2024-2026 Yegor Bugayenko
4
4
  # SPDX-License-Identifier: MIT
5
5
 
6
6
  require_relative 'base'
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
3
+ # SPDX-FileCopyrightText: Copyright (c) 2024-2026 Yegor Bugayenko
4
4
  # SPDX-License-Identifier: MIT
5
5
 
6
6
  require_relative 'base'
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
3
+ # SPDX-FileCopyrightText: Copyright (c) 2024-2026 Yegor Bugayenko
4
4
  # SPDX-License-Identifier: MIT
5
5
 
6
6
  require_relative 'base'
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
3
+ # SPDX-FileCopyrightText: Copyright (c) 2024-2026 Yegor Bugayenko
4
4
  # SPDX-License-Identifier: MIT
5
5
 
6
6
  require_relative 'base'
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
3
+ # SPDX-FileCopyrightText: Copyright (c) 2024-2026 Yegor Bugayenko
4
4
  # SPDX-License-Identifier: MIT
5
5
 
6
6
  require_relative 'base'
@@ -1,11 +1,11 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
3
+ # SPDX-FileCopyrightText: Copyright (c) 2024-2026 Yegor Bugayenko
4
4
  # SPDX-License-Identifier: MIT
5
5
 
6
6
  # Test for unique term.
7
7
  # Author:: Volodya Lombrozo (volodya.lombrozo@gmail.com)
8
- # Copyright:: Copyright (c) 2024-2025 Yegor Bugayenko
8
+ # Copyright:: Copyright (c) 2024-2026 Yegor Bugayenko
9
9
  # License:: MIT
10
10
 
11
11
  # Base class for all terms.
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
3
+ # SPDX-FileCopyrightText: Copyright (c) 2024-2026 Yegor Bugayenko
4
4
  # SPDX-License-Identifier: MIT
5
5
 
6
6
  # The 'best' term evaluates the best value for a given key.
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
3
+ # SPDX-FileCopyrightText: Copyright (c) 2024-2026 Yegor Bugayenko
4
4
  # SPDX-License-Identifier: MIT
5
5
 
6
6
  require_relative 'base'
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
3
+ # SPDX-FileCopyrightText: Copyright (c) 2024-2026 Yegor Bugayenko
4
4
  # SPDX-License-Identifier: MIT
5
5
 
6
6
  require_relative 'base'
@@ -1,13 +1,13 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
3
+ # SPDX-FileCopyrightText: Copyright (c) 2024-2026 Yegor Bugayenko
4
4
  # SPDX-License-Identifier: MIT
5
5
 
6
6
  require_relative 'base'
7
7
  # Concat term.
8
8
  #
9
9
  # Author:: Yegor Bugayenko (yegor256@gmail.com)
10
- # Copyright:: Copyright (c) 2024-2025 Yegor Bugayenko
10
+ # Copyright:: Copyright (c) 2024-2026 Yegor Bugayenko
11
11
  # License:: MIT
12
12
  class Factbase::Concat < Factbase::TermBase
13
13
  def initialize(operands)
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
3
+ # SPDX-FileCopyrightText: Copyright (c) 2024-2026 Yegor Bugayenko
4
4
  # SPDX-License-Identifier: MIT
5
5
 
6
6
  require_relative 'base'
@@ -1,13 +1,13 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
3
+ # SPDX-FileCopyrightText: Copyright (c) 2024-2026 Yegor Bugayenko
4
4
  # SPDX-License-Identifier: MIT
5
5
 
6
6
  require_relative 'base'
7
7
 
8
8
  # Factbase::Defn is responsible for defining new terms in the Factbase system.
9
9
  # Author:: Yegor Bugayenko (yegor256@gmail.com)
10
- # Copyright:: Copyright (c) 2024-2025 Yegor Bugayenko
10
+ # Copyright:: Copyright (c) 2024-2026 Yegor Bugayenko
11
11
  # License:: MIT
12
12
  class Factbase::Defn < Factbase::TermBase
13
13
  # Constructor.
@@ -26,7 +26,7 @@ class Factbase::Defn < Factbase::TermBase
26
26
  assert_args(2)
27
27
  fn = @operands[0]
28
28
  raise "A symbol expected as first argument of 'defn'" unless fn.is_a?(Symbol)
29
- raise "Can't use '#{fn}' name as a term" if Factbase::Term.instance_methods(true).include?(fn)
29
+ raise "Can't use '#{fn}' name as a term" if Factbase::Term.method_defined?(fn)
30
30
  raise "Term '#{fn}' is already defined" if Factbase::Term.private_instance_methods(false).include?(fn)
31
31
  raise "The '#{fn}' is a bad name for a term" unless fn.match?(/^[a-z_]+$/)
32
32
  e = "class Factbase::Term\nprivate\ndef #{fn}(fact, maps, fb)\n#{@operands[1]}\nend\nend"
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
3
+ # SPDX-FileCopyrightText: Copyright (c) 2024-2026 Yegor Bugayenko
4
4
  # SPDX-License-Identifier: MIT
5
5
 
6
6
  require_relative 'base'
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
3
+ # SPDX-FileCopyrightText: Copyright (c) 2024-2026 Yegor Bugayenko
4
4
  # SPDX-License-Identifier: MIT
5
5
 
6
6
  require_relative 'base'
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
3
+ # SPDX-FileCopyrightText: Copyright (c) 2024-2026 Yegor Bugayenko
4
4
  # SPDX-License-Identifier: MIT
5
5
 
6
6
  require_relative 'base'
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
3
+ # SPDX-FileCopyrightText: Copyright (c) 2024-2026 Yegor Bugayenko
4
4
  # SPDX-License-Identifier: MIT
5
5
 
6
6
  require_relative 'base'
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
3
+ # SPDX-FileCopyrightText: Copyright (c) 2024-2026 Yegor Bugayenko
4
4
  # SPDX-License-Identifier: MIT
5
5
 
6
6
  require_relative 'base'
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
3
+ # SPDX-FileCopyrightText: Copyright (c) 2024-2026 Yegor Bugayenko
4
4
  # SPDX-License-Identifier: MIT
5
5
 
6
6
  require_relative 'base'
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
3
+ # SPDX-FileCopyrightText: Copyright (c) 2024-2026 Yegor Bugayenko
4
4
  # SPDX-License-Identifier: MIT
5
5
 
6
6
  require_relative 'base'
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
3
+ # SPDX-FileCopyrightText: Copyright (c) 2024-2026 Yegor Bugayenko
4
4
  # SPDX-License-Identifier: MIT
5
5
 
6
6
  require_relative 'base'
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
3
+ # SPDX-FileCopyrightText: Copyright (c) 2024-2026 Yegor Bugayenko
4
4
  # SPDX-License-Identifier: MIT
5
5
 
6
6
  require_relative 'base'
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
3
+ # SPDX-FileCopyrightText: Copyright (c) 2024-2026 Yegor Bugayenko
4
4
  # SPDX-License-Identifier: MIT
5
5
 
6
6
  require_relative 'base'
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
3
+ # SPDX-FileCopyrightText: Copyright (c) 2024-2026 Yegor Bugayenko
4
4
  # SPDX-License-Identifier: MIT
5
5
 
6
6
  require_relative 'base'
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
3
+ # SPDX-FileCopyrightText: Copyright (c) 2024-2026 Yegor Bugayenko
4
4
  # SPDX-License-Identifier: MIT
5
5
 
6
6
  require_relative 'base'
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
3
+ # SPDX-FileCopyrightText: Copyright (c) 2024-2026 Yegor Bugayenko
4
4
  # SPDX-License-Identifier: MIT
5
5
 
6
6
  require_relative 'base'
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
3
+ # SPDX-FileCopyrightText: Copyright (c) 2024-2026 Yegor Bugayenko
4
4
  # SPDX-License-Identifier: MIT
5
5
 
6
6
  require_relative 'base'
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
3
+ # SPDX-FileCopyrightText: Copyright (c) 2024-2026 Yegor Bugayenko
4
4
  # SPDX-License-Identifier: MIT
5
5
 
6
6
  require_relative 'base'
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
3
+ # SPDX-FileCopyrightText: Copyright (c) 2024-2026 Yegor Bugayenko
4
4
  # SPDX-License-Identifier: MIT
5
5
 
6
6
  require_relative 'base'
@@ -8,7 +8,7 @@ require_relative 'base'
8
8
  # Matches term.
9
9
  #
10
10
  # Author:: Yegor Bugayenko (yegor256@gmail.com)
11
- # Copyright:: Copyright (c) 2024-2025 Yegor Bugayenko
11
+ # Copyright:: Copyright (c) 2024-2026 Yegor Bugayenko
12
12
  # License:: MIT
13
13
  class Factbase::Matches < Factbase::TermBase
14
14
  def initialize(operands)
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
3
+ # SPDX-FileCopyrightText: Copyright (c) 2024-2026 Yegor Bugayenko
4
4
  # SPDX-License-Identifier: MIT
5
5
 
6
6
  require_relative '../../factbase'
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
3
+ # SPDX-FileCopyrightText: Copyright (c) 2024-2026 Yegor Bugayenko
4
4
  # SPDX-License-Identifier: MIT
5
5
 
6
6
  require_relative '../../factbase'
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
3
+ # SPDX-FileCopyrightText: Copyright (c) 2024-2026 Yegor Bugayenko
4
4
  # SPDX-License-Identifier: MIT
5
5
 
6
6
  require_relative 'base'
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
3
+ # SPDX-FileCopyrightText: Copyright (c) 2024-2026 Yegor Bugayenko
4
4
  # SPDX-License-Identifier: MIT
5
5
 
6
6
  require_relative 'base'
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
3
+ # SPDX-FileCopyrightText: Copyright (c) 2024-2026 Yegor Bugayenko
4
4
  # SPDX-License-Identifier: MIT
5
5
 
6
6
  require_relative 'base'
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
3
+ # SPDX-FileCopyrightText: Copyright (c) 2024-2026 Yegor Bugayenko
4
4
  # SPDX-License-Identifier: MIT
5
5
 
6
6
  require_relative 'base'
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
3
+ # SPDX-FileCopyrightText: Copyright (c) 2024-2026 Yegor Bugayenko
4
4
  # SPDX-License-Identifier: MIT
5
5
 
6
6
  require_relative 'base'
@@ -1,13 +1,13 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
3
+ # SPDX-FileCopyrightText: Copyright (c) 2024-2026 Yegor Bugayenko
4
4
  # SPDX-License-Identifier: MIT
5
5
 
6
6
  require_relative 'base'
7
7
 
8
8
  # The term which property has exactly one value.
9
9
  # Author:: Yegor Bugayenko (yegor256@gmail.com)
10
- # Copyright:: Copyright (c) 2024-2025 Yegor Bugayenko
10
+ # Copyright:: Copyright (c) 2024-2026 Yegor Bugayenko
11
11
  # License:: MIT
12
12
  class Factbase::One < Factbase::TermBase
13
13
  # Constructor.
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
3
+ # SPDX-FileCopyrightText: Copyright (c) 2024-2026 Yegor Bugayenko
4
4
  # SPDX-License-Identifier: MIT
5
5
 
6
6
  require_relative 'base'
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
3
+ # SPDX-FileCopyrightText: Copyright (c) 2024-2026 Yegor Bugayenko
4
4
  # SPDX-License-Identifier: MIT
5
5
 
6
6
  require_relative 'base'
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
3
+ # SPDX-FileCopyrightText: Copyright (c) 2024-2026 Yegor Bugayenko
4
4
  # SPDX-License-Identifier: MIT
5
5
 
6
6
  require_relative 'base'
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
3
+ # SPDX-FileCopyrightText: Copyright (c) 2024-2026 Yegor Bugayenko
4
4
  # SPDX-License-Identifier: MIT
5
5
 
6
6
  require_relative '../../factbase'
@@ -8,7 +8,7 @@ require_relative '../../factbase'
8
8
  # Simplified operands.
9
9
  #
10
10
  # Author:: Yegor Bugayenko (yegor256@gmail.com)
11
- # Copyright:: Copyright (c) 2024-2025 Yegor Bugayenko
11
+ # Copyright:: Copyright (c) 2024-2026 Yegor Bugayenko
12
12
  # License:: MIT
13
13
  class Factbase::Simplified
14
14
  def initialize(operands)
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
3
+ # SPDX-FileCopyrightText: Copyright (c) 2024-2026 Yegor Bugayenko
4
4
  # SPDX-License-Identifier: MIT
5
5
 
6
6
  require_relative 'base'
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # SPDX-FileCopyrightText: Copyright (c) 2024-2025 Yegor Bugayenko
3
+ # SPDX-FileCopyrightText: Copyright (c) 2024-2026 Yegor Bugayenko
4
4
  # SPDX-License-Identifier: MIT
5
5
 
6
6
  require_relative 'base'