Annotation of researchv9/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.doallocate()
        !             9: {
        !            10:        if ((base = new char[BUFSIZE]) != NULL) {
        !            11:                pptr = gptr = base;
        !            12:                eptr = base + BUFSIZE;
        !            13:                alloc = 1;
        !            14:                return 0;
        !            15:        } else
        !            16:                return EOF;
        !            17: }
        !            18: 
        !            19: /*
        !            20:        Come here on a put to a full buffer.  Allocate the buffer if 
        !            21:        it is uninitialized.
        !            22:        Returns:        EOF on error
        !            23:                        the argument on success
        !            24: */
        !            25: virtual int streambuf.overflow(int c)
        !            26: {
        !            27:        if (allocate() == EOF) return EOF;
        !            28:        if (c != EOF) *pptr++ = c;
        !            29:        return c&0377;
        !            30: }
        !            31: 
        !            32: /*
        !            33:        Fill a buffer.
        !            34:        Returns:        EOF on error or end of input
        !            35:                        next character on success
        !            36: */
        !            37: virtual int streambuf.underflow()
        !            38: {
        !            39:        return EOF;
        !            40: }

unix.superglobalmegacorp.com

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