Dev2.Util.JsonPathContext.Interpreter.Slice C# (CSharp) Method

Slice() private method

private Slice ( string loc, string expr, object value, string path ) : void
loc string
expr string
value object
path string
return void
            private void Slice(string loc, string expr, object value, string path)
            {
                var list = value as IList;

                if (list == null)
                    return;

                int length = list.Count;
                string[] parts = loc.Split(Colon);
                int start = ParseInt(parts[0]);
                int end = ParseInt(parts[1], list.Count);
                int step = parts.Length > 2 ? ParseInt(parts[2], 1) : 1;
                start = (start < 0) ? Math.Max(0, start + length) : Math.Min(length, start);
                end = (end < 0) ? Math.Max(0, end + length) : Math.Min(length, end);
                for (int i = start; i < end; i += step)
                    Trace(i + ";" + expr, value, path);
            }