Ejemplo n.º 1
0
 public override void accept(CodeVisitor visitor)
 {
     foreach (Statement stmt in list)
     {
         stmt.node.accept(visitor);
     }
 }
Ejemplo n.º 2
0
        public override void accept_children(CodeVisitor visitor)
        {
            foreach (Parameter param in get_parameters())
            {
                param.accept(visitor);
            }

            foreach (DataType error_type in get_error_types().ToList())
            {
                error_type.accept(visitor);
            }

            foreach (Expression precondition in get_preconditions())
            {
                precondition.accept(visitor);
            }

            foreach (Expression postcondition in get_postconditions())
            {
                postcondition.accept(visitor);
            }

            if (body != null)
            {
                body.accept(visitor);
            }
        }
Ejemplo n.º 3
0
 public override void accept_children(CodeVisitor visitor)
 {
     if (body != null)
     {
         body.accept(visitor);
     }
 }
Ejemplo n.º 4
0
 public override void accept_children(CodeVisitor visitor)
 {
     foreach (Expression expr in expression_list)
     {
         expr.accept(visitor);
     }
 }
Ejemplo n.º 5
0
 public void accept_children(CodeVisitor visitor)
 {
     foreach (CodeNode node in nodes)
     {
         node.accept(visitor);
     }
 }
Ejemplo n.º 6
0
        public override void accept_children(CodeVisitor visitor)
        {
            container.accept(visitor);

            start.accept(visitor);
            stop.accept(visitor);
        }
Ejemplo n.º 7
0
 public override void accept_children(CodeVisitor visitor)
 {
     foreach (Statement stmt in statement_list)
     {
         stmt.node.accept(visitor);
     }
 }
Ejemplo n.º 8
0
 public override void accept_children(CodeVisitor visitor)
 {
     if (value != null)
     {
         value.accept(visitor);
     }
 }
Ejemplo n.º 9
0
        private void RewriteIL(string dllPath, MethodDefinition method, Action <object> cb)
        {
            var instructions       = method.Body.Instructions.ToList();
            var targetInstructions = GetInstructionsWhichNeedsRewrite(instructions, cb);

            ClearMethodBodyInstructions(method);
            var processor = method.Body.GetILProcessor();

            foreach (var instruction in instructions)
            {
                foreach (var generatedInstruction in GenerateInstrumentAfterAddingCoverageHook(
                             targetInstructions,
                             instruction, method, processor))
                {
                    if (generatedInstruction == null)
                    {
                        continue;
                    }

                    var sequencePoint = method.DebugInformation.GetSequencePoint(instruction);
                    var typeName      = method.DeclaringType.Name;
                    CodeVisitor.AppendCodeInstrument(processor, sequencePoint, "coverage.txt", typeName, method.Name);

                    if (InstructionInTargetInstructionList(instruction, targetInstructions))
                    {
                        OverrideInstructionValues(targetInstructions, instruction);
                    }
                    else
                    {
                        processor.Append(instruction);
                    }
                }
            }
        }
Ejemplo n.º 10
0
 public override void accept_children(CodeVisitor visitor)
 {
     foreach (Expression expr in initializers)
     {
         expr.accept(visitor);
     }
 }
Ejemplo n.º 11
0
        public override void accept_children(CodeVisitor visitor)
        {
            if (base_type != null)
            {
                base_type.accept(visitor);
            }

            foreach (TypeParameter p in type_parameters)
            {
                p.accept(visitor);
            }

            foreach (Field f in fields)
            {
                f.accept(visitor);
            }

            foreach (Constant c in constants)
            {
                c.accept(visitor);
            }

            foreach (Method m in methods)
            {
                m.accept(visitor);
            }

            foreach (Property prop in properties)
            {
                prop.accept(visitor);
            }
        }
Ejemplo n.º 12
0
 public override void accept_children(CodeVisitor visitor)
 {
     inner.accept(visitor);
     if (!is_non_null_cast)
     {
         type_reference.accept(visitor);
     }
 }
Ejemplo n.º 13
0
        public override void accept_children(CodeVisitor visitor)
        {
            condition.accept(visitor);

            visitor.visit_end_full_expression(condition);

            body.accept(visitor);
        }
Ejemplo n.º 14
0
        public override void accept(CodeVisitor visitor)
        {
            inner.accept(visitor);

            visitor.visit_pointer_indirection(this);

            visitor.visit_expression(this);
        }
Ejemplo n.º 15
0
 public override void accept_children(CodeVisitor visitor)
 {
     container.accept(visitor);
     foreach (Expression e in indices)
     {
         e.accept(visitor);
     }
 }
Ejemplo n.º 16
0
        public override void accept_children(CodeVisitor visitor)
        {
            foreach (DataType type in prerequisites.ToList())
            {
                type.accept(visitor);
            }

            foreach (TypeParameter p in get_type_parameters())
            {
                p.accept(visitor);
            }

            /* process enums first to avoid order problems in C code */
            foreach (ValaEnum en in enums)
            {
                en.accept(visitor);
            }

            foreach (Method m in methods)
            {
                m.accept(visitor);
            }

            foreach (Field f in fields)
            {
                f.accept(visitor);
            }

            foreach (Constant c in constants)
            {
                c.accept(visitor);
            }

            foreach (Property prop in properties)
            {
                prop.accept(visitor);
            }

            foreach (Signal sig in signals)
            {
                sig.accept(visitor);
            }

            foreach (Class cl in classes)
            {
                cl.accept(visitor);
            }

            foreach (Struct st in structs)
            {
                st.accept(visitor);
            }

            foreach (ValaDelegate d in delegates)
            {
                d.accept(visitor);
            }
        }
