//
//  EXPFunctionElement.h
//  XMLTest
//
//  Created by Ashley on 10/05/2007.
//  Copyright 2007 __MyCompanyName__. All rights reserved.
//

#import <Foundation/Foundation.h>
#import "EXPBlockElement.h"

@class EXPSymbolTable;

@interface EXPFunctionElement : EXPBlockElement {
	BOOL _variableArgs;
	BOOL _isBuiltin;
	EXPExpressionType _expressionType;
}

+ (void) registerFunction:(EXPSymbolTable *)table name:(NSString *)name variableArgs:(BOOL)vargs formalArguments:(id)formalArguments 
	returnType:(EXPExpressionType)returnType;
//+ (void) registerDefaultFunctions:(EXPSymbolTable *)table;

- (void) setVariableArgs:(BOOL)variableArgs;
- (BOOL) variableArgs;
- (void) setIsBuiltin:(BOOL)isBuiltin;
- (BOOL) isBuiltin;
- (void) setExpressionType:(EXPExpressionType) expressionType;

- (id) dimensions;

@end