Class: StructuredDataToSql::IOSupport::CountingWriter

Inherits:
Object
  • Object
show all
Defined in:
lib/structured_data_to_sql/io_support.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(io) ⇒ CountingWriter

Returns a new instance of CountingWriter.



14
15
16
17
# File 'lib/structured_data_to_sql/io_support.rb', line 14

def initialize(io)
  @io = io
  @bytes_written = 0
end

Dynamic Method Handling

This class handles dynamic methods through the method_missing method

#method_missing(name, *args, &block) ⇒ Object



25
26
27
# File 'lib/structured_data_to_sql/io_support.rb', line 25

def method_missing(name, *args, &block)
  @io.public_send(name, *args, &block)
end

Instance Attribute Details

#bytes_writtenObject (readonly)

Returns the value of attribute bytes_written.



12
13
14
# File 'lib/structured_data_to_sql/io_support.rb', line 12

def bytes_written
  @bytes_written
end

Instance Method Details

#respond_to_missing?(name, include_private = false) ⇒ Boolean

Returns:

  • (Boolean)


29
30
31
# File 'lib/structured_data_to_sql/io_support.rb', line 29

def respond_to_missing?(name, include_private = false)
  @io.respond_to?(name, include_private) || super
end

#write(data) ⇒ Object



19
20
21
22
23
# File 'lib/structured_data_to_sql/io_support.rb', line 19

def write(data)
  written = @io.write(data)
  @bytes_written += written
  written
end