Ejemplo n.º 17
0
        public override void accept_children(CodeVisitor visitor)
        {
            foreach (UsingDirective ns_ref in using_directives)
            {
                ns_ref.accept(visitor);
            }

            foreach (Namespace ns in namespaces)
            {
                ns.accept(visitor);
            }

            /* process enums first to avoid order problems in C code */
            foreach (ValaEnum en in enums)
            {
                en.accept(visitor);
            }

            foreach (ErrorDomain edomain in error_domains)
            {
                edomain.accept(visitor);
            }

            foreach (Class cl in classes)
            {
                cl.accept(visitor);
            }

            foreach (Interface iface in interfaces)
            {
                iface.accept(visitor);
            }

            foreach (Struct st in structs)
            {
                st.accept(visitor);
            }

            foreach (ValaDelegate d in delegates)
            {
                d.accept(visitor);
            }

            foreach (Constant c in constants)
            {
                c.accept(visitor);
            }

            foreach (Field f in fields)
            {
                f.accept(visitor);
            }

            foreach (Method m in methods)
            {
                m.accept(visitor);
            }
        }
Ejemplo n.º 18
0
        public override void accept_children(CodeVisitor visitor)
        {
            if (return_expression != null)
            {
                return_expression.accept(visitor);

                visitor.visit_end_full_expression(return_expression);
            }
        }
Ejemplo n.º 19
0
        public override void accept_children(CodeVisitor visitor)
        {
            call.accept(visitor);

            foreach (Expression expr in argument_list)
            {
                expr.accept(visitor);
            }
        }
Ejemplo n.º 20
0
        public override void accept_children(CodeVisitor visitor)
        {
            variable_type.accept(visitor);

            if (initializer != null)
            {
                initializer.accept(visitor);
            }
        }
Ejemplo n.º 21
0
 public override void accept(CodeVisitor visitor)
 {
     resource.accept(visitor);
     if (body != null)
     {
         body.accept(visitor);
     }
     visitor.visit_lock_statement(this);
 }
Ejemplo n.º 22
0
        public override void accept(CodeVisitor visitor)
        {
            if (use_iterator)
            {
                base.accept(visitor);
                return;
            }

            visitor.visit_foreach_statement(this);
        }
Ejemplo n.º 23
0
 public override void accept_children(CodeVisitor visitor)
 {
     if (type_argument_list != null && type_argument_list.Count > 0)
     {
         foreach (DataType type_arg in type_argument_list.ToList())
         {
             type_arg.accept(visitor);
         }
     }
 }
Ejemplo n.º 24
0
        public override void accept_children(CodeVisitor visitor)
        {
            expression.accept(visitor);

            visitor.visit_end_full_expression(expression);

            foreach (SwitchSection section in sections)
            {
                section.accept(visitor);
            }
        }
Ejemplo n.º 25
0
        public DebugCodeTraverser(CodeVisitor visitor)
        {
            var dVisitor = visitor as DebugOperatorCodeVisitor;

            if (dVisitor != null)
            {
                dVisitor.Traverser = this;
            }

            PreorderVisitor = visitor;
        }
Ejemplo n.º 26
0
        public override void accept_children(CodeVisitor visitor)
        {
            if (inner != null)
            {
                inner.accept(visitor);
            }

            foreach (DataType type_arg in type_argument_list.ToList())
            {
                type_arg.accept(visitor);
            }
        }
Ejemplo n.º 27
0
        public override void accept_children(CodeVisitor visitor)
        {
            foreach (ErrorCode ecode in codes)
            {
                ecode.accept(visitor);
            }

            foreach (Method m in methods)
            {
                m.accept(visitor);
            }
        }
Ejemplo n.º 28
0
        public override void accept_children(CodeVisitor visitor)
        {
            foreach (TypeParameter p in get_type_parameters())
            {
                p.accept(visitor);
            }

            if (base_interface_type != null)
            {
                base_interface_type.accept(visitor);
            }

            if (return_type != null)
            {
                return_type.accept(visitor);
            }

            foreach (Parameter param in parameters)
            {
                param.accept(visitor);
            }

            foreach (DataType error_type in get_error_types().ToList())
            {
                error_type.accept(visitor);
            }

            if (result_var != null)
            {
                result_var.accept(visitor);
            }

            if (preconditions != null)
            {
                foreach (Expression precondition in preconditions)
                {
                    precondition.accept(visitor);
                }
            }

            if (postconditions != null)
            {
                foreach (Expression postcondition in postconditions)
                {
                    postcondition.accept(visitor);
                }
            }

            if (body != null)
            {
                body.accept(visitor);
            }
        }
Ejemplo n.º 29
0
        public override void accept_children(CodeVisitor visitor)
        {
            foreach (SwitchLabel label in labels)
            {
                label.accept(visitor);
            }

            foreach (Statement st in get_statements())
            {
                st.node.accept(visitor);
            }
        }
Ejemplo n.º 30
0
        public override void accept_children(CodeVisitor visitor)
        {
            condition.accept(visitor);

            visitor.visit_end_full_expression(condition);

            true_statement.accept(visitor);
            if (false_statement != null)
            {
                false_statement.accept(visitor);
            }
        }