Пример #1
0
        /// <summary>
        ///		Clona el identificador de variable
        /// </summary>
        public override ExpressionBase Clone()
        {
            ExpressionVariableIdentifier variable = new ExpressionVariableIdentifier(Name);

            // Clona las expresiones
            variable.IndexExpressions    = IndexExpressions.Clone();
            variable.IndexExpressionsRPN = IndexExpressionsRPN.Clone();
            if (Member != null)
            {
                variable.Member = Member.Clone() as ExpressionVariableIdentifier;
            }
            // Devuelve el objeto clonado
            return(variable);
        }
Пример #2
0
        /// <summary>
        ///		Obtiene la información de depuración
        /// </summary>
        public override string GetDebugInfo()
        {
            string debug = Name;

            // Añade el índice
            if (IndexExpressions?.Count > 0)
            {
                debug += "[" + IndexExpressions.GetDebugInfo() + "]";
            }
            // Añade el índice en formato RPN
            if (IndexExpressionsRPN?.Count > 0)
            {
                debug += " (RPN: " + IndexExpressionsRPN.GetDebugInfo() + ")";
            }
            // Añade el miembro
            if (Member != null)
            {
                debug += "->" + Member.GetDebugInfo();
            }
            // Devuelve la información de depuración
            return(debug);
        }