An Output is an abstract write. A specific output implementation will only have to override the writeByte and maybe the write, flush and close methods. See File.write and String.write for two ways of creating an Output.

Variables

bigEndian:Bool

Endianness (word byte order) used when writing numbers.

If true, big-endian is used, otherwise little-endian is used.

Methods

close():Void

Close the output.

Behaviour while writing after calling this method is unspecified.

flush():Void

Flush any buffered data.

prepare(nbytes:Int):Void

Inform that we are about to write at least nbytes bytes.

The underlying implementation can allocate proper working space depending on this information, or simply ignore it. This is not a mandatory call but a tip and is only used in some specific cases.

write(s:Bytes):Void

Write all bytes stored in s.

writeByte(c:Int):Void

Write one byte.

@:has_untypedwriteBytes(s:Bytes, pos:Int, len:Int):Int

Write len bytes from s starting by position specified by pos.

Returns the actual length of written data that can differ from len.

See writeFullBytes that tries to write the exact amount of specified bytes.

writeDouble(x:Float):Void

Write x as 64-bit double-precision floating point number.

Endianness is specified by the bigEndian property.

writeFloat(x:Float):Void

Write x as 32-bit floating point number.

Endianness is specified by the bigEndian property.

writeFullBytes(s:Bytes, pos:Int, len:Int):Void

Write len bytes from s starting by position specified by pos.

Unlike writeBytes, this method tries to write the exact len amount of bytes.

writeInput(i:Input, ?bufsize:Int):Void

Read all available data from i and write it.

The bufsize optional argument specifies the size of chunks by which data is read and written. Its default value is 4096.

writeInt16(x:Int):Void

Write x as 16-bit signed integer.

Endianness is specified by the bigEndian property.

writeInt24(x:Int):Void

Write x as 24-bit signed integer.

Endianness is specified by the bigEndian property.

writeInt32(x:Int):Void

Write x as 32-bit signed integer.

Endianness is specified by the bigEndian property.

writeInt8(x:Int):Void

Write x as 8-bit signed integer.

@:has_untypedwriteString(s:String, ?encoding:Encoding):Void

Write s string.

writeUInt16(x:Int):Void

Write x as 16-bit unsigned integer.

Endianness is specified by the bigEndian property.

writeUInt24(x:Int):Void

Write x as 24-bit unsigned integer.

Endianness is specified by the bigEndian property.