blob: f01443529d06df7ec73972047adefe91e791bde8 [file] [log] [blame]
/**********************************************************************
* Copyright (c) 2002,2003 Rational Software Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Common Public License v0.5
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/cpl-v05.html
*
* Contributors:
* IBM Rational Software - Initial API and implementation
***********************************************************************/
package org.eclipse.cdt.internal.core.parser;
import java.io.IOException;
import java.io.Reader;
/**
* @author jcamelon
*/
public class LimitedScannerContext
extends ScannerContext
implements IScannerContext {
private final int limit;
/**
* @param reader
* @param string
* @param i
* @param object
* @param offsetLimit
*/
public LimitedScannerContext(Reader reader, String string, ContextKind kind, int offsetLimit) {
super( reader, string, kind, null );
limit = offsetLimit;
}
/* (non-Javadoc)
* @see org.eclipse.cdt.internal.core.parser.IScannerContext#read()
*/
public int read() throws IOException {
if( getOffset() == limit ) throw new IOException();
return super.read();
}
}