protected virtual void Visit(MethodDefinition methodDefinition, Context context) { VisitTypeReference(methodDefinition.ReturnType, context.ReturnType(methodDefinition)); foreach (var customAttribute in methodDefinition.CustomAttributes) { Visit(customAttribute, context.Attribute(methodDefinition)); } foreach (var genericParameter in methodDefinition.GenericParameters) { Visit(genericParameter, context.GenericParameter(methodDefinition)); } foreach (var parameterDefinition in methodDefinition.Parameters) { Visit(parameterDefinition, context.Parameter(methodDefinition)); } if (!methodDefinition.HasBody) { return; } Visit(methodDefinition.Body, context.MethodBody(methodDefinition)); }
protected virtual void Visit(InterfaceImplementation interfaceImpl, Context context) { this.VisitTypeReference(interfaceImpl.InterfaceType, context.InterfaceType(interfaceImpl)); foreach (Mono.Cecil.CustomAttribute attribute in interfaceImpl.CustomAttributes) { this.Visit(attribute, context.Attribute(interfaceImpl)); } }
protected virtual void Visit(FieldDefinition fieldDefinition, Context context) { this.VisitTypeReference(fieldDefinition.FieldType, context.ReturnType(fieldDefinition)); foreach (Mono.Cecil.CustomAttribute attribute in fieldDefinition.CustomAttributes) { this.Visit(attribute, context.Attribute(fieldDefinition)); } }
protected virtual void Visit(FieldDefinition fieldDefinition, Context context) { VisitTypeReference(fieldDefinition.FieldType, context.ReturnType(fieldDefinition)); foreach (var customAttribute in fieldDefinition.CustomAttributes) { Visit(customAttribute, context.Attribute(fieldDefinition)); } }
protected virtual void Visit(EventDefinition eventDefinition, Context context) { this.VisitTypeReference(eventDefinition.EventType, context.ReturnType(eventDefinition)); foreach (Mono.Cecil.CustomAttribute attribute in eventDefinition.CustomAttributes) { this.Visit(attribute, context.Attribute(eventDefinition)); } this.Visit(eventDefinition.AddMethod, context.EventAdder(eventDefinition)); this.Visit(eventDefinition.RemoveMethod, context.EventRemover(eventDefinition)); }
protected virtual void Visit(EventDefinition eventDefinition, Context context) { VisitTypeReference(eventDefinition.EventType, context.ReturnType(eventDefinition)); foreach (var customAttribute in eventDefinition.CustomAttributes) { Visit(customAttribute, context.Attribute(eventDefinition)); } Visit(eventDefinition.AddMethod, context.EventAdder(eventDefinition)); Visit(eventDefinition.RemoveMethod, context.EventRemover(eventDefinition)); }
protected virtual void Visit(PropertyDefinition propertyDefinition, Context context) { this.VisitTypeReference(propertyDefinition.PropertyType, context.ReturnType(propertyDefinition)); foreach (Mono.Cecil.CustomAttribute attribute in propertyDefinition.CustomAttributes) { this.Visit(attribute, context.Attribute(propertyDefinition)); } if (propertyDefinition.GetMethod != null) { this.Visit(propertyDefinition.GetMethod, context.Getter(propertyDefinition)); } if (propertyDefinition.SetMethod != null) { this.Visit(propertyDefinition.SetMethod, context.Setter(propertyDefinition)); } }
protected virtual void Visit(TypeDefinition typeDefinition, Context context) { if (typeDefinition.BaseType != null) { VisitTypeReference(typeDefinition.BaseType, context.BaseType(typeDefinition)); } foreach (var customAttribute in typeDefinition.CustomAttributes) { Visit(customAttribute, context.Attribute(typeDefinition)); } foreach (var typeReference in typeDefinition.Interfaces) { VisitTypeReference(typeReference, context.Interface(typeDefinition)); } foreach (var genericParameter in typeDefinition.GenericParameters) { Visit(genericParameter, context.GenericParameter(context)); } foreach (var propertyDefinition in typeDefinition.Properties) { Visit(propertyDefinition, context.Member(typeDefinition)); } foreach (var fieldDefinition in typeDefinition.Fields) { Visit(fieldDefinition, context.Member(typeDefinition)); } foreach (var eventDefinition in typeDefinition.Events) { Visit(eventDefinition, context.Member(typeDefinition)); } foreach (var methodDefinition in typeDefinition.Methods) { Visit(methodDefinition, context.Member(typeDefinition)); } foreach (var nestedType in typeDefinition.NestedTypes) { Visit(nestedType, context.NestedType(typeDefinition)); } }
protected virtual void Visit(MethodDefinition methodDefinition, Context context) { this.VisitTypeReference(methodDefinition.ReturnType, context.ReturnType(methodDefinition)); foreach (Mono.Cecil.CustomAttribute attribute in methodDefinition.CustomAttributes) { this.Visit(attribute, context.Attribute(methodDefinition)); } foreach (GenericParameter parameter in methodDefinition.GenericParameters) { this.Visit(parameter, context.GenericParameter(methodDefinition)); } foreach (ParameterDefinition definition in methodDefinition.Parameters) { this.Visit(definition, context.Parameter(methodDefinition)); } if (methodDefinition.HasBody) { this.Visit(methodDefinition.Body, context.MethodBody(methodDefinition)); } }
protected virtual void Visit(TypeDefinition typeDefinition, Context context) { if (typeDefinition.BaseType != null) { this.VisitTypeReference(typeDefinition.BaseType, context.BaseType(typeDefinition)); } foreach (Mono.Cecil.CustomAttribute attribute in typeDefinition.CustomAttributes) { this.Visit(attribute, context.Attribute(typeDefinition)); } foreach (InterfaceImplementation implementation in typeDefinition.Interfaces) { this.Visit(implementation, context.Interface(typeDefinition)); } foreach (GenericParameter parameter in typeDefinition.GenericParameters) { this.Visit(parameter, context.GenericParameter(context)); } foreach (PropertyDefinition definition in typeDefinition.Properties) { this.Visit(definition, context.Member(typeDefinition)); } foreach (FieldDefinition definition2 in typeDefinition.Fields) { this.Visit(definition2, context.Member(typeDefinition)); } foreach (MethodDefinition definition3 in typeDefinition.Methods) { this.Visit(definition3, context.Member(typeDefinition)); } foreach (EventDefinition definition4 in typeDefinition.Events) { this.Visit(definition4, context.Member(typeDefinition)); } foreach (TypeDefinition definition5 in typeDefinition.NestedTypes) { this.Visit(definition5, context.NestedType(typeDefinition)); } }