Context类接口
复制代码#import <Foundation/Foundation.h>
@interface Context :NSObject
@property NSString *Input;
@property NSString *Output;
@end
Context类实现
复制代码
#import "Context.h"
@implementation Context
@synthesize Input,Output;
@end
AbstractExpression类接口
复制代码
#import <Foundation/Foundation.h>
@class Context;
@interface AbstractExpression:NSObject
-(void)Interpret:(Context*)context;
@end
AbstractExpression类实现
复制代码
#import "AbstractExpression.h"
@implementation AbstractExpression
-(void)Interpret:(Context *)context{
return;
}
@end
TerminalExpression类接口
复制代码
#import "AbstractExpression.h"
@interface TerminalExpression :AbstractExpression
@end
TerminalExpression类实现
复制代码
#import "TerminalExpression.h"
@implementation TerminalExpression
-(void)Interpret:(Context *)context{
NSLog(@"终端解释器");
}
@end
NonterminalExpression类接口
复制代码
#import "AbstractExpression.h"
@interface NonterminalExpression:AbstractExpression
@end
NonterminalExpression类实现
复制代码
#import "NonterminalExpression.h"
@implementation NonterminalExpression
-(void)Interpret:(Context *)context{
NSLog(@"非终端解释器");
}
@end
Main方法调用
复制代码
#import <Foundation/Foundation.h>
#import "Context.h"










