18d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt// [The "BSD licence"] 28d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt// Copyright (c) 2006-2007 Kay Roepke 2010 Alan Condit 304949598a23f501be6eec21697465fd46a28840aDmitry Shmidt// All rights reserved. 48d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt// 5c5ec7f57ead87efa365800228aa0b09a12d9e6c4Dmitry Shmidt// Redistribution and use in source and binary forms, with or without 6c5ec7f57ead87efa365800228aa0b09a12d9e6c4Dmitry Shmidt// modification, are permitted provided that the following conditions 78d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt// are met: 88d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt// 1. Redistributions of source code must retain the above copyright 98d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt// notice, this list of conditions and the following disclaimer. 108d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt// 2. Redistributions in binary form must reproduce the above copyright 118d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt// notice, this list of conditions and the following disclaimer in the 128d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt// documentation and/or other materials provided with the distribution. 138d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt// 3. The name of the author may not be used to endorse or promote products 148d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt// derived from this software without specific prior written permission. 1561d9df3e62aaa0e87ad05452fcb95142159a17b6Dmitry Shmidt// 168d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt// THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR 178d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 188d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt// OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 198d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt// IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 208d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt// INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 218d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt// NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 228d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 238d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 248d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 258d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt// THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 268d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 278d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 288d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt#import <Cocoa/Cocoa.h> 298d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt#import "ANTLRRecognitionException.h" 308d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 318d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt@interface ANTLRMismatchedSetException : ANTLRRecognitionException { 328d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt NSSet *expecting; 338d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt} 348d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 358d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt@property (retain, getter=getExpecting, setter=setExpecting:) NSSet *expecting; 368d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 378d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt+ (id) exceptionWithSet:(NSSet *) theExpectedSet stream:(id<ANTLRIntStream>) theStream; 388d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt- (id) initWithSet:(NSSet *) theExpectedSet stream:(id<ANTLRIntStream>) theStream; 398d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 408d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt- (NSSet *) getExpecting; 418d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt- (void) setExpecting: (NSSet *) anExpectedSet; 428d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 438d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt 448d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt@end 458d520ff1dc2da35cdca849e982051b86468016d8Dmitry Shmidt