Page MenuHomePhabricator

final class PhutilRope
Arcanist Technical Documentation ()

String-like object which reduces the cost of managing large strings. This is particularly useful for buffering large amounts of data that is being passed to fwrite().

Methods

public function append($string)

Append a string to the rope.

Parameters
string$stringString to append.
Return
this

public function getByteLength()

Get the length of the rope.

Return
intLength of the rope in bytes.

public function getAnyPrefix()

Get an arbitrary, nonempty prefix of the rope.

Return
stringSome rope prefix.

public function getPrefixBytes($length)

Get prefix bytes of the rope, up to some maximum size.

Parameters
int$lengthMaximum number of bytes to read.
Return
stringBytes.

public function getAsString()

Return the entire rope as a normal string.

Return
stringNormal string.

public function removeBytesFromHead($remove)

Remove a specified number of bytes from the head of the rope.

Parameters
int$removeBytes to remove.
Return
this