HTML Tidy: buffio.h File Reference

HTML Tidy 0.1

Data Structures | Functions
buffio.h File Reference
`#include "platform.h"`
`#include "tidy.h"`

Go to the source code of this file.

## Data Structures
struct | _TidyBuffer

## Functions
void TIDY_CALL | tidyBufInit (TidyBuffer *buf)
void TIDY_CALL | tidyBufInitWithAllocator (TidyBuffer *buf, TidyAllocator *allocator)
void TIDY_CALL | tidyBufAlloc (TidyBuffer *buf, uint allocSize)
void TIDY_CALL | tidyBufAllocWithAllocator (TidyBuffer *buf, TidyAllocator *allocator, uint allocSize)
void TIDY_CALL | tidyBufCheckAlloc (TidyBuffer *buf, uint allocSize, uint chunkSize)
void TIDY_CALL | tidyBufFree (TidyBuffer *buf)
void TIDY_CALL | tidyBufClear (TidyBuffer *buf)
void TIDY_CALL | tidyBufAttach (TidyBuffer *buf, byte *bp, uint size)
void TIDY_CALL | tidyBufDetach (TidyBuffer *buf)
void TIDY_CALL | tidyBufAppend (TidyBuffer *buf, void *vp, uint size)
void TIDY_CALL | tidyBufPutByte (TidyBuffer *buf, byte bv)
int TIDY_CALL | tidyBufPopByte (TidyBuffer *buf)
int TIDY_CALL | tidyBufGetByte (TidyBuffer *buf)
Bool TIDY_CALL | tidyBufEndOfInput (TidyBuffer *buf)
void TIDY_CALL | tidyBufUngetByte (TidyBuffer *buf, byte bv)
void TIDY_CALL | tidyInitInputBuffer (TidyInputSource *inp, TidyBuffer *buf)
void TIDY_CALL | tidyInitOutputBuffer (TidyOutputSink *outp, TidyBuffer *buf)

## Detailed Description

- Treat buffer as an I/O stream.

(c) 1998-2007 (W3C) MIT, ERCIM, Keio University See tidy.h for the copyright notice.

CVS Info :

Author
  arnaud02

Date
  2007/01/23 11:17:45

Revision
  1.9

Requires buffer to automatically grow as bytes are added. Must keep track of current read and write points.

## Function Documentation

void TIDY_CALL tidyBufInit | ( | TidyBuffer * | buf | ) |

Initialize data structure using the default allocator

void TIDY_CALL tidyBufInitWithAllocator | ( | TidyBuffer * | buf,
|  | TidyAllocator * | allocator
| ) |  |

Initialize data structure using the given custom allocator

void TIDY_CALL tidyBufAlloc | ( | TidyBuffer * | buf,
|  | uint | allocSize
| ) |  |

Free current buffer, allocate given amount, reset input pointer, use the default allocator

void TIDY_CALL tidyBufAllocWithAllocator | ( | TidyBuffer * | buf,
|  | TidyAllocator * | allocator,
|  | uint | allocSize
| ) |  |

Free current buffer, allocate given amount, reset input pointer, use the given custom allocator

void TIDY_CALL tidyBufCheckAlloc | ( | TidyBuffer * | buf,
|  | uint | allocSize,
|  | uint | chunkSize
| ) |  |

Expand buffer to given size. Chunk size is minimum growth. Pass 0 for default of 256 bytes.

void TIDY_CALL tidyBufFree | ( | TidyBuffer * | buf | ) |

Free current contents and zero out

void TIDY_CALL tidyBufClear | ( | TidyBuffer * | buf | ) |

Set buffer bytes to 0

void TIDY_CALL tidyBufAttach | ( | TidyBuffer * | buf,
|  | byte * | bp,
|  | uint | size
| ) |  |

Attach to existing buffer

void TIDY_CALL tidyBufDetach | ( | TidyBuffer * | buf | ) |

Detach from buffer. Caller must free.

void TIDY_CALL tidyBufAppend | ( | TidyBuffer * | buf,
|  | void * | vp,
|  | uint | size
| ) |  |

Append bytes to buffer. Expand if necessary.

void TIDY_CALL tidyBufPutByte | ( | TidyBuffer * | buf,
|  | byte | bv
| ) |  |

Append one byte to buffer. Expand if necessary.

int TIDY_CALL tidyBufPopByte | ( | TidyBuffer * | buf | ) |

Get byte from end of buffer

int TIDY_CALL tidyBufGetByte | ( | TidyBuffer * | buf | ) |

Get byte from front of buffer. Increment input offset.

Bool TIDY_CALL tidyBufEndOfInput | ( | TidyBuffer * | buf | ) |

At end of buffer?

void TIDY_CALL tidyBufUngetByte | ( | TidyBuffer * | buf,
|  | byte | bv
| ) |  |

Put a byte back into the buffer. Decrement input offset.

void TIDY_CALL tidyInitInputBuffer | ( | TidyInputSource * | inp,
|  | TidyBuffer * | buf
| ) |  |

Initialize a buffer input source

void TIDY_CALL tidyInitOutputBuffer | ( | TidyOutputSink * | outp,
|  | TidyBuffer * | buf
| ) |  |

Initialize a buffer output sink