Class: VSM::Port

Inherits:
Object
  • Object
show all
Defined in:
lib/vsm/port.rb

Instance Method Summary collapse

Constructor Details

#initialize(capsule:) ⇒ Port

Returns a new instance of Port.



4
# File 'lib/vsm/port.rb', line 4

def initialize(capsule:) = (@capsule = capsule)

Instance Method Details

#egress_subscribeObject



6
# File 'lib/vsm/port.rb', line 6

def egress_subscribe = @capsule.bus.subscribe { |m| render_out(m) if should_render?(m) }

#ingress(_event) ⇒ Object

Raises:

  • (NotImplementedError)


5
# File 'lib/vsm/port.rb', line 5

def ingress(_event) = raise NotImplementedError

#render_out(_message) ⇒ Object



8
# File 'lib/vsm/port.rb', line 8

def render_out(_message) = nil

#should_render?(message) ⇒ Boolean

Returns:

  • (Boolean)


7
# File 'lib/vsm/port.rb', line 7

def should_render?(message) = [:assistant, :tool_result].include?(message.kind)