Annotation of researchv8dc/cmd/cfront/libC/stream/streambuf.c, revision 1.1

1.1     ! root        1: #include "stream.h"
        !             2: 
        !             3: /*
        !             4:        Allocate some space for the buffer.
        !             5:        Returns:        EOF on error
        !             6:                        0 on success
        !             7: */
        !             8: int streambuf.allocate()
        !             9: {
        !            10:        if (base == NULL) {
        !            11:                if ((base = new char[BUFSIZE]) != NULL) {
        !            12:                        pptr = gptr = base;
        !            13:                        eptr = base + BUFSIZE;
        !            14:                        alloc = 1;
        !            15:                        return 0;
        !            16:                } else
        !            17:                        return EOF;
        !            18:        }
        !            19:        return 0;
        !            20: }
        !            21: 
        !            22: /*
        !            23:        Come here on a put to a full buffer.  Allocate the buffer if 
        !            24:        it is uninitialized.
        !            25:        Returns:        EOF on error
        !            26:                        the argument on success
        !            27: */
        !            28: virtual int streambuf.overflow(int c)
        !            29: {
        !            30:        if (allocate() == EOF) return EOF;
        !            31:        if (c != EOF) *pptr++ = c;
        !            32:        return c&0377;
        !            33: }
        !            34: 
        !            35: /*
        !            36:        Fill a buffer.
        !            37:        Returns:        EOF on error or end of input
        !            38:                        next character on success
        !            39: */
        !            40: virtual int streambuf.underflow()
        !            41: {
        !            42:        return EOF;
        !            43: }

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.