ANTLRBaseMapElement.h revision 324c4644fee44b9898524c09511bd33c3f12e2df
14b562cf889bc59e1914dd2c5d9fbd7e7bfa1ad77Argyrios Kyrtzidis// 24b562cf889bc59e1914dd2c5d9fbd7e7bfa1ad77Argyrios Kyrtzidis// ANTLRBaseMapElement.h 34b562cf889bc59e1914dd2c5d9fbd7e7bfa1ad77Argyrios Kyrtzidis// ANTLR 44b562cf889bc59e1914dd2c5d9fbd7e7bfa1ad77Argyrios Kyrtzidis// 54b562cf889bc59e1914dd2c5d9fbd7e7bfa1ad77Argyrios Kyrtzidis// Created by Alan Condit on 6/16/10. 64b562cf889bc59e1914dd2c5d9fbd7e7bfa1ad77Argyrios Kyrtzidis// [The "BSD licence"] 74b562cf889bc59e1914dd2c5d9fbd7e7bfa1ad77Argyrios Kyrtzidis// Copyright (c) 2010 Alan Condit 84b562cf889bc59e1914dd2c5d9fbd7e7bfa1ad77Argyrios Kyrtzidis// All rights reserved. 94b562cf889bc59e1914dd2c5d9fbd7e7bfa1ad77Argyrios Kyrtzidis// 104b562cf889bc59e1914dd2c5d9fbd7e7bfa1ad77Argyrios Kyrtzidis// Redistribution and use in source and binary forms, with or without 114b562cf889bc59e1914dd2c5d9fbd7e7bfa1ad77Argyrios Kyrtzidis// modification, are permitted provided that the following conditions 124b562cf889bc59e1914dd2c5d9fbd7e7bfa1ad77Argyrios Kyrtzidis// are met: 134b562cf889bc59e1914dd2c5d9fbd7e7bfa1ad77Argyrios Kyrtzidis// 1. Redistributions of source code must retain the above copyright 140853a02c3b04d96a3c432b883e403175c954cd81Argyrios Kyrtzidis// notice, this list of conditions and the following disclaimer. 150853a02c3b04d96a3c432b883e403175c954cd81Argyrios Kyrtzidis// 2. Redistributions in binary form must reproduce the above copyright 160853a02c3b04d96a3c432b883e403175c954cd81Argyrios Kyrtzidis// notice, this list of conditions and the following disclaimer in the 1731b87d8006d4863dd9b17e515ac720941efc38e3Daniel Dunbar// documentation and/or other materials provided with the distribution. 180853a02c3b04d96a3c432b883e403175c954cd81Argyrios Kyrtzidis// 3. The name of the author may not be used to endorse or promote products 1936c4464ba6cfc2a63dc67c493ef2f5ab2aea09ccSteve Naroff// derived from this software without specific prior written permission. 20f96b524306ccfa623235d375deee79637bd38f29Steve Naroff// 21a88084b78fd4ca5d3d858c14b02414f8cc399f02Douglas Gregor// THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR 220853a02c3b04d96a3c432b883e403175c954cd81Argyrios Kyrtzidis// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 23f772d1e2a5688572d07f42896a50ac57a4a41fe8Daniel Dunbar// OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 24f772d1e2a5688572d07f42896a50ac57a4a41fe8Daniel Dunbar// IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 254db64a461cb3442934afe43c83ed3f17f7c11c1dDouglas Gregor// INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 264db64a461cb3442934afe43c83ed3f17f7c11c1dDouglas Gregor// NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 274db64a461cb3442934afe43c83ed3f17f7c11c1dDouglas Gregor// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 284db64a461cb3442934afe43c83ed3f17f7c11c1dDouglas Gregor// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 294db64a461cb3442934afe43c83ed3f17f7c11c1dDouglas Gregor// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 300853a02c3b04d96a3c432b883e403175c954cd81Argyrios Kyrtzidis// THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 310853a02c3b04d96a3c432b883e403175c954cd81Argyrios Kyrtzidis 32521bf9c529e653ab28896d027352d3e16e2672d5Daniel Dunbar#import <Cocoa/Cocoa.h> 33521bf9c529e653ab28896d027352d3e16e2672d5Daniel Dunbar#import "ANTLRLinkBase.h" 34521bf9c529e653ab28896d027352d3e16e2672d5Daniel Dunbar 35521bf9c529e653ab28896d027352d3e16e2672d5Daniel Dunbar@interface ANTLRBaseMapElement : ANTLRLinkBase { 36521bf9c529e653ab28896d027352d3e16e2672d5Daniel Dunbar NSNumber *index; 37521bf9c529e653ab28896d027352d3e16e2672d5Daniel Dunbar} 38521bf9c529e653ab28896d027352d3e16e2672d5Daniel Dunbar 39521bf9c529e653ab28896d027352d3e16e2672d5Daniel Dunbar@property (retain, getter=getIndex, setter=setIndex:) NSNumber *index; 40521bf9c529e653ab28896d027352d3e16e2672d5Daniel Dunbar 41521bf9c529e653ab28896d027352d3e16e2672d5Daniel Dunbar+ (id) newANTLRBaseMapElement; 420853a02c3b04d96a3c432b883e403175c954cd81Argyrios Kyrtzidis+ (id) newANTLRBaseMapElementWithIndex:(NSNumber *)anIdx; 43f96b524306ccfa623235d375deee79637bd38f29Steve Naroff- (id) init; 44f96b524306ccfa623235d375deee79637bd38f29Steve Naroff- (id) initWithAnIndex:(NSNumber *)anIdx; 450853a02c3b04d96a3c432b883e403175c954cd81Argyrios Kyrtzidis 460853a02c3b04d96a3c432b883e403175c954cd81Argyrios Kyrtzidis- (id) copyWithZone:(NSZone *)aZone; 470853a02c3b04d96a3c432b883e403175c954cd81Argyrios Kyrtzidis 4836c4464ba6cfc2a63dc67c493ef2f5ab2aea09ccSteve Naroff- (NSNumber *)getIndex; 4936c4464ba6cfc2a63dc67c493ef2f5ab2aea09ccSteve Naroff- (void)setIndex:(NSNumber *)anIdx; 5031b87d8006d4863dd9b17e515ac720941efc38e3Daniel Dunbar 510853a02c3b04d96a3c432b883e403175c954cd81Argyrios Kyrtzidis- (NSInteger)count; 520853a02c3b04d96a3c432b883e403175c954cd81Argyrios Kyrtzidis- (NSInteger)size; 530853a02c3b04d96a3c432b883e403175c954cd81Argyrios Kyrtzidis 540853a02c3b04d96a3c432b883e403175c954cd81Argyrios Kyrtzidis@end 55e19944c93961b7618f4f3f3185f698f46369ea54Steve Naroff