HTML Tidy  4.9.15
The HTACG Tidy HTML Project
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.

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