if ( expression == null || expression.trim( ).length( ) == 0 ) return new ArrayList( ); List columnExprList = new ArrayList( ); columnExprList.clear( ); Context context = Context.enter( ); try { ScriptOrFnNode tree = instance.parse( expression, context ); instance.CompiledExprFromTree( expression, context, tree, columnExprList ); } catch ( Exception ex ) { throw new CoreException( instance.pluginId, ResourceConstants.INVALID_EXPRESSION, ex ); } finally { Context.exit( ); } return columnExprList;
return compileColumnExpression( expression, true );
	static List compileColumnExpression( String expression )			throws BirtException	{		if ( expression == null || expression.trim( ).length( ) == 0 )			return new ArrayList( );		List columnExprList = new ArrayList( );		columnExprList.clear( );		Context context = Context.enter( );		try		{			ScriptOrFnNode tree = instance.parse( expression, context );			instance.CompiledExprFromTree( expression,					context,					tree,					columnExprList );		}		catch ( Exception ex )		{			throw new CoreException( instance.pluginId,					ResourceConstants.INVALID_EXPRESSION,					ex );		}		finally		{			Context.exit( );		}		return columnExprList;	}