CustomListItemsEntity(IVariableInformation variable, NatvisScope natvisScope,
                       CustomListItemsType customList, NatvisDiagnosticLogger logger,
                       NatvisEntityStore store, NatvisExpressionEvaluator evaluator,
                       IVariableNameTransformer nameTransformer, CodeBlockParser parser)
     : base(variable, logger, evaluator, natvisScope)
 {
     _customList      = customList;
     _store           = store;
     _nameTransformer = nameTransformer;
     _parser          = parser;
 }
예제 #2
0
        public LoopBlock(LoopType loopType, CustomListItemsContext ctx,
                         NatvisExpressionEvaluator evaluator, CodeBlockParser parser)
        {
            _loop      = loopType;
            _ctx       = ctx;
            _evaluator = evaluator;

            IList <ICodeBlock> loopBlocks = parser.Parse(loopType.CodeBlock ?? new object[0], ctx);

            _loopInstructions = new MultipleInstructionsBlock(loopBlocks);
        }
예제 #3
0
        public ConditionalBlock(ConditionalCodeBlockGroup conditionGroup,
                                CustomListItemsContext ctx, NatvisExpressionEvaluator evaluator,
                                CodeBlockParser parser)
        {
            _conditionGroup = conditionGroup;
            _ctx            = ctx;
            _evaluator      = evaluator;

            _innerBlocks = conditionGroup.ConditionalCode
                           .Select(branch => new MultipleInstructionsBlock(
                                       parser.Parse(branch.CodeBlock ?? new object[0], ctx)))
                           .ToList();
        }