ParseStack.Push C# (CSharp) Method

Push() public method

public Push ( string str ) : void
str string
return void
            void Push(string str)
            {
                base.Push(str);
            }

Usage Example

Example #1
0
        object[] DeserializeParameter(Type serviceType, XmlNode[] paramNodes, ParameterInfo[] parameterInfos)
        {
            var parser           = new XmlParser(Configuration);
            var parameterObjects = new List <object>();
            var paramterCount    = GetParamsPos(parameterInfos) ?? parameterInfos.Length;

            for (int i = 0; i < paramterCount; i++)
            {
                var paramNode = paramNodes[i];
                var valueNode = paramNode.SelectSingleNode("value");
                if (valueNode == null)
                {
                    throw new XmlRpcInvalidXmlRpcException("Missing value element.");
                }

                var node = valueNode.SelectValueNode();
                if (serviceType != null)
                {
                    _parseStack.Push($"parameter {i + 1}");
                    var parsedValue = parser.ParseValue(node, parameterInfos[i].ParameterType, _parseStack);
                    parameterObjects.Add(parsedValue);
                }
                else
                {
                    _parseStack.Push($"parameter {i}");
                    var parsedValue = parser.ParseValue(node, null, _parseStack);
                    parameterObjects.Add(parsedValue);
                }

                _parseStack.Pop();
            }

            return(parameterObjects.ToArray());
        }
All Usage Examples Of ParseStack::Push