Example #1
0
        public override DbgValueNode[] GetChildren(DbgEvaluationInfo evalInfo, ulong index, int count, DbgValueNodeEvaluationOptions options)
        {
            if (evalInfo is null)
            {
                throw new ArgumentNullException(nameof(evalInfo));
            }
            if (!(evalInfo.Context is DbgEvaluationContextImpl))
            {
                throw new ArgumentException();
            }
            if (evalInfo.Context.Language != Language)
            {
                throw new ArgumentException();
            }
            if (evalInfo.Context.Runtime != Runtime)
            {
                throw new ArgumentException();
            }
            if (count < 0)
            {
                throw new ArgumentOutOfRangeException(nameof(count));
            }
            var engineNodes = engineValueNode.GetChildren(evalInfo, index, count, options);

            return(DbgValueNodeUtils.ToValueNodeArray(Language, Runtime, engineNodes));
        }
Example #2
0
        public override DbgValueNode[] GetChildren(DbgEvaluationContext context, DbgStackFrame frame, ulong index, int count, DbgValueNodeEvaluationOptions options, CancellationToken cancellationToken)
        {
            if (context == null)
            {
                throw new ArgumentNullException(nameof(context));
            }
            if (!(context is DbgEvaluationContextImpl))
            {
                throw new ArgumentException();
            }
            if (context.Language != Language)
            {
                throw new ArgumentException();
            }
            if (context.Runtime != Runtime)
            {
                throw new ArgumentException();
            }
            if (frame == null)
            {
                throw new ArgumentNullException(nameof(frame));
            }
            if (frame.Runtime != Runtime)
            {
                throw new ArgumentException();
            }
            if (count < 0)
            {
                throw new ArgumentOutOfRangeException(nameof(count));
            }
            var engineNodes = engineValueNode.GetChildren(context, frame, index, count, options, cancellationToken);

            return(DbgValueNodeUtils.ToValueNodeArray(Language, Runtime, engineNodes));
        }