All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.semanticweb.owlapi.functional.parser.StringProvider Maven / Gradle / Ivy

There is a newer version: 5.5.1
Show newest version
/* Generated By:JavaCC: Do not edit this line. StringProvider.java Version 7.0 */
/* JavaCCOptions:KEEP_LINE_COLUMN=true */
package org.semanticweb.owlapi.functional.parser;


import java.io.IOException;

@SuppressWarnings("all")
public class StringProvider implements Provider {

    String _string;
    int _position = 0;
    int _size;

    public StringProvider(String string) {
        _string = string;
        _size = string.length();
    }

    @Override
    public int read(char[] cbuf, int off, int len) throws IOException {
        int numCharsOutstandingInString = _size - _position;

        if (numCharsOutstandingInString == 0) {
            return -1;
        }

        int numBytesInBuffer = cbuf.length;
        int numBytesToRead = numBytesInBuffer - off;
        numBytesToRead = numBytesToRead > len ? len : numBytesToRead;

        if (numBytesToRead > numCharsOutstandingInString) {
            numBytesToRead = numCharsOutstandingInString;
        }

        _string.getChars(_position, _position + numBytesToRead, cbuf, off);

        _position += numBytesToRead;

        return numBytesToRead;
    }

    @Override
    public void close() throws IOException {
        _string = null;
    }

}
/* JavaCC - OriginalChecksum=36da5537ffa35615cc115f0d9dfc50e9 (do not edit this line) */




© 2015 - 2024 Weber Informatics LLC | Privacy Policy