Class: Arf::Types::InOutStream

Inherits:
Object
  • Object
show all
Defined in:
lib/arf/types/in_out_stream.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(input, output) ⇒ InOutStream

Returns a new instance of InOutStream.



10
11
12
13
# File 'lib/arf/types/in_out_stream.rb', line 10

def initialize(input, output)
  @input = input
  @output = output
end

Instance Attribute Details

#inputObject

Returns the value of attribute input.



8
9
10
# File 'lib/arf/types/in_out_stream.rb', line 8

def input
  @input
end

#outputObject

Returns the value of attribute output.



8
9
10
# File 'lib/arf/types/in_out_stream.rb', line 8

def output
  @output
end

Class Method Details

.[](input, output) ⇒ Object



6
# File 'lib/arf/types/in_out_stream.rb', line 6

def self.[](input, output) = new(input, output)

Instance Method Details

#resolved_input(resolver) ⇒ Object



15
16
17
18
19
# File 'lib/arf/types/in_out_stream.rb', line 15

def resolved_input(resolver)
  return input if input.is_a? Symbol

  @resolved_input ||= resolver.find_type(input)
end

#resolved_output(resolver) ⇒ Object



21
22
23
24
25
# File 'lib/arf/types/in_out_stream.rb', line 21

def resolved_output(resolver)
  return output if output.is_a? Symbol

  @resolved_output ||= resolver.find_type(output)
end