5
5
// Jb Evain (jbevain@gmail.com)
7
// Generated by /CodeGen/cecil-gen.rb do not edit
8
// Wed Sep 27 12:46:52 CEST 2006
7
// Copyright (c) 2008 - 2010 Jb Evain
12
9
// Permission is hereby granted, free of charge, to any person obtaining
13
10
// a copy of this software and associated documentation files (the
29
26
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
31
using Mono.Collections.Generic;
32
33
namespace Mono.Cecil {
35
using System.Collections;
39
public sealed class ParameterDefinitionCollection : CollectionBase, IReflectionVisitable {
41
IMemberReference m_container;
43
public ParameterDefinition this [int index] {
44
get { return List [index] as ParameterDefinition; }
45
set { List [index] = value; }
48
public IMemberReference Container {
49
get { return m_container; }
52
public ParameterDefinitionCollection (IMemberReference container)
54
m_container = container;
57
public void Add (ParameterDefinition value)
62
public bool Contains (ParameterDefinition value)
64
return List.Contains (value);
67
public int IndexOf (ParameterDefinition value)
69
return List.IndexOf (value);
72
public void Insert (int index, ParameterDefinition value)
74
List.Insert (index, value);
77
public void Remove (ParameterDefinition value)
82
protected override void OnValidate (object o)
84
if (! (o is ParameterDefinition))
85
throw new ArgumentException ("Must be of type " + typeof (ParameterDefinition).FullName);
88
public void Accept (IReflectionVisitor visitor)
90
visitor.VisitParameterDefinitionCollection (this);
35
sealed class ParameterDefinitionCollection : Collection<ParameterDefinition> {
37
readonly IMethodSignature method;
39
internal ParameterDefinitionCollection (IMethodSignature method)
44
internal ParameterDefinitionCollection (IMethodSignature method, int capacity)
50
protected override void OnAdd (ParameterDefinition item, int index)
56
protected override void OnInsert (ParameterDefinition item, int index)
61
for (int i = index; i < size; i++)
62
items [i].index = i + 1;
65
protected override void OnSet (ParameterDefinition item, int index)
71
protected override void OnRemove (ParameterDefinition item, int index)
76
for (int i = index + 1; i < size; i++)
77
items [i].index = i - 1;