Class: RailsAiBridge::Registry::PackDefinition

Inherits:
Data
  • Object
show all
Defined in:
lib/rails_ai_bridge/registry/pack_definition.rb

Overview

Immutable value object describing a single pack's source and loading behaviour.

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#always_loaded ⇒ Boolean (readonly)

Returns whether this pack is unconditionally loaded.

Returns:

  • (Boolean) —

    whether this pack is unconditionally loaded



18
19
20
21
# File 'lib/rails_ai_bridge/registry/pack_definition.rb', line 18

PackDefinition = Data.define(:source, :tile, :always_loaded, :depends_on, :ref) do
  # @return [Boolean]
  def always_loaded? = always_loaded
end

#depends_on ⇒ Array<String> (readonly)

Returns names of packs this pack depends on.

Returns:

  • (Array<String>) —

    names of packs this pack depends on



18
19
20
21
# File 'lib/rails_ai_bridge/registry/pack_definition.rb', line 18

PackDefinition = Data.define(:source, :tile, :always_loaded, :depends_on, :ref) do
  # @return [Boolean]
  def always_loaded? = always_loaded
end

#ref ⇒ String? (readonly)

Returns optional git ref (branch, tag, or SHA) to pin the pack version; nil means use the default branch (HEAD).

Returns:

  • (String, nil) —

    optional git ref (branch, tag, or SHA) to pin the pack version; nil means use the default branch (HEAD)



18
19
20
21
# File 'lib/rails_ai_bridge/registry/pack_definition.rb', line 18

PackDefinition = Data.define(:source, :tile, :always_loaded, :depends_on, :ref) do
  # @return [Boolean]
  def always_loaded? = always_loaded
end

#source ⇒ String (readonly)

Returns pack source — local path, full git URL, or "owner/repo" shorthand.

Returns:

  • (String) —

    pack source — local path, full git URL, or "owner/repo" shorthand



18
19
20
21
# File 'lib/rails_ai_bridge/registry/pack_definition.rb', line 18

PackDefinition = Data.define(:source, :tile, :always_loaded, :depends_on, :ref) do
  # @return [Boolean]
  def always_loaded? = always_loaded
end

#tile ⇒ String (readonly)

Returns relative path to the pack's tile manifest, usually "directory.json".

Returns:

  • (String) —

    relative path to the pack's tile manifest, usually "directory.json"



18
19
20
21
# File 'lib/rails_ai_bridge/registry/pack_definition.rb', line 18

PackDefinition = Data.define(:source, :tile, :always_loaded, :depends_on, :ref) do
  # @return [Boolean]
  def always_loaded? = always_loaded
end

Instance Method Details

#always_loaded? ⇒ Boolean

Returns:

  • (Boolean)


20
# File 'lib/rails_ai_bridge/registry/pack_definition.rb', line 20

def always_loaded? = always_loaded