//---------------------------------------------------------------------
        public void Visit(Operation operation)
        {
            this.CheckIntrinsic(operation);

            if (_lastToken is Operation && !(operation is Exponentation))
            {
                throw ParsingException.OperationFollowedByOperation(_lastToken, operation);
            }

            _lastToken = operation;
        }