//
//  EXPUserFunctionElement.m
//  dde
//
//  Created by ashley on 17/08/2008.
//  Copyright 2008 __MyCompanyName__. All rights reserved.
//

#import "EXPUserFunctionElement.h"
#import "EXPBlockElement.h"
#import "EXPError.h"

@implementation EXPUserFunctionElement

- (id) init
{
	if ((self = [super init])!=nil) {
		_formalArguments = [[NSMutableArray alloc] init];
	}
	
	return self;
}

- (void) setFormalArguments:(id)formalArguments
{
	[formalArguments retain];
	[_formalArguments release];
	_formalArguments = formalArguments;
}

- (void) addFormalArgument:(id)formalArgument error:(id)error
{
	if (formalArgument!=nil) {
		[[self formalArguments] addObject:formalArgument];
	}
}

- (id) formalArguments
{
	return _formalArguments;
}

- (NSString *)elementType
{
	return @"userfunction";
}

- (EXPExpressionType) expressionType
{
	return doubleType;
}

- (void) dealloc
{
	[_formalArguments release];
	[super dealloc];
}

@end