public override void ExitParExpression([NotNull] SBP.ParExpressionContext context)
        {
            var expressionScope = m_expressionData.PopStackLevel();

            System.Diagnostics.Debug.Assert(expressionScope.Count == 1);    // Until anything else has been seen...
            var data = expressionScope.Pop();

            m_expressionData.Push(data);
        }
        //public Expression PopStackLevelAsExpression()
        //{
        //    var exp = this.TryPopStackLevelAsExpression();
        //    //if (exp == null) throw new NullReferenceException();
        //    return exp;
        //}

        //public Expression TryPopStackLevelAsExpression()
        //{
        //    Expression value = null;
        //    var stack = m_expressionData.PopStackLevel();
        //    if (stack.Count == 0) return null;
        //    var exp = stack.Pop();
        //    exp = this.ResolveIfIdentifier(exp, m_inFunctionScope);
        //    value = exp.ExpressionCode;
        //    //if (value == null)
        //    //{
        //    //    switch (exp.ReferencedType)
        //    //    {
        //    //        case SBExpressionType.Constant:
        //    //            value = Expression.Constant(exp.Value);
        //    //            break;
        //    //        //case TSExpressionType.GlobalVariableReference:
        //    //        //    break;
        //    //        //case TSExpressionType.LocalVariableReference:
        //    //        //    break;
        //    //        //case TSExpressionType.PropertyReference:
        //    //        //    break;
        //    //        //case TSExpressionType.MethodReference:
        //    //        //    break;
        //    //        case SBExpressionType.Identifier:
        //    //            value = this.ResolveQualifiedIdentifier((string)exp.Value, true)?.ExpressionCode;
        //    //            break;
        //    //        default:
        //    //            throw new NotImplementedException();
        //    //    }
        //    //}
        //    return value;
        //}

        public override void EnterParExpression([NotNull] SBP.ParExpressionContext context)
        {
            m_expressionData.PushStackLevel("EnterParExpression");
        }