2009-04-21 Jb Evain <jbevain@novell.com>
[mcs.git] / class / Mono.Cecil / ChangeLog
blob7478c8dea616f3568fa5982804b749ab943fc3ca
1 2009-04-21  Jb Evain  <jbevain@novell.com>
3         * Mono.Cecil.Cil/SymbolStoreHelper.cs: look for the assembly in the GAC
4         as well if it's not local.
6 2009-04-03  Jb Evain  <jbevain@novell.com>
8         * Mono.Cecil.Metadata/BlobHeap.cs
9         * Mono.Cecil.Metadata/MetadataWriter.cs:
10                 do a better job at emitting a blob heap.
12 2009-04-01  Jb Evain  <jbevain@novell.com>
14         * Mono.Cecil/ModuleDefinition.cs (Import): add overloads
15         taking a MethodDefinition as a generic context.
17 2009-04-01  Jb Evain  <jbevain@novell.com>
19         * Mono.Cecil/ReflectionHelper.cs: throw proper exception
20         when importing in an invalid context.
22 2009-03-12  Jb Evain  <jbevain@novell.com>
24         * Mono.Cecil/AssemblyStripper.cs (PatchHeap): don't crash
25         if the assembly doesn't contain a specific metadata heap.
27 2009-03-04  Jb Evain  <jbevain@novell.com>
29         * Mono.Cecil/StructureWriter.cs: properly set the metadata tokens
30         of newly emitted modules and assemblies. Fix #480729.
32 2009-01-28  Jb Evain  <jbevain@novell.com>
34         * Mono.Cecil/MetadataResolver.cs:
35                 Add new MetadataResolver.
37         * Mono.Cecil/GenericParameter.cs
38           Mono.Cecil/FieldDefinition.cs
39           Mono.Cecil/TypeReference.cs
40           Mono.Cecil/GenericInstanceMethod.cs
41           Mono.Cecil/IMemberDefinition.cs
42           Mono.Cecil/TypeDefinition.cs
43           Mono.Cecil/PropertyReference.cs
44           Mono.Cecil/EventReference.cs
45           Mono.Cecil/MethodDefinition.cs
46           Mono.Cecil/EventDefinition.cs
47           Mono.Cecil/ModuleDefinition.cs
48           Mono.Cecil/MethodReference.cs
49           Mono.Cecil/FieldReference.cs
50           Mono.Cecil/ParameterDefinition.cs
51           Mono.Cecil/PropertyDefinition.cs
52           Mono.Cecil/ParameterReference.cs
53           Mono.Cecil.Cil/VariableReference.cs
54           Mono.Cecil.Cil/VariableDefinition.cs:
55                 Add Resolve to Definition methods on References.
57         * Mono.Cecil.dll.sources, Mono.Cecil.csproj: add MetadataResolver.cs
59 2009-01-05  Jb Evain  <jbevain@novell.com>
61         * Mono.Cecil/ReflectionHelper.cs
62         * Mono.Cecil/DefaultImporter.cs:
63                 Adjust references's generic parameter count on import.
65 2009-01-05  Sebastien Pouliot  <sebastien at ximian.com>
67         * CodeReader.cs: Do not call VisitVariableDefinitionCollection
68         unless LocalVarToken is different from zero.
69         * CodeWriter.cs: Use HasVariables and HasExceptionHandlers.
70         Write zero, not TokenType.Signature, for LocalVarToken if no
71         variable is defined. That should fix the problem with unsign
72         * Mono.Cecil.Cil/MethodBody.cs: Add HasExceptionHandlers,
73         HasVariables and HasScopes to avoid creating empty collections
74         inside Cecil. There is no HasInstruction because there's always
75         something if MethodDefinition.HasBody is true (i.e. a MethodBody
76         exists). [re-apply r1222198]
78 2008-12-29  Sebastien Pouliot  <sebastien@ximian.com>
80         * Mono.Cecil/MethodReturnType.cs: Override ToString so we can, by
81         default, display something useful about the return type.
83 2008-12-29  Sebastien Pouliot  <sebastien@ximian.com>
85         * Mono.Cecil/GenericInstanceMethod.cs,
86         * Mono.Cecil/GenericInstanceType.cs,
87         * Mono.Cecil/IGenericInstance.cs: Introduce HasGenericArguments into
88         the interface and implement it inside GenericInstance[Method|Type]
90 2008-12-16  Jb Evain  <jbevain@novell.com>
92         * Mono.Cecil.Signatures/SignatureReader.cs: fix reading of wrong
93         modifiers.
95 2008-12-01  Sebastien Pouliot  <sebastien@ximian.com>
97         * Mono.Cecil.Signatures/CustomAttrib.cs: Define reusable Empty
98         arrays for both FixedArg and NamedArg.
99         * Mono.Cecil.Signatures/SignatureReader.cs: Avoid creating empty
100         ParameterDefinitionCollection on constructors. Use the new Empty
101         arrays when possible.
103 2008-12-01  Sebastien Pouliot  <sebastien@ximian.com>
105         * Mono.Cecil/MethodReference.cs: Make HasParameters virtual
106         * Mono.Cecil/MethodSpecification.cs: Override HasParameters to make
107         sure we're tracking the same object as the Parameters property does.
108         * Mono.Cecil/PropertyDefinition.cs: Implement HasParameters based on
109         the GetMethod, SetMethod or its own parameter collection.
110         * Mono.Cecil/PropertyReference.cs: Add abstract HasParameters property
112 2008-11-27  Jb Evain  <jbevain@novell.com>
114         * Mono.Cecil/ExternTypeCollection.cs: don't attach types as they
115         are already attached to the current module.
117 2008-11-22  Sebastien Pouliot  <sebastien@ximian.com>
119         * Mono.Cecil/GenericParameter.cs,
120         * Mono.Cecil/ICustomAttributeProvider.cs,
121         * Mono.Cecil/CallSite.cs,
122         * Mono.Cecil/IMethodSignature.cs,
123         * Mono.Cecil/FunctionPointerType.cs,
124         * Mono.Cecil/FieldDefinition.cs,
125         * Mono.Cecil/TypeReference.cs,
126         * Mono.Cecil/GenericInstanceMethod.cs,
127         * Mono.Cecil/IHasSecurity.cs,
128         * Mono.Cecil/MethodReturnType.cs,
129         * Mono.Cecil/AssemblyDefinition.cs,
130         * Mono.Cecil/TypeDefinition.cs,
131         * Mono.Cecil/MethodDefinition.cs,
132         * Mono.Cecil/EventDefinition.cs,
133         * Mono.Cecil/ModuleDefinition.cs,
134         * Mono.Cecil/MethodReference.cs,
135         * Mono.Cecil/ReflectionWriter.cs,
136         * Mono.Cecil/ParameterDefinition.cs,
137         * Mono.Cecil/PropertyDefinition.cs,
138         * Mono.Cecil/IGenericParameterProvider.cs:
139                 Add boolean Has{x} properties so Cecil consumers are able
140                 to avoid the lazy allocations that would be made for an
141                 empty {x}. Use the Has{x} properties inside Cecil (some
142                 cases might be missing).
144 2008-11-16  Sebastien Pouliot  <sebastien@ximian.com>
146         * Mono.Cecil/TypeDefinition.cs (IsValueType): Inline the call to
147         IsEnum and remove the double null check being done.
149 2008-11-14  Jb Evain  <jbevain@novell.com>
151         * Mono.Cecil/ParameterAttributes.cs: add Retval and Lcid.
152         * Mono.Cecil/ParameterDefinition.cs: add Is* property accordingly.
154 2008-11-12  Jb Evain  <jbevain@novell.com>
156         * Mono.Cecil.Signatures/SignatureReader.cs: properly construct
157         TypeReferences when reading them from custom attributes data.
159 2008-11-11  Jb Evain  <jbevain@novell.com>
161         * Mono.Cecil/ReflectionReader.cs (AddTypeRef):
162         protect against invalid token.
164 2008-11-11  Jb Evain  <jbevain@novell.com>
166         * Mono.Cecil.Cil/CodeWriter.cs: fix writing of catch handlers
167         of a generic exception type.
169 2008-11-06  Jb Evain  <jbevain@novell.com>
171         * Mono.Cecil.Metadata/MetadataWriter.cs: properly clean
172         the runtime image in case we're unsigning an assembly.
174 2008-11-01  Jb Evain  <jbevain@novell.com>
176         * Mono.Cecil.Binary/RuntimeImage.cs: add [Flags] attribute.
177         Fixes #440574.
179 2008-10-27  Jb Evain  <jbevain@novell.com>
181         * Mono.Cecil/AssemblyInfo.cs: bump version.
183 2008-10-27  Zoltan Varga  <vargaz@gmail.com>
185         * Mono.Cecil/AssemblyStripper.cs: Strip locals info too.
187 2008-10-17  Jb Evain  <jbevain@novell.com>
189         * Mono.Cecil/ReflectionWriter.cs: remove dead code.
190         * Mono.Cecil.Cil/ISymbolWriter.cs: simplify Write method.
192 2008-10-17      Rodrigo B. de Oliveira <rodrigobamboo@gmail.com>
194         * Mono.Cecil.Cil/CodeWriter.cs
195         * Mono.Cecil.Cil/MethodBody.cs:
196                 mcs-cecil-local-var-1.diff patch enabling better handling of local
197                 variable debugging information applied.
198                 Patch by Juerg Billeter <j@bitron.ch>
200 2008-10-17      Rodrigo B. de Oliveira <rodrigobamboo@gmail.com>
202         * Mono.Cecil/ConstructorCollection.cs
203         * Mono.Cecil.Binary/ImageReader.cs:
204                 Compact Framework compilation fixes.
206 2008-10-14  Jb Evain  <jbevain@novell.com>
208         * Mono.Cecil/SecurityDeclarationReader.cs: protect against
209         wrongly formatted security attributes.
211 2008-10-12  Sebastien Pouliot  <sebastien@ximian.com>
213         * Mono.Cecil.Cil/SymbolStoreHelper.cs: Change two "static readonly"
214         fields into const.
215         [Found using Gendarme PreferLiteralOverInitOnlyFieldsRule]
217 2008-10-11  Sebastien Pouliot  <sebastien@ximian.com>
219         * Mono.Cecil/ConstructorCollection.cs: Fix a NRE if a null parameter
220         is provided to one of the GetConstructor overloads.
222 2008-10-07  Jb Evain  <jbevain@novell.com>
224         * Mono.Cecil/ReflectionReader.cs: don't cache generic typespecs,
225         as some compiler reuse generic instance signatures with different
226         generic contexts.
228 2008-10-01  Jb Evain  <jbevain@novell.com>
230         * Mono.Cecil.dll.sources
231         * Mono.Cecil.csproj
232         * Mono.Cecil/AssemblyStripper.cs
233         * Mono.Cecil.Cil/CodeWriter.cs
234         * Mono.Cecil.Metadata/MetadataWriter.cs: add a new AssemblyStripper
235         class to be used by a tool to empty method bodies for assemblies
236         that have been AOTed.
238 2008-09-29  Jb Evain  <jbevain@novell.com>
240         * Mono.Cecil/GenericParameter.cs: override TypeReference.Scope.
242 2008-09-25  Jb Evain  <jbevain@novell.com>
244         * Mono.Cecil.Binary/MemoryBinaryWriter.cs: Make sure QuadAlign
245         properly enlarge the memory stream if needed.
246         Patch by Regis Vaquette <rvaquette@yahoo.fr>.
248 2008-09-18  Jb Evain  <jbevain@novell.com>
250         * Mono.Cecil/ReflectionReader.cs (GetModifierType): protect against
251         zero rids.
253 2008-09-15  Jb Evain  <jbevain@novell.com>
255         * Mono.Cecil.Signatures/SignatureReader.cs: fix regression
256         in reading custom mods.
258 2008-09-04  Jb Evain  <jbevain@novell.com>
260         * Mono.Cecil.Signatures/SignatureReader.cs: better read modifiers on
261         return types and parameters.
263 2008-09-02  Jb Evain  <jbevain@novell.com>
265         * Mono.Cecil.Metadata/UserStringsHeap.cs: fix reading of some unicode fu.
267 2008-09-02  Jb Evain  <jbevain@novell.com>
269         * Mono.Cecil/MethodAttributes.cs: add CheckAccessOnOverride.
270         * Mono.Cecil/MethodDefinition.cs: add IsCheckAccessOnOverride.
272 2008-09-02  Jb Evain  <jbevain@novell.com>
274         * Mono.Cecil/GenericParameter.cs: fix Has*Constraint properties.
276 2008-09-02  Jb Evain  <jbevain@novell.com>
278         * Mono.Cecil/SecurityDeclarationReader.cs: fix reading
279         multiple permissions. Patch by Carsten Keutmann.
281 2008-09-01  Jb Evain  <jbevain@novell.com>
283         * Mono.Cecil/ReflectionReader.cs: properly compose mod and byref types
284         for parameters and return types.
285         Based on a patch by Carlo Kok <ck@remobjects.com>
287 2008-09-01  Jb Evain  <jbevain@novell.com>
289         * Mono.Cecil.Signatures/SignatureReader.cs: Avoid a crash
290         when looking for an enumeration definition when the assembly
291         could not be resolved. Patch by Carlo Kok <ck@remobjects.com>
293 2008-09-01  Jb Evain  <jbevain@novell.com>
295         * Mono.Cecil/ReflectionWriter.cs: fix for writing null string
296         constants. Patch by Ewout Prangsma <ewout@tallapplications.com>.
298 2008-06-28  Sebastien Pouliot  <sebastien@ximian.com>
300         * Mono.Cecil.dll.sources
301         * Mono.Xml/MiniParser.cs:
302                 Remove MiniParser as it is no more required (replaced by
303                 SmallXmlParser) and save a few KB in the binary size
305         * Mono.Xml/SecurityParser.cs
306         * Mono.Xml/SmallXmlParser.cs:
307                 Seal non-visible classes.
308                 [Found using Gendarme AvoidUnsealedUninheritedInternalClassesRule]
310         * Mono.Cecil.Signatures/GenericArg.cs:
311                 Seal non-visible classes.
312                 [Found using Gendarme AvoidUnsealedUninheritedInternalClassesRule]
314         * Mono.Cecil.Binary/CopyImageVisitor.cs
315         * Mono.Cecil.Binary/ImageInitializer.cs
316         * Mono.Cecil.Binary/ImageReader.cs
317         * Mono.Cecil.Binary/ImageWriter.cs
318         * Mono.Cecil.Binary/ResourceReader.cs
319         * Mono.Cecil.Binary/ResourceWriter.cs:
320                 Seal non-visible classes.
321                 [Found using Gendarme AvoidUnsealedUninheritedInternalClassesRule]
323         * Mono.Cecil.Metadata/CultureUtils.cs
324         * Mono.Cecil.Metadata/MetadataInitializer.cs
325         * Mono.Cecil.Metadata/MetadataReader.cs
326         * Mono.Cecil.Metadata/MetadataRowReader.cs
327         * Mono.Cecil.Metadata/MetadataRowWriter.cs
328         * Mono.Cecil.Metadata/MetadataTableReader.cs
329         * Mono.Cecil.Metadata/Utilities.cs:
330                 Seal non-visible classes.
331                 [Found using Gendarme AvoidUnsealedUninheritedInternalClassesRule]
333         * Mono.Cecil.Cil/CodeReader.cs
334         * Mono.Cecil.Cil/OpCodeNames.cs
335         * Mono.Cecil.Cil/CodeWriter.cs
336         * Mono.Cecil.Cil/SymbolStoreHelper.cs:
337                 Seal non-visible classes.
338                 [Found using Gendarme AvoidUnsealedUninheritedInternalClassesRule]
340         * Mono.Cecil/SecurityDeclarationReader.cs
341         * Mono.Cecil/NullReferenceImporter.cs
342         * Mono.Cecil/TableComparers.cs:
343                 Seal non-visible classes.
344                 [Found using Gendarme AvoidUnsealedUninheritedInternalClassesRule]
346         * Mono.Cecil/AssemblyNameReference.cs:
347                 Use String.Length > 0 instead of comparing to String.Empty
348                 [Found using Gendarme CompareWithEmptyStringEfficientlyRule]
350         * Mono.Cecil.Metadata/MetadataToken.cs:
351                 Add a private Equals(MetadataToken) method. This allows the
352                 existing operators (== and !=) to avoid boxing, since they
353                 will prefer it to the Equals(object) method.
354                 [Found using Gendarme ImplementEqualsTypeRule]
356         * Mono.Cecil.Cil/GuidAttribute.cs:
357                 Seal attribute class
358                 [Found using Gendarme AvoidUnsealedConcreteAttributesRule]
360         * Mono.Cecil.Signatures/SignatureWriter.cs:
361                 Fix typo.
362                 [Found using Gendarme AvoidUnneededUnboxingRule]
364 2008-06-06  Jb Evain  <jbevain@novell.com>
366         * CodeGen/cecil.xml: constrained. is of type InlineType.
367         * Mono.Cecil.Cil/OpCodes.cs: re-generate.
369 2008-05-14  Jb Evain  <jbevain@novell.com>
371         * Mono.Cecil/ReflectionWriter.cs:
372                 Only create the GenericParameterConstraint table if needed.
373                 Patch by Richard Flamsholt <richard.flamsholt@gmail.com>.
375         * Mono.Cecil.Cil/MethodBody.cs:
376                 Fix typo in switch cloning. Patch by
377                 Rune Glerup <rune.glerup@gmail.com>.
379 2008-05-06  Jb Evain  <jbevain@novell.com>
381         * Mono.Cecil.Signatures/CustomMod.cs:
382                 Introduce a EmptyCustomMod static field.
383         * Mono.Cecil/ReflectionWriter.cs
384         * Mono.Cecil.Signatures/SignatureReader.cs:
385                 Use EmptyCustomMod instead of instanciating
386                 empty arrays of CustomMod.
387                 Based on a patch by Carlo Kok <ck@remobjects.com>.
389         * Mono.Cecil.Metadata/MetadataRowReader.cs
390         * Mono.Cecil.Metadata/MetadataRowWriter.cs:
391                 Cache row counters delegates.
392                 Based on a patch by Carlo Kok <ck@remobjects.com>.
394         * Mono.Cecil/TypeDefinition.cs
395         * Mono.Cecil/MethodDefinition.cs
396         * Mono.Cecil/DefaultImporter.cs
397         * Mono.Cecil/ReflectionHelper.cs:
398                 Restore the generic context values instead of blindly
399                 overriding them. Based on a patch by Dzintars Avots.
401         * Mono.Cecil/MarshalSpec.cs (CloneInto): add new method
402         to clone MarshalSpec into a new container.
404         * Mono.Cecil/ParameterDefinition.cs (Clone):
405         * Mono.Cecil/FieldDefinition.cs (Clone):
406         Use the new MarshalSpec.CloneInto method.
407         Based on a patch by Dzintars Avots <davots@coverity.com>.
409         * Mono.Cecil/MethodDefinition.cs (Clone): fix cloning of
410         return types when they don't have a parameter.
411         Patch by Dzintars Avots <davots@coverity.com>.
413         * Mono.Cecil.Cil/CodeWriter.cs (ComputeMaxStack): compute max
414         stack more precisely. Based on a patch by Daniel Grunwald,
415         Contains code from Cecil.FlowAnalysis.
417         * Mono.Cecil.Cil/MethodBody.cs (Clone): make sure the
418         instruction linked list is properly constructed.
420 2008-04-19  Sebastien Pouliot  <sebastien@ximian.com>
422         * Mono.Cecil.Cil/CodeReader.cs:
423         * Mono.Cecil.Cil/ISymbolReader.cs:
424                 Move reading of debugging symbols where it's possible to
425                 reuse the existing Hashtable (offset, Instruction) in
426                 the debugging libraries. Change interface to allow
427                 passing the Hashtable.
429 2008-04-15  Sebastien Pouliot  <sebastien@ximian.com>
431         * Mono.Cecil.csproj
432         * Mono.Cecil.dll.sources:
433                 Add Mono.Cecil.Cil/OpCodeNames.cs to the build.
435         * Mono.Cecil.Cil/OpCodeNames.cs
436         * Mono.Cecil.Cil/OpCode.cs
437         * Mono.Cecil.Cil/OpCodes.cs:
438                 Reduce the OpCode struct size to 8 bytes (instead of 36).
439                 Based on the SRE.OpCode code found in corlib.
441 2008-04-13  Sebastien Pouliot  <sebastien@ximian.com>
443         * Mono.Cecil/AssemblyDefinition.cs:
444                 Short circut loop when module is found.
446 2008-04-08  Jb Evain  <jbevain@novell.com>
448         * Mono.Cecil/SecurityDeclaration.cs
449           Mono.Cecil/SecurityDeclarationReader.cs:
450                 Implement resolving of SecurityDeclarations.
452 2008-03-31  Jb Evain  <jbevain@novell.com>
454         Integrate patches from Dzintars Avots <davots@coverity.com>
456         * Mono.Cecil/GenericParameter.cs
457           Mono.Cecil/TypeDefinition.cs
458           Mono.Cecil/DefaultImporter.cs
459           Mono.Cecil/MethodDefinition.cs:
460                 Fix generic parameter cloning to avoid issues when
461                 the constraint reference the parameter itself.
463         * Mono.Cecil/MethodBody.cs (Clone): deals with switches.
465         * Mono.Cecil/MethodBody.cs (Clone): clone the name of
466         the local variables.
468 2008-03-30  Sebastien Pouliot  <sebastien@ximian.com>
470         * Mono.Cecil/ReflectionReader.cs:
471                 Avoid creating a BinaryReader+MemoryStream on LE archs for
472                 GetConstant. Saves about 400KB for Gendarme.
473                 Avoid a BinaryReader creation in GetConstant which saves
474                 about 50KB for Gendarme.
475         * Mono.Cecil.Metadata/GuidHeap.cs:
476                 Compute ideal capacity for Hashtable. Avoid memory allocation
477                 if a single GUID is present (which is the case for all of
478                 Mono 2.0 assemblies). Saves a whole 2KB for Gendarme ;-)
479         * Mono.Cecil.Binary/Image.cs:
480                 Add internal GetSectionAtVirtualAddress to avoid creating
481                 BinaryReader in some cases.
482         * Mono.Cecil.Binary/ResourceReader.cs:
483                 Avoid a BinaryReader creation in SetInitialValue which saves
484                 about 3000KB for Gendarme.
486 2008-03-08  Jb Evain  <jbevain@novell.com>
488         * Mono.Cecil.Binary/CopyImageVisitor.cs:
489                 Copy the cliheaders flags over the new assembly.
490                 Patch by Oleksiy Gapotchenko <alex.s.gap@gmail.com>
492 2008-03-08  Sebastien Pouliot  <sebastien@ximian.com>
494         * Mono.Cecil.Cil/CodeReader.cs:
495                 Use one and only Hashtable for caching instructions offsets.
496                 Save tons of precious memory.
498 2008-03-08  Sebastien Pouliot  <sebastien@ximian.com>
500         * Mono.Cecil.Cil/OpCode.cs
501         * Mono.Cecil.Binary/RVA.cs
502         * Mono.Cecil.Binary/DataDirectory.cs:
503                 Avoid boxing/unboxing when == or != operators are used.
504                 Results in significant memory savings for Gendarme.
506 2008-03-08  Jb Evain  <jbevain@novell.com>
508         * Mono.Cecil/ReflectionReader.cs:
509                 Protect from malformed RIDs.
510         * Mono.Cecil/AggressiveReflectionReader.cs:
511                 Create the m_events and m_properties tables
512                 even if they contains 0 elements.
514 2008-02-26  Jb Evain  <jbevain@novell.com>
516         * Mono.Cecil.Binary/ImageReader.cs:
517                 Avoid throwing non desired exceptions.
519 2008-02-25  Jb Evain  <jbevain@novell.com>
521         * Mono.Cecil/ReflectionReader.cs:
522                 Avoid throwing in case a constant
523                 is of type object.
525 2008-02-19  Jb Evain  <jbevain@novell.com>
527         * Mono.Cecil/DefaultImporter.cs:
528                 Add support for importing function pointers. Based on a
529                 patch by Andrea Carlo Ornstein <andrea.ornstein@st.com>.
531         * Mono.Cecil/ModuleDefinition.cs:
532                 Add a Inject(FieldDef) overload for symmetry.
533                 Patch by Andrea Carlo Ornstein <andrea.ornstein@st.com>.
535 2008-02-16  Jb Evain  <jbevain@novell.com>
537         * CodeGen/templates/MetadataRowReader.cs
538           CodeGen/templates/Utilities.cs
539           CodeGen/templates/MetadataRowWriter.cs
540           Mono.Cecil.Metadata/MetadataRowReader.cs
541           Mono.Cecil.Metadata/MetadataRowWriter.cs
542           Mono.Cecil.Metadata/Utilities.cs:
543                 Use a good old traditional array instead of an
544                 Hashtable. Based on a patch by Carlo Kok <ck@remobjects.com>.
546 2008-02-07  Jb Evain  <jbevain@novell.com>
548         * Mono.Cecil/BaseAssemblyResolver.cs:
549                 deal with 2.1 corlib on Mono.
551 2008-02-07  Jb Evain  <jbevain@novell.com>
553         * Mono.Cecil/MethodDefinition.cs:
554                 add last Is method for semantics property.
556 2008-02-05  Jb Evain  <jbevain@novell.com>
558         * Mono.Cecil/TypeDefinition.cs:
559                 System.Enum by itself is not a value type.
560                 Fix #351879.
562         * Mono.Cecil.Signatures/SignatureReader.cs:
563                 Properly read fnptr local variables. Fix #358507.
565         * Mono.Cecil.Binary/DefaultImporter.cs:
566                 Import modifiers and sentinels, patch from:
567                 Andrea Carlo Ornstein <andrea.ornstein@st.com>
569 2008-02-04  Jb Evain  <jbevain@novell.com>
571         * Mono.Cecil.Binary/CLIHeader.cs
572           Mono.Cecil.Binary/ImageWriter.cs
573           Mono.Cecil.Metadata/MetadataWriter.cs:
574                 emit the proper cli header version for 1.1 and 2.0 cases.
576         * Mono.Cecil.Cil/CilWorker.cs: add callsite overloads.
578 2008-01-10  Jb Evain  <jbevain@novell.com>
580         * Mono.Cecil/ReflectionHelper.cs: deal with complex arrays.
582 2008-01-07  Jb Evain  <jbevain@novell.com>
584         * Mono.Cecil.Cil/CilWorker.cs:
585                 Allow ldarg.s/ldloc.s/stloc.s to take a byte
586                 instead of the actual parameter or variable. Fix #350606.
588 2008-01-07  Jb Evain  <jbevain@novell.com>
590         * Mono.Cecil/ArrayType.cs:
591                 Add a constructor with the array rank. Fix #351924.
592                 Based on a patch by Rolf Kvinge <rkvinge@novell.com>.
594 2008-01-04  Jb Evain  <jbevain@novell.com>
596         * Mono.Cecil.Cil/CilWorker.cs:
597                 Allow ldarg/ldloc/stloc to take a integer
598                 instead of the actual parameter or variable. Fix #350606.
600 2008-01-04  Jb Evain  <jbevain@novell.com>
602         * Mono.Cecil/DefaultImporter.cs:
603           Mono.Cecil/ReflectionHelper.cs:
604                 Properly import nested types. Fix #351133.
606 2008-01-03  Jb Evain  <jbevain@novell.com>
608         * Mono.Cecil/ReflectionWriter.cs:
609                 Properly emit null type constants. Fix #351141.
610                 Patch by Rolf Kvinge <rkvinge@novell.com>.
612 2007-12-30  Jb Evain  <jbevain@novell.com>
614         * Mono.Cecil.Cil/CilWorker.cs:
615                 Check for null arguments. Fix #350857.
617 2007-12-21  Jb Evain  <jbevain@novell.com>
619         * Mono.Cecil/ReflectionReader.cs
620           Mono.Cecil/AggressiveReflectionReader.cs
621           Mono.Cecil.Signatures/SignatureReader.cs:
622                 Don't crash on force resolve for nested arrays
623                 in custom attributes.
625 2007-12-17  Jb Evain  <jbevain@novell.com>
627         * Mono.Cecil/IMemberDefinition.cs: make IMemberDefinition
628         implement ICustomAttributeProvider.
630 2007-12-15  Jb Evain  <jbevain@novell.com>
632         * Mono.Cecil.Binary/AggressiveReflectionReader.cs: protect
633         against zeroed tokens.
635 2007-12-15  Jb Evain  <jbevain@novell.com>
637         * Mono.Cecil.Binary/ImageReader.cs: fix crash when reading
638         some non .net binaries.
640 2007-11-22  Sebastien Pouliot  <sebastien@ximian.com>
642         * Mono.Cecil/SecurityDeclarationReader.cs:      Change default read
643         value to true. Fix reading 2.0 security declaration format used by
644         MS compilers (#343553).
646 2007-11-15      Rodrigo B. de Oliveira <rodrigobamboo@gmail.com>
648         * Mono.Cecil.Cil/MethodBody.cs:
649                 Fixed Optimize for ldc_i4
651 2007-11-15      Rodrigo B. de Oliveira <rodrigobamboo@gmail.com>
653         * Mono.Cecil.Cil/DocumentLanguage.cs
654           Mono.Cecil.Cil/DocumentLanguageVendor.cs:
655                 Compact Framework support by using Guid(string) if CF_2_0 is defined
657 2007-11-01  Jb Evain  <jbevain@novell.com>
659         * Mono.Cecil/MethodReturnType.cs: based on a patch by
660         Ivan <ivanjh@gmail.com>. Fix for cloning methods with
661         marshalers on return type.
663 2007-10-31  Jb Evain  <jbevain@novell.com>
665         * Mono.Cecil.Binary/ImageReader.cs: fix for the case where
666         the export table export zero functions.
668 2007-10-18  Jb Evain  <jbevain@novell.com>
670         * Mono.Cecil.Cil/MethodBody.cs: Add an Optimize method which
671         is the opposite of Simplify. Based on a patch by Carlo.
673         * Mono.Cecil.Cil/CodeWriter.cs: don't care about reducing MaxStack.
675 2007-10-11  Jb Evain  <jbevain@novell.com>
677         * Mono.Cecil/TypeReference.cs: add a IsNested helper property.
679         * Mono.Cecil/ReflectionWriter.cs
680           Mono.Cecil.Signatures/SignatureWriter.cs:
681                 Integrate patch for Carlo, start working on enum writing
682                 in custom attribute.
684 2007-10-09  Nestor Salceda  <nestor.salceda@gmail.com>
686         * mono-cecil.pc.in:  Updated the version number.
688 2007-10-09  Jb Evain  <jbevain@novell.com>
690         * Mono.Cecil.Cil/Instruction.cs
691           Mono.Cecil.Cil/CodeWriter.cs:
692                 Move CodeWriter.GetSize (Instruction) to Instruction.
694         Integration of patches from Carlo Kok <ck@remobjects.com>:
696         * Mono.Cecil.Cil/Document.cs
697           Mono.Cecil.Cil/DocumentType.cs
698           Mono.Cecil.Cil/DocumentLanguage.cs
699           Mono.Cecil.Cil/DocumentLanguageVendor.cs:
700                 Use plain guids for Document properties so it's easy
701                 for third party document providers to use their own.
703         * Mono.Cecil/ParameterDefinition.cs:
704                 Clean or set the HasFieldMarshal flag when setting
705                 MarshalSpecs on parameters.
707         * Mono.Cecil/AssemblyNameReference.cs:
708                 Protect against null culture.
710         * Mono.Cecil/FieldDefinition.cs:
711                 Clean or set the HasFieldMarshal flag when setting
712                 MarshalSpecs on fields.
714         * Mono.Cecil/GenericInstanceType.cs:
715                 Properly initialize the IsValueType from the element type.
717 2007-10-09  Jb Evain  <jbevain@novell.com>
719         * Mono.Cecil/ReflectionWriter.cs: check for duplicates
720         in the MemberRef row.
722 2007-10-08  Sebastien Pouliot  <sebastien@ximian.com>
724         * standalone.make: Revert changes so standalone Cecil (in SVN) can
725         be built using this Makefile (required for Gendarme);
726         * README: Update build and bug instructions.
728 2007-10-07  Jb Evain  <jbevain@novell.com>
730         * Mono.Cecil/BaseAssemblyResolver.cs: first lookup assemblies
731         in the specified directories before trying the framework dir.
733 2007-10-06  Jb Evain  <jbevain@novell.com>
735         * Mono.Cecil.Cil/OpCode.cs: make that a struct again, it
736         make the 2.1 profile explode. Will investigate why.
738 2007-10-06  Jb Evain  <jbevain@novell.com>
740         * Mono.Cecil/MethodCallingConvention.cs: Not a [Flag]
742 2007-10-05  Jb Evain  <jbevain@novell.com>
744         * Mono.Cecil.Cil/OpCode.cs: Change OpCode from struct to class
745         to avoid copying everything everytime.
747 2007-09-28  Jb Evain  <jbevain@novell.com>
749         * Mono.Cecil/SecurityDeclarationReader.cs:
750                 Adapt patch from Carlo Kok  <ck@remobjects.com>.
751                 Properly read unicode string constants.
753         * Mono.Cecil/SecurityDeclarationReader.cs:
754                 Adapt patch from Carlo Kok  <ck@remobjects.com>.
755                 For some MS assemblies, the security declaration contains
756                 one zero byte.
758 2007-09-24  Jb Evain  <jbevain@novell.com>
760         * Mono.Cecil/ModuleDefinition.cs: after a FullLoad, the symbol
761         reader is not needed anymore.
763 2007-09-18  Jb Evain  <jbevain@novell.com>
765         * Mono.Cecil.Cil/MethodBody.cs:
766                 Adapt a patch from Ivan <ivanjh@gmail.com>.
767                 Fix cloning of the This parameter.
769 2007-09-12  Jb Evain  <jbevain@novell.com>
771         * Mono.Cecil/ReflectionReader.cs
772           Mono.Cecil.Signatures/SignatureReader.cs
773           Mono.Cecil.Signatures/TypeSpec.cs
774           Mono.Cecil.Signatures/SignatureWriter.cs:
775                 Deal with custom mods on typespecs.
777 2007-09-12  Jb Evain  <jbevain@novell.com>
779         * Mono.Cecil.Binary/ImageReader.cs: some 64bits assemblies
780         have a strange header without import tables.
782 2007-09-09  Jb Evain  <jbevain@novell.com>
784         * Mono.Cecil/GenericContext.cs
785           Mono.Cecil/ReflectionReader.cs
786           Mono.Cecil/DefaultImporter.cs:
787                 Better handling of generic instances of references, where
788                 the number of generic parameters is not known.
790 2007-09-06  Jb Evain  <jbevain@novell.com>
792         * Mono.Cecil/MethodDefinition: add Is** methods for MethodImplAttributes.
794 2007-09-04  Jb Evain  <jbevain@novell.com>
796         * Mono.Cecil/ReflectionWriter.cs:
797                 Adapt a patch by Ewout Prangsma <ewout@tallapplications.com>.
798                 Cache the typespec tokens instead of the typespec themselves
799                 because GenericParameters are somethimes considered as typespecs.
801 2007-08-28  Jb Evain  <jbevain@novell.com>
803         * Mono.Cecil.Cil/CodeWriter.cs
804           Mono.Cecil/ReflectionWriter.cs
805           Mono.Cecil.Cil/SymbolStoreHelper.cs
806           Mono.Cecil.Signatures/SignatureWriter.cs:
807                 Generate proper variables signatures for symbols
808                 stores.
810 2007-08-19  Jb Evain  <jbevain@novell.com>
812         * Mono.Cecil.Cil/CodeReader.cs:
813                 Deal with generic exceptions.
815 2007-08-15  Jb Evain  <jbevain@novell.com>
817         * CodeGen/cecil.xml,
818           Mono.Cecil.Cil/OpCodes.cs:
819                 Fix bug spotted by Jesse Jones, ldelem.any has a
820                 stack behavior pop of popref, popi.
822 2007-08-15  Jb Evain  <jbevain@novell.com>
824         * Mono.Cecil/TypeReference.cs
825           Mono.Cecil/TypeSpecification.cs:
826                 TypeSpecification.Module return the module of the elemen
827                 type now.
829 2007-08-13  Rodrigo B. de Oliveira <rodrigobamboo@gmail.com>
831         * default.build
832           Mono.Cecil/AssemblyInfo.cs:
833                 Ability to pass custom defines to the c# compiler through
834                 the csc.defines property. KEYFILE can be used to force
835                 an AssemblyKeyFile attribute on AssemblyInfo.cs so strongly
836                 signed versions of Mono.Cecil can be produced on .net 1.1,
837                 cf 1.0 and cf 2.0.
839 2007-08-13  Jb Evain  <jbevain@novell.com>
841         * Mono.Cecil.Cil/CilWorker.cs:
842                 Fix InsertBefore.
844 2007-08-06  Jb Evain  <jbevain@novell.com>
846         * Mono.Cecil.Cil/CilWorker.cs:
847                 Fix the linked list after an InsertBefore, InsertAfter.
849 2007-08-02  Jb Evain  <jbevain@novell.com>
851         * Mono.Cecil/GenericParameter.cs
852           Mono.Cecil/FieldDefinition.cs
853           Mono.Cecil/TypeDefinition.cs
854           Mono.Cecil/MethodDefinition.cs
855           Mono.Cecil/EventDefinition.cs
856           Mono.Cecil/PInvokeInfo.cs
857           Mono.Cecil/Resource.cs
858           Mono.Cecil/ParameterDefinition.cs
859           Mono.Cecil/PropertyDefinition.cs:
861                 Add Isxxx properties based on the xxxAttributes enums.
863 2007-07-23  Raja R Harinath  <rharinath@novell.com>
865         Fix 'make warnings'.
866         * Makefile (LIBRARY_PACKAGE): Set to none.
867         (install-local): Remove.
869 2007-07-21  Jb Evain  <jbevain@novell.com>
871         * Mono.Cecil/TypeReference.cs
872           Mono.Cecil/TypeSpecification.cs:
873                 Add a new GetOriginalType () method.
875         * Mono.Cecil/MethodReference.cs
876           Mono.Cecil/MethodSpecification.cs:
877                 Add a new GetOriginalMethod () method.
879 2007-07-19  Jb Evain  <jbevain@novell.com>
881         * Mono.Cecil/AssemblyFactory.cs
882           Mono.Cecil.Binary/Image.cs:
883                 Update the fileinfo after writing an assembly
884                 to a file.
886 2007-07-19  Jb Evain  <jbevain@novell.com>
888         * Mono.Cecil/ReflectionReader.cs
889           Mono.Cecil.Cil/CodeReader.cs
890           Mono.Cecil.Signature/SignatureReader.cs:
891                 Better handling of the sentil in the varargs methods.
893         * Mono.Cecil/ReflectionReader.cs
894           Mono.Cecil/SentinelType.cs
895           Mono.Cecil.Cil/CodeWriter.cs:
896           Mono.Cecil.Signatures/SignatureReader.cs:
897                 Fix handling of varargs methods.
899 2007-07-18  Jb Evain  <jbevain@novell.com>
901         * Mono.Cecil.Cil/CodeReader.cs
902           Mono.Cecil.Cil/CodeWriter.cs:
903                 Deal with non-sense instructions that some
904                 obfuscators emit.
906         * Mono.Cecil/AggressiveReflectionReader.cs:
907                 Deal with out of range properties.
908         * Mono.Cecil.Metadata/StringsHeap.cs:
909                 Deal with out of range string indexes.
911 2007-07-17  Jb Evain  <jbevain@novell.com>
913         * Mono.Cecil/AggressiveReflectionReader.cs:
914                 Add some gards against zeroed tokens.
916         * Mono.Cecil.Metadata/Utilities.cs:
917                 Return zero instead of throwing on invalid tags.
918                 Allow Cecil to read assemblies partially broken
919                 by some obfuscators.
921 2007-07-14  Gert Driesen  <drieseng@users.sourceforge.net>
923         * default.build: Fix relative path to key. Avoid use of ugly foreach
924         contruct. Spaces to tabs.
925         * Mono.Cecil.csproj: Fix relative path to key.
926         * standalone.make: Fix relative path to key and config.make.
928 2007-07-03  Jb Evain  <jbevain@novell.com>
930         * Mono.Cecil/BaseAssemblyResolver.cs:
931                 Expose a way to add default directories
932                 where the assemblies are first looked for.
934 2007-06-20  Jb Evain  <jbevain@novell.com>
936         * Mono.Cecil/IReferenceImporter.cs => IImporter.cs
937           Mono.Cecil/DefaultReferenceImporter.cs => DefaultImporter.cs
939         * Mono.Cecil/ReflectionHelper.cs
940           Mono.Cecil/DefaultReferenceImporter.cs
941           Mono.Cecil/ModuleDefinition.cs:
942                 Move Cecil types import logic into
943                 the DefaultReferenceImporter.
945                 Needed by the merger and the extractor.
947 2007-06-19  Jb Evain  <jbevain@novell.com>
949         * Mono.Cecil.Cil/MethodBody.cs:
950                 Avoid invalid cast by properly simplifying
951                 instructions.
953         * Mono.Cecil.Cil/OpCodes.cs:
954           CodeGen/cecil.xml:
955                 leave.s is a macro instruction.
957         * Mono.Cecil/TypeDefinition.cs
958           Mono.Cecil/ParameterDefinition.cs:
959                 Fix cloning.
961 2007-06-18  Jb Evain  <jbevain@novell.com>
963         * Mono.Cecil/ReflectionReader.cs:
964                 Fix custom mods for fields ref.
966 2007-06-13  Jb Evain  <jbevain@novell.com>
968         Integrated patches by:
969         Paul Apostolescu <papostolescu@fortifysoftware.com>
971         * patch3:
972           Mono.Cecil/ReflectionReader.cs
973           Mono.Cecil.Signatures/SignatureWriter.cs:
974                 In named args, objects are encoded as boxed.
976         * patch1:
977           Mono.Cecil/IMemberDefinition.cs
978           Mono.Cecil/Constants.cs
979           Mono.Cecil/ReflectionReader.cs
980           Mono.Cecil/AggressiveReflectionReader.cs:
981                 Do not take into account special _Deleted
982                 members.
984         * patch6:
985           Mono.Cecil/StructureReader.cs:
986                 Read the flags of the references as well.
988         * patch5:
989           Mono.Cecil.Metadata/UserStringsHeap.cs:
990                 Don't bother getting a string from the bytes
991                 if the length is < 2 (0, or 0 + an encoding flag)
993         * patch4:
994           Mono.Cecil/ReflectionHelper.cs:
995                 Update the value type flags of types
996                 when they are imported if the type
997                 reference was first seen as a type reference.
999         * patch2:
1000           Mono.Cecil.Signature/SignatureWriter.cs:
1001                 Patch to handle nullref values for types in
1002                 custom attributes arguments.
1004 2007-06-13  Jb Evain  <jbevain@novell.com>
1006         * Mono.Cecil/StructureWriter.cs,
1007           Mono.Cecil/ReflectionWriter.cs:
1008                 Revert the on demand creation of memberref.
1010 2007-06-12  Jb Evain  <jbevain@novell.com>
1012         * Mono.Cecil/CallSite.cs
1013           Mono.Cecil/ModuleReference.cs
1014           Mono.Cecil/CustomAttribute.cs
1015           Mono.Cecil/AssemblyDefinition.cs
1016           Mono.Cecil/SecurityDeclaration.cs
1017           Mono.Cecil/AssemblyNameReference.cs
1018           Mono.Cecil/MemberReference.cs
1019           Mono.Cecil/Resource.cs
1020           Mono.Cecil/ParameterReference.cs:
1021                 Implement explicitely IAnnotationProvider.
1023 2007-06-05  Jb Evain  <jbevain@novell.com>
1025         * Mono.Cecil/AssemblyNameReference.cs:
1026                 Cache the fullname when possible.
1028 2007-05-31  Jb Evain  <jbevain@novell.com>
1030         * Mono.Cecil/ModuleDefinition.cs:
1031                 Add types to the module and members to the context
1032                 on inject.
1034         * Mono.Cecil/BaseAssemblyResolver.cs:
1035                 Improve resolve, works for people requiring
1036                 .net 1.0 assemblies when they only have 1.1.
1038 2007-05-30  Jb Evain  <jbevain@novell.com>
1040         * Mono.Cecil/DefaultAssemblyResolver.cs:
1041                 Add a RegisterAssembly method to register an
1042                 assembly to the cache without having to resolve it.
1044         * Mono.Cecil/DefaultReferenceImporter.cs:
1045                 Make methods virtual.
1047         * Mono.Cecil.dll.sources
1048           Mono.Cecil.csproj
1049           Mono.Cecil/ReflectionHelper.cs
1050           Mono.Cecil/IReferenceImporter.cs
1051           Mono.Cecil/FieldDefinition.cs
1052           Mono.Cecil/CustomAttribute.cs
1053           Mono.Cecil/ImportContext.cs
1054           Mono.Cecil/NullReferenceImporter.cs
1055           Mono.Cecil/MethodDefinition.cs
1056           Mono.Cecil/EventDefinition.cs
1057           Mono.Cecil/ReflectionController.cs
1058           Mono.Cecil/ModuleDefinition.cs
1059           Mono.Cecil/GenericContext.cs
1060           Mono.Cecil/DefaultReferenceImporter.cs
1061           Mono.Cecil/PropertyDefinition.cs:
1062                 Provide a IReferenceImporter to customize how
1063                 types are injected from an assembly to another.
1065 2007-05-28  Jb Evain  <jbevain@novell.com>
1067         * Borrow annotations concept from boo ast node.
1068           Should be useful for the linker.
1070 2007-05-23  Jb Evain  <jbevain@novell.com>
1072         * Mono.Cecil/StructureWriter.cs
1073           Mono.Cecil/ReflectionWriter.cs
1074           Mono.Cecil.Cil/CodeWriter.cs:
1075                 Emit MemberReferences rows on demand.
1077 2007-05-16  Jb Evain  <jb@nurv.fr>
1079         * Mono.Cecil.Binary/ImageReader.cs:
1080                 Fix reading of the debug header for
1081                 headers half way emitted by .net SRE.
1083         * Mono.Cecil/BaseAssemblyResolver:
1084                 try to resolve unversionned assemblies.
1086 2007-05-09  Jb Evain  <jb@nurv.fr>
1088         * Mono.Cecil.Binary/Image.cs:
1089                 Throw when rva cannot be resolved.
1091         * Mono.Cecil.csproj
1092           Mono.Cecil.Binary/ExportTable.cs
1093           Mono.Cecil.Binary/BaseImageVisitor.cs
1094           Mono.Cecil.Binary/ImageReader.cs
1095           Mono.Cecil.Binary/IBinaryVisitor.cs
1096           Mono.Cecil.Binary/Image.cs
1097           Mono.Cecil.Binary/ImageInitializer.cs
1098           Mono.Cecil/StructureReader.cs
1099           Mono.Cecil/ReflectionWriter.cs:
1100                 When present, read the export table, so that people
1101                 reading non managed assemblies can use the Mono.Cecil.Binary
1102                 stuff.
1104                 Fix the bug when section name is 8 char long.
1106                 Based on a patch by Pavel Savara <pavel.savara@gmail.com>.
1108 2007-04-27  Jb Evain  <jb@nurv.fr>
1110         * Mono.Cecil/AssemblyNameReference.cs:
1111                 Allow the computation of pktoken on CF_2_0.
1113 2007-04-25  Jb Evain  <jb@nurv.fr>
1115         * Mono.Cecil/ModuleDefinition.cs
1116           Mono.Cecil/ReflectionWriter.cs
1117           Mono.Cecil.Cil/ISymbolWriter.cs
1118           Mono.Cecil.Signatures/SignatureWriter.cs
1119                 Start working on local var debug infos emitting.
1121 2007-04-08  Jb Evain  <jb@nurv.fr>
1123         * Mono.Cecil/ParameterAttributes.cs:
1124                 ParameterAttributes.None
1126 2007-03-30  Jb Evain  <jb@nurv.fr>
1128         * Collections:
1129                 Remove uneeded tests as an optimizations.
1130                 Based on a suggestion by Carlo Kok <ck@remobjects.com>.
1132         * Mono.Cecil.Metadata/StringsHeap.cs:
1133                 Optimize GetStringAt, patch by:
1134                 Carlo Kok <ck@remobjects.com>
1136 2007-03-22  Jb Evain  <jbevain@gmail.com>
1138         * Mono.Cecil/AssemblyInfo.cs:
1139                 Bump to 0.5.0.0 for the sake of our packagers friends.
1140                 Re-Bump to 0.5.0.1.
1142         * Mono.Cecil/StructureWriter.cs:
1143                 Throw a NotSupportedException instead of a NIE
1144                 for mixed mode assemblies.
1146 2007-03-20  Jb Evain  <jbevain@gmail.com>
1148         * Mono.Cecil.Metadata/MetadataWriter.cs:
1149                 Correct epilog for unicode user strings heap.
1151 2007-03-16  Jb Evain  <jbevain@gmail.com>
1153         * Mono.Cecil.Cil/CodeReader.cs
1154           Mono.Cecil.Cil/MethodBody.cs:
1155                 Add a MethodBody.Simplify method to expand
1156                 macros.
1158         * Mono.Cecil.dll.sources
1159           Mono.Cecil.csproj
1160           Mono.Cecil.Cil/OpCode.cs
1161           Mono.Cecil.Cil/OpCodes.cs
1162           Mono.Cecil.Cil/Code.cs
1163           CodeGen/cecil-gen.rb
1164           CodeGen/templates/OpCodes.cs
1165           CodeGen/templates/Code.cs:
1166                 Add a Code enumeration to simplify working with
1167                 OpCodes.
1169 2007-03-12  Jb Evain  <jbevain@gmail.com>
1171         * Mono.Cecil.Metadata/UserStringsHeap.cs:
1172                 Avoid trailing blank on some systems.
1174 2007-02-22  Jb Evain  <jbevain@gmail.com>
1176         * Mono.Cecil/ReflectionWriter.cs:
1177                 Deal with sentinels on simple methodrefs.
1179 2007-02-22  Jb Evain  <jbevain@gmail.com>
1181         * Mono.Cecil.dll.sources
1182           Mono.Cecil.csproj
1183           CodeGen/cecil.xml
1184           Mono.Cecil.Metadata/ParamPtr.cs
1185           Mono.Cecil.Metadata/MethodSpec.cs
1186           Mono.Cecil.Metadata/BaseMetadataVisitor.cs
1187           Mono.Cecil.Metadata/EventPtr.cs
1188           Mono.Cecil.Metadata/MetadataTableReader.cs
1189           Mono.Cecil.Metadata/MetadataTableWriter.cs
1190           Mono.Cecil.Metadata/MetadataRowReader.cs
1191           Mono.Cecil.Metadata/MetadataRowWriter.cs
1192           Mono.Cecil.Metadata/PropertyPtr.cs
1193           Mono.Cecil.Metadata/FieldPtr.cs
1194           Mono.Cecil.Metadata/MethodPtr.cs
1195           Mono.Cecil.Metadata/IMetadataVisitor.cs:
1196                 Add *Ptr table definitions.
1198         * Mono.Cecil.dll.sources
1199           Mono.Cecil.csproj
1200           Mono.Cecil/CallSite.cs
1201           Mono.Cecil/IMethodSignature.cs
1202           Mono.Cecil/SentinelType.cs
1203           Mono.Cecil/FunctionPointerType.cs
1204           Mono.Cecil/MethodReference.cs
1205           Mono.Cecil/ReflectionReader.cs
1206           Mono.Cecil/ReflectionWriter.cs
1207           Mono.Cecil.Cil/CodeReader.cs
1208           Mono.Cecil.Cil/CodeWriter.cs:
1209                 Implement support for writing function pointers.
1210                 Based on a patch by Argiris Kirtzidis <akyrtzi@gmail.com>
1212         * Mono.Cecil/Constants.cs:
1213                 Make it public due to some demands.
1215 2007-02-21  Jb Evain  <jbevain@gmail.com>
1217         * Mono.Cecil.Signatures/SignatureReader.cs:
1218                 do not read enums if the resolution is not forced until
1219                 cecil knows how to write them.
1221         * Mono.Cecil/ReflectionWriter.cs
1222           Mono.Cecil.Signatures/SzArray.cs
1223           Mono.Cecil.Signatures/Array.cs
1224           Mono.Cecil.Signatures/SignatureReader.cs
1225           Mono.Cecil.Signatures/TypeSpec.cs
1226           Mono.Cecil.Signatures/SignatureWriter.cs:
1227                 handle custom mods on arrays signatures.
1229         * Mono.Cecil/ReflectionReader.cs:
1230                 Handle fields TypeSpecs that have an initial value.
1231                 Based on a patch by Argiris Kirtzidis <akyrtzi@gmail.com>
1233 2007-01-29  Jb Evain  <jbevain@gmail.com>
1235         * Mono.Cecil.Metadata/MetadataWriter.cs:
1236                 Save a byte ! Yeah !
1238 2006-12-18  Jb Evain  <jbevain@gmail.com>
1240         * Mono.Cecil/ReflectionReader.cs:
1241                 Fix a bug in reading MemberRef pointing to MethodDef.
1243 2006-12-16  Jb Evain  <jbevain@gmail.com>
1245         * Mono.Cecil/StructureReader.cs:
1246                 Prevent a NRE if we're reading a multi module
1247                 assembly through a stream if a module is not find.
1248                 Fix #80273.
1250 2006-12-07  Jb Evain  <jbevain@gmail.com>
1252         * Mono.Cecil/ReflectionWriter.cs:
1253                 Allow an AssemblyDefinition to be written
1254                 more than once.
1256 2006-12-05  Jb Evain  <jbevain@gmail.com>
1258         * Mono.Cecil/ReflectionWriter.cs:
1259                 Deal with nullref default parameters.
1261 2006-12-03  Jb Evain  <jbevain@gmail.com>
1263         * Mono.Cecil/ReflectionWriter.cs:
1264                 Handle constant where the parameter is object
1265                 and the signature is something else.
1267 2006-11-27  Jb Evain  <jbevain@gmail.com>
1269         * Mono.Cecil/TypeDefinitionCollection.cs
1270           CodeGen/templates/NamedCollection.cs:
1271                 Allow multiple typedefs with the same namespace+name
1272                 to be able to read unvalid assemblies.
1274         * Mono.Cecil/ReflectionReader.cs
1275           Mono.Cecil/ReflectionWriter.cs
1276           Mono.Cecil.Signatures/PropertySig.cs
1277           Mono.Cecil.Signatures/SignatureReader.cs
1278           Mono.Cecil.Signatures/SignatureWriter.cs:
1279                 - Deal with modifiers on properties.
1280                 - Deal with non standard signatures when the byref
1281                 flag is placed after the custom modifiers.
1282           Mono.Cecil/StructureReader.cs:
1283                 - Properly detect wether an assembli is a dll or not.
1285                 Based on a patch by Argiris Kirtzidis <akyrtzi@gmail.com>.
1287 2006-11-25  Jb Evain  <jbevain@gmail.com>
1289         * Mono.Cecil/ReflectionReader.cs
1290           Mono.Cecil/ReflectionWriter.cs
1291           Mono.Cecil.Signatures/GenericArg.cs
1292           Mono.Cecil.Signatures/GenericInstSignature.cs
1293           Mono.Cecil.Signatures/SignatureReader.cs
1294           Mono.Cecil.Signatures/SignatureWriter.cs:
1295                 Deal with modifiers for generic arguments.
1296                 Based on a patch by Argiris Kirtzidis <akyrtzi@gmail.com>.
1298         * Mono.Cecil.Binary/ImageWriter.cs:
1299                 Fix a bug in writing rsrc sections.
1301         * Mono.Cecil.Cil/CodeReader.cs:
1302                 Do some refactoring.
1304         * Mono.Cecil.Metadata/MetadataToken.cs:
1305                 Add a ctor to get a MetadataToken
1306                 from an integer token.
1308 2006-11-22  Jb Evain  <jbevain@gmail.com>
1310         * Mono.Cecil.Cil/GuidAttribute.cs:
1311                 Fix for CF compilation.
1313 2006-11-16  Jb Evain  <jbevain@gmail.com>
1315         * Mono.Cecil/StructureReader.cs:
1316                 If an assembly has no managed assembly defined,
1317                 consider it as a dll.
1319 2006-11-08  Jb Evain  <jbevain@gmail.com>
1321         * Mono.Cecil/BaseAssemblyResolver.cs:
1322                 Handles different kind of GAC on Windows.
1324 2006-11-07  Jb Evain  <jbevain@gmail.com>
1326         * Mono.Cecil/ReflectionHelper.cs:
1327                 Don't import the flags of an assembly name reference.
1329 2006-11-03  Jb Evain  <jbevain@gmail.com>
1331         * Mono.Cecil/PropertyDefinition.cs:
1332                 Fix property cloning.
1333                 Patch by Alex Prudkiy <prudkiy@mail.ru>
1335 2006-10-26  Jb Evain  <jbevain@gmail.com>
1337         * Mono.Cecil/ReflectionReader.cs:
1338                 Use the proper generic context when reading memberrefs.
1340 2006-10-11  Jb Evain  <jbevain@gmail.com>
1342         * Mono.Cecil.Cil/Document.cs:
1343                 Complete a little bit.
1345         * Mono.Cecil/SecurityDeclarationReader.cs:
1346                 Get rid of a lot of exceptions when creating the security
1347                 attribute.
1349 2006-10-10  Jb Evain  <jbevain@gmail.com>
1351         * Mono.Cecil/ReflectionReader.cs:
1352           Mono.Cecil/CustomAttribute.cs:
1353           Mono.Cecil.Signatures/SignatureReader.cs:
1354           Mono.Cecil/SecurityDeclarationReader.cs:
1355                 Patch from: Eyal Alaluf  <eyala@mainsoft.com>.
1356                 Add support for resolving custom attributes that contain references
1357                 to enum in other assemblies.
1359 2006-10-09  Jb Evain  <jbevain@gmail.com>
1361         * Mono.Cecil/IRequireResolving.cs
1362           Mono.Cecil/CustomAttribute.cs
1363           Mono.Cecil/SecurityDeclaration.cs
1364           Mono.Cecil/SecurityDeclarationReader.cs
1365           Mono.Cecil/AggressiveReflectionReader.cs
1366           Mono.Cecil/ReflectionWriter.cs
1367           Mono.Cecil/ModuleDefinition.cs:
1368                 Introduce the interface IRequireResolving implemented
1369                 by CustomAttribute and SecurityDeclaration for when they can't
1370                 be read without loading another assembly.
1372         * Mono.Cecil/SecurityDeclarationReader.cs:
1373                 Prevent Cecil to crash when it can not get the type
1374                 of the declaration.
1376 2006-10-04  Eyal Alaluf  <eyala@mainsoft.com>
1378         * Mono.Cecil/StructureReader.cs:
1379                 Visit the module we load when a DLL has more then 1 module.
1380           Mono.Cecil/AssemblyNameReference.cs:
1381                 Allow "PublicToken=null" when parsing an assembly full name.
1383 2006-10-03  Jb Evain  <jbevain@gmail.com>
1385         * Mono.Cecil/BaseAssemblyResolver.cs
1386           Mono.Cecil.Binary/ResourceReader.cs:
1387                 CompactFramework fix.
1389 2006-10-02  Jb Evain  <jbevain@gmail.com>
1391         * implement IList on the named collections.
1393         * implement the first bits of Win32 resources handling.
1395         * Mono.Cecil/ReflectionHelper.cs:
1396                 It does not make sense to import the assembly flags.
1398 2006-09-28  Jb Evain  <jbevain@gmail.com>
1400         * Mono.Cecil/MethodDefinitionCollection.cs
1401           Mono.Cecil/ConstructorCollection.cs
1402           Mono.Cecil.Cil/InstructionCollection.cs
1403           CodeGen/templates/IndexedCollection.cs
1404                 Fix StackOverlow.
1406 2006-09-27  Jb Evain  <jbevain@gmail.com>
1408         * *Collection.cs: use CollectionBase when possible.
1410 2006-09-24  Jb Evain  <jbevain@gmail.com>
1412         * Mono.Cecil/AssemblyFactory.cs
1413           Mono.Cecil/ReflectionWriter.cs
1414           Mono.Cecil.Cil/ISymbolStoreFactory.cs
1415           Mono.Cecil.Cil/SymbolStoreHelper.cs:
1416                 Some more work on the debugging infos api.
1418         * Mono.Cecil/MethodDefinitionCollection.cs
1419           Mono.Cecil/ConstructorCollection.cs
1420           CodeGen/templates/IndexedCollection.cs:
1421                 Fix the GetConstructor/GetMethod methods.
1422                 Based on a patch by Jon Chambers.
1424 2006-09-20  Jb Evain  <jbevain@gmail.com>
1426         * Mono.Cecil/StructureWriter.cs
1427           Mono.Cecil/ModuleDefinition.cs
1428           Mono.Cecil/ReflectionWriter.cs
1429           Mono.Cecil/AssemblyFactory.cs
1430           Mono.Cecil.Cil/ISymbolReader.cs
1431           Mono.Cecil.Cil/CodeWriter.cs
1432           Mono.Cecil.Cil/ISymbolWriter.cs
1433           Mono.Cecil.Cil/SymbolStoreHelper.cs:
1434                 Working on the debug infos stuff.
1436         * Mono.Cecil.Signatures/SignatureReader.cs:
1437                 Ensure custom attributes are read when they can be.
1438                 Patch by Sebastien Pouliot.
1440 2006-09-19  Jb Evain  <jbevain@gmail.com>
1442         * Mono.Cecil/ModuleDefinition.cs
1443           Mono.Cecil/ReflectionReader.cs
1444           Mono.Cecil/ReflectionWriter.cs
1445           Mono.Cecil.Cil/Document.cs
1446           Mono.Cecil.Cil/Instruction.cs
1447           Mono.Cecil.Cil/SequencePoint.cs
1448           Mono.Cecil.Cil/CodeReader.cs
1449           Mono.Cecil.Cil/IScopeProvider.cs
1450           Mono.Cecil.Cil/ISymbolReader.cs
1451           Mono.Cecil.Cil/CodeWriter.cs
1452           Mono.Cecil.Cil/ISymbolWriter.cs
1453           Mono.Cecil.Cil/IVariableDefinitionProvider.cs
1454           Mono.Cecil.Cil/SymbolStoreHelper.cs
1455           Mono.Cecil.Cil/ISymbolStoreFactory.cs
1456           Mono.Cecil.Cil/ScopeCollection.cs
1457           Mono.Cecil.Cil/Scope.cs:
1458                 Work on the architecture for debugging infos.
1460         * Mono.Cecil.dll.sources
1461           Mono.Cecil.Cil/Document.cs
1462           Mono.Cecil.Cil/IVariableDefinitionProvider.cs
1463           Mono.Cecil.Cil/SequencePoint.cs
1464           Mono.Cecil.Cil/ScopeCollection.cs
1465           Mono.Cecil.Cil/BaseCodeVisitor.cs
1466           Mono.Cecil.Cil/CodeReader.cs
1467           Mono.Cecil.Cil/IScopeProvider.cs
1468           Mono.Cecil.Cil/MethodBody.cs
1469           Mono.Cecil.Cil/ICodeVisitor.cs
1470           Mono.Cecil.Cil/CodeWriter.cs
1471           Mono.Cecil.Cil/Scope.cs
1472           Mono.Cecil.Cil/VariableDefinitionCollection.cs
1473           CodeGen/cecil.xml:
1474                 First bits of the debug infos stuff.
1476         * Mono.Cecil.Cil/InstructionCollection.cs
1477           CodeGen/templates/IndexedCollection.cs:
1478                 The outside instruction has an offset of -1.
1480         * Mono.Cecil.Cil/OpCodes.cs
1481           Mono.Cecil.Cil/CodeReader.cs
1482           Mono.Cecil.Cil/OpCode.cs
1483           CodeGen/templates/OpCodes.cs:
1484                 Simpliest way of dealing with different opcodes.
1486 2006-09-07  Jb Evain  <jbevain@gmail.com>
1488         * support PE32+ file format.
1490         * Add an Outside instruction to an InstructionCollection.
1491         Cleaner than the old null instruction.
1493         * Mono.Cecil/MarshalSpec.cs
1494           Mono.Cecil/ReflectionReader.cs
1495           Mono.Cecil/ReflectionWriter.cs
1496           CodeGen/cecil-mig.rb:
1497                 Refactor names from Desc to Spec.
1499         * *Collection.cs:
1500                 Remove the unused events stuff.
1502 2006-08-31  Jb Evain  <jbevain@gmail.com>
1504         * /!\ Breaking changes:
1505                 On the way to Cecil 0.5. Remove meaningless interfaces.
1506                 GenericParamAttributes -> GenericParameterAttributes
1507                 ParamAttributes -> ParamAttributes
1509                 I'll provide a migration path with a script.
1511                 Please do not use this revision, other changes are on the way.
1513 2006-08-26  Jb Evain  <jbevain@gmail.com>
1515         * Mono.Cecil/ReflectionReader.cs:
1516                 Fix a bug when reading some parameters.
1518 2006-08-26  Jb Evain  <jbevain@gmail.com>
1520         * Mono.Cecil.Cil/ReflectionWriter.cs:
1521                 Fix the computation of the size of the last opcode in case
1522                 of an exception handler is pointing outside the cil stream.
1524         * Mono.Cecil.Cil/ReflectionWriter.cs:
1525                 Don't use seh tiny headers when the size can't fit in a byte.
1527         * Mono.Cecil.Cil/ReflectionWriter.cs:
1528                 Fix a problem in the computation of the stack when the IL
1529                 is somewhat strange.
1531 2006-08-23  Jb Evain  <jbevain@gmail.com>
1533         * Mono.Cecil/AssemblyInfo.cs:
1534                 Cecil 0.4.3 release.
1536 2006-08-21  Jb Evain  <jbevain@gmail.com>
1538         * Mono.Cecil.Metadata/MetadataWriter.cs:
1539                 Fix a bug in field initial values writing.
1541         * Mono.Cecil/BaseAssemblyResolver.cs:
1542                 Look for assemblies in ./ first
1544 2006-08-17  Jb Evain  <jbevain@gmail.com>
1546         * Mono.Cecil/BaseAssemblyResolver.cs:
1547                 Resolve the corlib depending on its version.
1549         * Mono.Cecil/AssemblyName.cs
1550           Mono.Cecil/BaseAssemblyResolver.cs:
1551                 Implement a AssemblyNameReference.Parse(string)
1553         * Mono.Cecil/TypeReferenceCollection.cs
1554           Mono.Cecil/ExternTypeCollection.cs
1555           Mono.Cecil/TypeDefinitionCollection.cs
1556           CodeGen/templates/NamedCollectionImplem.cs:
1557                 Avoid infinite recursion.
1559         * Mono.Cecil/BaseAssemblyResolver.sc:
1560                 Stay .net 1.1 compatible
1562 2006-08-16  Jb Evain  <jbevain@gmail.com>
1564         * Mono.Cecil/IAssemblyResolver.cs
1565           Mono.Cecil/BaseAssemblyResolver.cs
1566           Mono.Cecil/DefaultAssemblyResolver.cs
1567           Mono.Cecil/AssemblyDefinition.cs
1568                 Implement an assembly resolver.
1570         * Mono.Cecil/ReflectionReader.cs:
1571                 Fix the initial value reading.
1572                 Based on a report and a patch of Roei Erez  <roeie@mainsoft.com>
1574 2006-08-15  Jb Evain  <jbevain@gmail.com>
1576         * Mono.Cecil/TypeReferenceCollection.cs
1577           Mono.Cecil/ExternTypeCollection.cs
1578           Mono.Cecil/TypeDefinitionCollection.cs
1579           CodeGen/templates/NamedCollectionImplem.cs:
1580                 Fix the CopyTo method.
1582 2006-07-19  Jb Evain  <jbevain@gmail.com>
1584         * CodeGen/templates/IIndexedCollection.cs
1585           CodeGen/templates/IndexedCollectionImplem.cs
1586           Mono.Cecil/IConstructorCollection.cs
1587           Mono.Cecil/IMethodDefinitionCollection.cs
1588           Mono.Cecil/MethodDefinitionCollection.cs
1589           Mono.Cecil/ConstructorCollection.cs:
1590                 Add a GetConstructor(bool,ParameterDefinitionCollection) method
1591                 required by the linker.
1593         * Mono.Cecil.Metadata/MetadataReader.cs
1594           Mono.Cecil.Metadata/StringsHeap.cs:
1595                 Read the string on demand, based on the index.
1596                 Needed due to some obfuscators that create a string entry like
1597                 xClassName, and make the pointer points to after the x.
1599 2006-07-03      Rodrigo B. de Oliveira <rodrigobamboo@gmail.com>
1600         * CodeGen/templates/ImageReader.cs
1601           Mono.Cecil.Binary/ImageReader.cs:
1602                 CompactFramework compatibility.
1604 2006-07-02      Rodrigo B. de Oliveira <rodrigobamboo@gmail.com>
1606         * CodeGen/templates/ImageReader.cs
1607           Mono.Cecil.Binary/ImageReader.cs:
1608                 Proper FileNotFoundException construction.
1610         * Mono.Cecil/MethodDefinition.cs
1611           Mono.Cecil/IMethod.cs:
1612                 Helper properties IsInternalCall and IsRuntime.
1614 2006-06-21  Jb Evain  <jbevain@gmail.com>
1616         * Mono.Cecil.Cil/CilWorker.cs:
1617                 Fix ldc.i4.s emitting.
1619 2006-06-13  Jb Evain  <jbevain@gmail.com>
1621         * Mono.Cecil/ReflectionWriter.cs:
1622                 Fix for compiling on CF 1.
1623         * Mono.Cecil/StructureReader.cs:
1624                 Fix for a "bug" when csc 7.1 emits an assembly
1625                 with an assembly row, but no blob heap.
1626                 Plus style fix.
1628 2006-06-08  Jb Evain  <jbevain@gmail.com>
1630         * Mono.Cecil/IMethod.cs
1631           Mono.Cecil/MethodDefinition.cs
1632           Mono.Cecil/ReflectionWriter.cs:
1633                 Add a public HasBody property.
1635 2006-06-07  Jb Evain  <jbevain@gmail.com>
1637         * Mono.Cecil/MethodDefinition.cs
1638           Mono.Cecil/ReflectionWriter.cs:
1639                 Read and write method bodies only when allowed.
1641 2006-05-29  Jb Evain  <jbevain@gmail.com>
1643         * Mono.Cecil/IMethodDefinition.cs
1644           Mono.Cecil/MethodDefinition.cs:
1645                 Remove the useless CreateBody method.
1647 2006-05-27  Jb Evain  <jbevain@gmail.com>
1649         * Mono.Cecil/StructureWriter.cs
1650           Mono.Cecil/ReflectionReader.cs
1651           Mono.Cecil/MethodDefinition.cs
1652           Mono.Cecil.Metadata/MetadataToken.cs
1653           Mono.Cecil.Signatures/SignatureReader.cs:
1654                 Play better with mixed mode assemblies.
1656         * Mono.Cecil/SecurityDeclarationReader.cs
1657           Mono.Cecil/ReflectionWriter.cs
1658           Mono.Cecil.Signatures/SignatureReader.cs:
1659                 Read/Write this awful load of crap that is sharepoint.
1661 2006-05-22  Jb Evain  <jbevain@gmail.com>
1663         * Mono.Cecil.Cil/CilWorker.cs:
1664                 Fix #78479. Patch by David Emsellem.
1666 2006-05-20  Jb Evain  <jbevain@gmail.com>
1668         * CodeGen/templates/ImageReader.cs
1669           CodeGen/templates/ImageWriter.cs
1670           Mono.Cecil/AssemblyFactory.cs
1671           Mono.Cecil/StructureWriter.cs
1672           Mono.Cecil/Binary/ImageReader.cs
1673           Mono.Cecil/Binary/Image.cs
1674           Mono.Cecil/Binary/ImageWriter.cs
1675           Mono.Cecil.Metadata/MetadataWriter.cs:
1676                 Optimize assembly writing.
1677                 Add methods to read assemblies from byte arrays.
1679         * Mono.Cecil/StructureWriter.cs:
1680                 Throw an exception when the target is an exe
1681                 and no entry point have been setted.
1682         * Mono.Cecil/AssemblyFactory.cs:
1683                 Add helpers method to defines assemblies.
1684         * Mono.Cecil/MethodDefinition.cs:
1685                 Set the hasThis flag to the correct value.
1686         * Mono.Cecil.Cil/CodeReader.cs:
1687                 Remove old comment.
1688         * Mono.Xml/SmallXmlParser.cs:
1689                 Make private.
1691 2006-05-18  Jb Evain  <jbevain@gmail.com>
1693         * CodeGen/templates/MetadataTableReader.cs
1694           Mono.Cecil.Metadata/MetadataTableReader.cs
1695           Mono.Cecil.Metadata/TableCollection.cs
1696           Mono.Cecil.Metadata/TablesHeap.cs:
1697                 Optimize a little bit.
1699         * CodeGen/templates/MetadataTableWriter.cs
1700           Mono.Cecil.Metadata/MetadataTableWriter.cs
1701           Mono.Cecil.Metadata/TableCollection.cs:
1702                 Fix for last changeset.
1704         * Mono.Cecil.Metadata/RIdAttribute.cs:
1705                 deleted.
1707         * Mono.Cecil/ReflectionReader.cs
1708           Mono.Cecil/StructureReader.cs
1709           Mono.Cecil/ReflectionWriter.cs
1710           Mono.Cecil/AggressiveReflectionReader.cs
1711           Mono.Cecil.Cil/CodeReader.cs
1712           CodeGen/templates/Utilities.cs
1713           CodeGen/templates/MetadataTableReader.cs
1714           CodeGen/templates/MetadataTableWriter.cs
1715           CodeGen/templates/Table.cs
1716           CodeGen/templates/MetadataRowReader.cs
1717           CodeGen/templates/MetadataRowWriter.cs
1718           Mono.Cecil.Metadata/Assembly.cs
1719           Mono.Cecil.Metadata/InterfaceImpl.cs
1720           Mono.Cecil.Metadata/PropertyMap.cs
1721           Mono.Cecil.Metadata/Constant.cs
1722           Mono.Cecil.Metadata/MethodSpec.cs
1723           Mono.Cecil.Metadata/DeclSecurity.cs
1724           Mono.Cecil.Metadata/TypeDef.cs
1725           Mono.Cecil.Metadata/GenericParamConstraint.cs
1726           Mono.Cecil.Metadata/MethodImpl.cs
1727           Mono.Cecil.Metadata/NestedClass.cs
1728           Mono.Cecil.Metadata/MetadataTableReader.cs
1729           Mono.Cecil.Metadata/AssemblyRefProcessor.cs
1730           Mono.Cecil.Metadata/AssemblyRef.cs
1731           Mono.Cecil.Metadata/AssemblyRefOS.cs
1732           Mono.Cecil.Metadata/Method.cs
1733           Mono.Cecil.Metadata/MetadataTableWriter.cs
1734           Mono.Cecil.Metadata/MetadataRowReader.cs
1735           Mono.Cecil.Metadata/ExportedType.cs
1736           Mono.Cecil.Metadata/CustomAttribute.cs
1737           Mono.Cecil.Metadata/Param.cs
1738           Mono.Cecil.Metadata/ClassLayout.cs
1739           Mono.Cecil.Metadata/MetadataRowWriter.cs
1740           Mono.Cecil.Metadata/Utilities.cs
1741           Mono.Cecil.Metadata/AssemblyOS.cs
1742           Mono.Cecil.Metadata/ModuleRef.cs
1743           Mono.Cecil.Metadata/FieldMarshal.cs
1744           Mono.Cecil.Metadata/GenericParam.cs
1745           Mono.Cecil.Metadata/ImplMap.cs
1746           Mono.Cecil.Metadata/TableCollection.cs
1747           Mono.Cecil.Metadata/TablesHeap.cs
1748           Mono.Cecil.Metadata/TypeRef.cs
1749           Mono.Cecil.Metadata/ManifestResource.cs
1750           Mono.Cecil.Metadata/File.cs
1751           Mono.Cecil.Metadata/EventMap.cs
1752           Mono.Cecil.Metadata/AssemblyProcessor.cs
1753           Mono.Cecil.Metadata/FieldLayout.cs
1754           Mono.Cecil.Metadata/Event.cs
1755           Mono.Cecil.Metadata/Field.cs
1756           Mono.Cecil.Metadata/Property.cs
1757           Mono.Cecil.Metadata/Module.cs
1758           Mono.Cecil.Metadata/MethodSemantics.cs
1759           Mono.Cecil.Metadata/StandAloneSig.cs
1760           Mono.Cecil.Metadata/FieldRVA.cs
1761           Mono.Cecil.Metadata/TypeSpec.cs
1762           Mono.Cecil.Metadata/IMetadataTable.cs
1763           Mono.Cecil.Metadata/MemberRef.cs:
1764                 Fix the way the metadata tables are handled.
1766         * Mono.Cecil.Signatures/SignatureWriter.cs:
1767                 Fix bug in string writing.
1769 2006-05-12  Jb Evain  <jbevain@gmail.com>
1771         * Mono.Cecil/AssemblyInfo.cs:
1772                 Hide the info if Cecil is embedded.
1774 2006-05-09  Jb Evain  <jbevain@gmail.com>
1776         * cecil.build: rename to default.build
1778 2006-05-08  Jb Evain  <jbevain@gmail.com>
1780         * Makefile:
1781                 Sign the assembly.
1783         * cecil.csproj:
1784                 Add an msbuild file.
1786 2006-05-05  Jb Evain  <jbevain@gmail.com>
1788         * Mono.Cecil/AssemblyFactory.cs
1789           Mono.Cecil/StructureReader.cs
1790           Mono.Cecil/ModuleDefinition.cs:
1791                 Add an AssemblyFactory.GetAssemblyManifest method.
1793 2006-05-04  Jb Evain  <jbevain@gmail.com>
1795         * Mono.Cecil/TableComparers.cs:
1796                 TypeDef.Compare: the name is enough against <Module>.
1798         * Mono.Cecil/ReflectionWriter.cs:
1799                 Fix writing of namedargs in custom attributes.
1801 2006-04-26  Jb Evain  <jbevain@gmail.com>
1803         * Mono.Cecil.Signatures/SignatureReader.cs:
1804                 Don't create tons of hashtables.
1806 2006-04-24  Jb Evain  <jbveain@gmail.com>
1808        * Mono.Cecil.Cil/MethodBody.cs:
1809                Fix cloning.
1811 2006-04-21  Jb Evain  <jbevain@gmail.com>
1813         * Mono.Cecil/AssemblyFactory.cs
1814           Mono.Cecil.Binary/MemoryBinaryWriter.cs:
1815                 Use MemoryStream::WriteTo when it's possible.
1817 2006-04-21      Rodrigo B. de Oliveira  <rodrigobamboo@gmail.com>
1819         * Mono.Cecil/SecurityDeclaration.cs
1820           Mono.Cecil/ISecurityDeclaration.cs
1821           Mono.Cecil/SecurityDeclarationCollection.cs
1822           Mono.Cecil/ModuleDefinition.cs:
1823                 Patch by Almann T. Goo (almann.goo@gmail.com) conditionally
1824                 removing references to PermissionSet when compiling for the CompactFramework.
1826         * Mono.Cecil/CompactFrameworkCompatibility.cs:
1827                 System.Security.PermissionSet definition no longer needed.
1829 2006-04-21  Jb Evain  <jbevain@gmail.com>
1831         * *Collection.cs:
1832                 Fix typo in RemoveAt.
1834 2006-04-20  Jb Evain  <jbevain@gmail.com>
1836         * Mono.Cecil/ReflectionWriter.cs:
1837                 Fix writing of complex arrays.
1838                 Now we roundtrip SharpDevelop.
1840         * Mono.Cecil/ReflectionWriter.cs
1841           Mono.Cecil/TableComparers.cs:
1842                 Ensure <Module> will always be the first type.
1843                 Fix roundtrip of Nemerle.
1845 2006-04-19  Jb Evain  <jbevain@gmail.com>
1847         * Mono.Cecil.Cil/CodeWriter.cs:
1848                 Handle the case where an handler points after the last
1849                 instruction. Now we roundtrip db4o.
1851         * Mono.Cecil/IIndexedCollection.cs:
1852           *Collection.cs:
1853                 Make every collection implement an indexed collection.
1855 2006-04-15  Jb Evain  <jbevain@gmail.com>
1857         * Mono.Cecil/CustomAttribute.cs:
1858                 Fix handling of types.
1860 2006-04-11  Jb Evain  <jbevain@gmail.com>
1862         * Mono.Cecil/FieldDefinition.cs
1863           Mono.Cecil/ReflectionReader.cs
1864           Mono.Cecil/TypeDefinition.cs
1865           Mono.Cecil/IField.cs
1866           Mono.Cecil/ITypeDefinition.cs
1867           Mono.Cecil/ReflectionWriter.cs
1868           Mono.Cecil/AggressiveReflectionReader.cs
1869           Mono.Cecil.Cil/IVariable.cs
1870           Mono.Cecil.Cil/MethodBody.cs
1871           Mono.Cecil.Cil/VariableDefinition.cs
1872           Mono.Cecil.Cil/CodeWriter.cs:
1873                 Don't use interfaces internally.
1875         * Mono.Cecil/TypeReference.cs:
1876                 Make TypeReference extend MemberReference.
1878         * Mono.Cecil/Modifiers.cs
1879           Mono.Cecil.Cil/CodeReader.cs
1880           Mono.Cecil.Cil/CodeWriter.cs
1881           Mono.Cecil.Signatures/LocalVarSig.cs
1882           Mono.Cecil.Signatures/SignatureReader.cs:
1883                 Fix modifiers on localvar signatures.
1884                 Fix roundtrip of delphi assemblies.
1886         * Mono.Cecil/CustomAttribute.cs
1887           Mono.Cecil/ReflectionReader.cs
1888           Mono.Cecil/ReflectionWriter.cs
1889           Mono.Cecil.Signatures/SignatureWriter.cs:
1890                 Work on complex custom attributes encoding.
1892         * Mono.Cecil/TableComparers.cs:
1893                 Style.
1895 2006-04-09  Eyal Alaluf  <eyala@mainsoft.com>
1897     * Mono.Cecil/ReflectionReader.cs
1898             Cannot assume that TypeRefs are ordered is such a way that an outer
1899                 class index comes always before all its inner classes.
1901 2006-04-06  Jb Evain  <jbevain@gmail.com>
1903         * Mono.Cecil/ReflectionWriter.cs
1904           Mono.Cecil.Signatures/SignatureWriter.cs:
1905                 Clean up things a little bit prior ending
1906                 custom attribute encoding.
1908         * Mono.Cecil/ReflectionWriter.cs:
1909                 Write custom attributes of parameters
1910                 onyl when all methods have their tokens.
1912         * Mono.Cecil/ReflectionReader.cs
1913           Mono.Cecil/ReflectionWriter.cs
1914           Mono.Cecil/AggressiveReflectionReader.cs:
1915                 Handle custom attributes on generic parameters.
1917 2006-04-05  Jb Evain  <jbevain@gmail.com>
1919         * Mono.Cecil/ReflectionWriter.cs:
1920                 Ensure the param[0] is written when it should be.
1922 2006-04-04  Jb Evain  <jbevain@gmail.com>
1924         * Mono.Cecil/ReflectionHelper.cs:
1925                 Remove an unused hack.
1927         * Mono.Cecil/AssemblyInfo.cs: Go 0.4.1
1929         * Mono.Cecil.Metadata/MetadataHeap.cs
1930           Mono.Cecil.Metadata/MetadataStream.cs:
1931                 Read #- stream has well.
1933         * Mono.Cecil/ReflectionHelper.cs:
1934                 Implement Import stuff for System.Type and SR.*
1936 2006-04-03      Rodrigo B. de Oliveira  <rodrigobamboo@gmail.com>
1938         * Mono.Cecil/SecurityDeclarationReader.cs
1939           Mono.Cecil/TypeReferenceCollection.cs
1940           Mono.Cecil/CompactFrameworkCompatibility.cs
1941           Mono.Cecil/AssemblyFactory.cs
1942           Mono.Cecil/AssemblyName.cs
1943           Mono.Cecil/ExternTypeCollection.cs
1944           Mono.Cecil/TypeDefinitionCollection.cs
1945           CodeGen/templates/NamedCollectionImplem.cs
1946           Mono.Cecil.Metadata/CultureUtils.cs
1947           cecil.build:
1948                 CompactFramework 2.0 support through CF_2_0 compilation symbol.
1950 2006-04-03  Jb Evain  <jbevain@gmail.com>
1952         * Mono.Cecil.dll.sources
1953           Mono.Cecil/GenericParameter.cs
1954           Mono.Cecil/ReflectionHelper.cs
1955           Mono.Cecil/FieldDefinition.cs
1956           Mono.Cecil/CustomAttribute.cs
1957           Mono.Cecil/TypeDefinition.cs
1958           Mono.Cecil/IModuleDefinition.cs
1959           Mono.Cecil/ImportContext.cs
1960           Mono.Cecil/AssemblyName.cs
1961           Mono.Cecil/MethodDefinition.cs
1962           Mono.Cecil/EventDefinition.cs
1963           Mono.Cecil/ModuleDefinition.cs
1964           Mono.Cecil/ReflectionWriter.cs
1965           Mono.Cecil/GenericContext.cs
1966           Mono.Cecil/ParameterDefinition.cs
1967           Mono.Cecil/PropertyDefinition.cs
1968           Mono.Cecil.Cil/MethodBody.cs:
1969                 Work on generic assemblies manipulation via
1970                 import stuff.
1972 2006-03-31  Jb Evain  <jbevain@gmail.com>
1974         * Mono.Cecil/AssemblyFlags.cs:
1975                 Add a Retargetable flag used on the CF.
1977 2006-03-30  Jb Evain  <jbevain@gmail.com>
1979         * Mono.Cecil/SecurityDeclarationReader.cs:
1980                 Don't crash if the declaration is empty.
1982         * Mono.Cecil/ParamAttributes.cs:
1983                 Update the Optional flag.
1984           Mono.Cecil/ReflectionWriter.cs:
1985                 Fix the encoding of nullref.
1986                 Fixes #77959. Based on a patch by
1987                 Armand Du Plessis < armand@dotnet.org.za>
1989 2006-03-29  Jb Evain  <jbevain@gmail.com>
1991         * Mono.Cecil/IHasSecurity.cs
1992           Mono.Cecil/IHasConstant.cs
1993           Mono.Cecil/IHasMarshalSpec.cs:
1994           Mono.Cecil/MethodReturnType.cs
1995           Mono.Cecil/AssemblyDefinition.cs:
1996                 Implement IMetadataTokenProvider.
1998         * Mono.Cecil/StructureReader.cs
1999           Mono.Cecil/ReflectionWriter.cs:
2000                 Use more the token providers.
2002 2006-03-28  Jb Evain  <jbevain@gmail.com>
2004         * Mono.Cecil/ReflectionReader.cs
2005           Mono.Cecil/MarshalDesc.cs
2006           Mono.Cecil/IMarshalSpec.cs
2007           Mono.Cecil/ReflectionWriter.cs:
2008                 Fix round-tripping of assemblies using
2009                 COM stuff.
2011 2006-03-27  Jb Evain  <jbevain@gmail.com>
2013         * Mono.Cecil.Metadata/MetadataToken.cs:
2014                 Override GetHashCode as we override Equals.
2016         * Mono.Cecil/TableComparers.cs:
2017                 Fix the ordering of generic parameters.
2018                 This revision roundtrips C5. Yeah!
2020         * Mono.Cecil/ReflectionWriter.cs:
2021                 Fix method spec "caching"
2022           Mono.Cecil.Cil/OpCode.cs:
2023                 Override ToString ();
2024           Mono.Cecil.Metadata/MetadataToken.cs:
2025                 Implement operator ==
2027         * Mono.Cecil/ReflectionWriter.cs
2028           Mono.Cecil/TableComparers.cs:
2029                 Better handling of generic tables sorting.
2031         * Mono.Cecil/ReflectionWriter.cs
2032           Mono.Cecil/TableComparers.cs:
2033                 Sort generic tables as well.
2035 2006-03-27      Rodrigo B. de Oliveira  <rodrigobamboo@gmail.com>
2036         * Mono.Cecil.Metadata/MetadataWriter.cs:
2037                 Use CompactFramework compatible version of
2038                 System.Convert.ToBase64String.
2040 2006-03-27  Jb Evain  <jbevain@gmail.com>
2042         * Mono.Cecil.dll.sources
2043           Mono.Cecil/GenericParameter.cs
2044           Mono.Cecil/ConstraintCollection.cs
2045           Mono.Cecil/IGenericParameter.cs
2046           Mono.Cecil/IConstraintCollection.cs
2047           CodeGen/cecil.xml:
2048                 Add a ConstraintCollection to be used within
2049                 generic parameters.
2051         * Mono.Cecil/GenericInstanceType.cs:
2052                 Correctly return if the instance is a value type
2053                 or not.
2055 2006-03-25  Jb Evain  <jbevain@gmail.com>
2057         * Mono.Cecil/ModuleDefinition.cs:
2058                 Support the unreadable security declarations
2059                 when converting one to byte [].
2061         * Mono.Cecil/IModuleDefinition.cs
2062           Mono.Cecil/ModuleDefinition.cs
2063           Mono.Cecil/ReflectionWriter.cs:
2064                 Add a FullLoad method on a module.
2066         * Mono.Cecil/StructureWriter.cs
2067           Mono.Cecil/ReflectionWriter.cs:
2068                 Fix a  few bugs in generics type emitting.
2070         * Mono.Cecil.Cil/CodeWriter.cs:
2071                 Cache local sig as well.
2073 2006-03-24  Jb Evain  <jbevain@gmail.com>
2075         * Mono.Cecil/ReflectionWriter.cs:
2076                 Cache method specs as well.
2078         * CodeGen/templates/ImageWriter.cs
2079           Mono.Cecil.Metadata/MetadataWriter.cs
2080           Mono.Cecil.Binary/ImageWriter.cs:
2081                 Replace the foreach char pattern by
2082                 Encoding.GetBytes
2084 2006-03-23  Jb Evain  <jbevain@gmail.com>
2086         * Mono.Cecil/TypeReferenceCollection.cs
2087           Mono.Cecil/ExternTypeCollection.cs
2088           Mono.Cecil/TypeDefinitionCollection.cs
2089           CodeGen/templates/NamedCollectionImplem.cs
2090           CodeGen/templates/ImageReader.cs:
2091                 Ensure type with the same name are added
2092                 to the collection.
2094         * Mono.Cecil.Metadata/MetadataWriter.cs:
2095                 Ensure every blob signature is unique.
2097         * Mono.Cecil/IModuleDefinition.cs
2098           Mono.Cecil/ModuleDefinition.cs:
2099                 Rename method to avoid confusion.
2101 2006-03-22  Jb Evain  <jbevain@gmail.com>
2103         * Mono.Cecil.Cil/CodeWriter.cs:
2104                 Precisely detect whether we emit fat seh or not.
2106         * Mono.Cecil/ReflectionWriter.cs:
2107                 Avoid duplicates in the typespec table.
2109 2006-03-21  Jb Evain  <jbevain@gmail.com>
2111         * Mono.Cecil/ReflectionWriter.cs:
2112                 Correctly write generic parameters.
2114         * Mono.Cecil/SecurityDeclarationReader.cs
2115           Mono.Cecil/SecurityDeclaration.cs
2116           Mono.Cecil/ReflectionWriter.cs:
2117                 Fix for security declarations reading on .net 2.0.
2119         * Mono.Cecil/ReflectionReader.cs
2120           Mono.Cecil/GenericContext.cs:
2121                 Fix test case RoundtripTestFixture.boo.
2123 2006-03-20  Jb Evain  <jbevain@gmail.com>
2125         * Mono.Cecil.Metadata/MetadataReader.cs:
2126                 #Strings heap is utf8, fix #77820.
2128 2006-03-08  Jb Evain  <jbevain@gmail.com>
2130         * CodeGen/cecil-gen-tests.rb
2131           CodeGen/templates/Tests.cs:
2132                 Start of a very small infrastructure to use tests from
2133                 rotor/mono with Cecil.
2135         * Mono.Cecil/IMethod.cs
2136           Mono.Cecil/TypeDefinition.cs
2137           Mono.Cecil/MethodDefinition.cs
2138           Mono.Cecil.Cil/CodeReader.cs
2139           Mono.Cecil.Cil/CodeWriter.cs:
2140                 Add support for the very special case ldarg 0.
2141                 Patch idea by Vladislav Spivak <spivak@mainsoft.com>
2143 2006-03-07  Jb Evain  <jbevain@gmail.com>
2145         * CodeGen/templates/ImageReader.cs
2146           Mono.Cecil/AssemblyFactory.cs
2147           Mono.Cecil/StructureReader.cs
2148           Mono.Cecil.Binary/Image.cs
2149           Mono.Cecil.Binary/ImageReader.cs:
2150                 Allow users to get a loaded image using
2151                 Image.GetImage as they have no access to
2152                 the ImageReader.
2154 2006-03-06  Jb Evain  <jbevain@gmail.com>
2156         * Mono.Cecil.Signatures/SignatureReader.cs:
2157                 Fix array reading in custom attributes.
2159 2006-03-06  Joshua Tauberer <tauberer@for.net>
2161         * Mono.Cecil/TypeAttributes.cs: Fixed typo
2162           in value for Abstract.
2164 2006-02-27  Jb Evain  <jbevain@gmail.com>
2166         * CodeGen/templates/IndexedCollectionImplem.cs
2167           CodeGen/templates/IIndexedCollection.cs
2168           Mono.Cecil.Cil/InstructionCollection.cs
2169           Mono.Cecil.Cil/IInstructionCollection.cs:
2170                 Small API fix, prevent the user from not using
2171                 the CilWorker.
2173         * Mono.Cecil.Cil/CodeReader.cs
2174           Mono.Cecil.Cil/Label.cs:
2175                 Remove Label.
2177         * Mono.Cecil/ReflectionReader.cs:
2178                 Fix typo.
2180 2006-02-20  Jb Evain  <jbevain@gmail.com>
2182         * Mono.Cecil.Signatures/SignatureWriter.cs:
2183                 Fix a bug when a value is null in a custom attribute.
2185 2006-02-20  Sebastien Pouliot  <sebastien@ximian.com>
2187         * Mono.Cecil.Metadata/MetadataWriter.cs:
2188                 Fix GetStrongNameSignatureSize to handle the ECMA pseudo-key.
2190 2006-02-07  Jb Evain  <jbevain@gmail.com>
2192         * Mono.Cecil/AssemblyInfos.cs:
2193                 Tag this version 0.3, as users are happy with it.
2195 2006-01-26  Jb Evain  <jbevain@gmail.com>
2197         * Mono.Cecil/CustomAttribute.cs:
2198                 Fix cloning of non readable attributes.
2200         * Mono.Cecil/ReflectionReader.cs
2201           Mono.Cecil/ReflectionWriter.cs
2202           Mono.Cecil.Signatures/MethodRefSig.cs
2203           Mono.Cecil.Signatures/SignatureWriter.cs
2204           Mono.Cecil.Signatures/MethodDefSig.cs:
2205                 Work on generics.
2207         * Mono.Cecil/ArrayType.cs
2208           Mono.Cecil/ReferenceType.cs
2209           Mono.Cecil/PointerType.cs:
2210                 Fix names of typespecs.
2212         * Mono.Cecil/TypeReferenceCollection.cs
2213           Mono.Cecil/ExternTypeCollection.cs
2214           CodeGen/templates/NamedCollectionImplem.cs:
2215                 Allow multiple key by names in type references.
2217 2006-01-25  Jb Evain  <jbevain@gmail.com>
2219         * Mono.Cecil/AssemblyFactory.cs:
2220                 Don't trap exceptions.
2222         * Mono.Cecil/GenericParameter.cs
2223           Mono.Cecil/IMethod.cs
2224           Mono.Cecil/GenericInstanceType.cs
2225           Mono.Cecil/TypeReference.cs
2226           Mono.Cecil/GenericInstanceMethod.cs
2227           Mono.Cecil/ReflectionReader.cs
2228           Mono.Cecil/TypeDefinition.cs
2229           Mono.Cecil/IGenericArgumentCollection.cs
2230           Mono.Cecil/ITypeReference.cs
2231           Mono.Cecil/IGenericInstance.cs
2232           Mono.Cecil/GenericArgumentCollection.cs
2233           Mono.Cecil/MethodDefinition.cs
2234           Mono.Cecil/MethodReference.cs
2235           Mono.Cecil/ITypeDefinition.cs
2236           Mono.Cecil/IGenericArgumentProvider.cs
2237           Mono.Cecil/ReflectionWriter.cs
2238           Mono.Cecil/GenericContext.cs
2239           CodeGen/cecil.xml:
2240                 Clean the generic api. This is not stable yet.
2242 2006-01-24  Jb Evain  <jbevain@gmail.com>
2244         * Mono.Cecil/ArrayType.cs:
2245                 Bug reported by  Vladislav Spivak (spivak@mainsoft.com).
2246                 Fix a bug in array handling.
2247         * Mono.Cecil/ConstructorCollection.cs
2248           CodeGen/templates/IndexedCollectionImplem.cs:
2249                 Bug reported by Oleg Varchovsky (olegv@mainsoft.com).
2250                 Fix the lookup of constructors.
2252 2006-01-19  Jb Evain  <jbevain@gmail.com>
2254         * Mono.Cecil/AssemblyName.cs:
2255                 Fix computation of public key token.
2257 2006-01-18  Jb Evain  <jbevain@gmail.com>
2259         * Mono.Cecil.Cil/CodeWriter.cs
2260           Mono.Cecil.Metadata/MetadataToken.cs:
2261                 Add an use an ToUInt method and use it.
2262           CodeGen/templates/DebugHeader.cs
2263           Mono.Cecil.Binary/DebugHeader.cs:
2264                 Fix the size of the debug header.
2266         * Mono.Cecil/ModuleReference.cs
2267           Mono.Cecil/AssemblyName.cs
2268           Mono.Cecil/StructureReader.cs
2269           Mono.Cecil/IMetadataScope.cs:
2270                 Make IMetadataScope implement IMetadataTokenProvider.
2271         * Mono.Cecil/ReflectionWriter.cs:
2272                 Fix a typo when saving nested type refs.
2274 2006-01-17  Jb Evain  <jbevain@gmail.com>
2276         * Mono.Cecil/ArrayType.cs
2277           Mono.Cecil/ArrayDimension.cs
2278           Mono.Cecil/ReflectionWriter.cs:
2279                 End arrays support.
2281 2006-01-03  Jb Evain  <jbevain@gmail.com>
2283         * Mono.Cecil/GenericParameter.cs
2284           Mono.Cecil/ReflectionHelper.cs
2285           Mono.Cecil/ReflectionReader.cs
2286           Mono.Cecil/GenericContext.cs:
2287                 Work on generics.
2289 2005-12-31  Jb Evain  <jbevain@gmail.com>
2291         * Mono.Cecil/ReflectionHelper.cs:
2292                 Fix import of type specs.
2294 2005-12-30  Jb Evain  <jbevain@gmail.com>
2296         * CodeGen/templates/ImageReader.cs
2297           Mono.Cecil.Metadata/MetadataReader.cs
2298           Mono.Cecil.Binary/Image.cs
2299           Mono.Cecil.Binary/ImageReader.cs:
2300                 Add support to assemblies where the metadata is defined
2301                 outside of the text section. (c++/cli /safe for instance)
2303 2005-12-23  Jb Evain  <jbevain@gmail.com>
2305         * Mono.Cecil/AssemblyInfo.cs:
2306                 Version 0.2.2.2 devel.
2308         * Mono.Cecil/AssemblyInfo.cs:
2309                 Version 0.2 to be released.
2311         * Mono.Cecil/ReflectionWriter.cs:
2312                 IGenericInstance are typespecs as well.
2314         * Mono.Cecil/ArrayType.cs:
2315                 Add a single dimension in the default ctor.
2316         * Mono.Cecil/ReflectionReader.cs:
2317                 Don't manually add the default dimension as it's done
2318                 int the array type ctor.
2319         * Mono.Cecil/ReflectionHelper.cs:
2320                 Import type specs.
2322 2005-12-22  Jb Evain  <jbevain@gmail.com>
2324         * Mono.Cecil/ReflectionWriter:
2325                 Write pinvoke infos as well.
2327         * Mono.Cecil/ReflectionReader.cs:
2328                 Unsure that primitive value types are viewed as
2329                 value types.
2331         * CodeGen/templates/Section.cs
2332           CodeGen/templates/ImageReader.cs
2333           Mono.Cecil.Metadata/MetadataReader.cs
2334           Mono.Cecil.Binary/Image.cs
2335           Mono.Cecil.Binary/Section.cs
2336           Mono.Cecil.Binary/ImageReader.cs:
2337                 Simplify the way you read binary data whithin
2338                 high level layer.
2340         * Mono.Cecil.Cil/CodeReader.cs:
2341                 Make helper methods public static.
2342         * Mono.Cecil/ReflectionReader.cs:
2343                 Don't try to get the entry point method
2344                 if it don't point on a valid method RID.
2346         * CodeGen/templates/NamedCollectionImplem.cs
2347           Mono.Cecil/ExternTypeCollection.cs
2348           Mono.Cecil/TypeDefinitionCollection.cs
2349           Mono.Cecil/TypeReferenceCollection.cs:
2350                 Don't add existing values.
2352         * Mono.Cecil/ModuleDefinition.cs:
2353                 Protect import from null refs.
2355 2005-12-21  Jb Evain  <jbevain@gmail.com>
2357         * Mono.Cecil/StructureWriter.cs:
2358                 Don't increment pdb age. Not Cecil's job.
2360         * Mono.Cecil.Cil/ICilWorker.cs
2361           Mono.Cecil.Cil/CilWorker.cs:
2362                 Add a new replace method.
2364 2005-12-20  Jb Evain  <jbevain@gmail.com>
2366         * Mono.Cecil/StructureWriter.cs:
2367                 Ensure every assembly reference is processed.
2369         * Mono.Cecil/ReflectionHelper.cs:
2370                 Don't assume the cache is magically loaded.
2371                 Aka: most stupid bug of the year.
2373 2005-12-19  Jb Evain  <jbevain@gmail.com>
2375         * CodeGen/templates/DebugHeader.cs
2376           Mono.Cecil.Binary/DebugHeader.cs
2377           Mono.Cecil.Binary/DebugStoreType.cs:
2378                 New files to store debug header infos.
2379         * Mono.Cecil.dll.sources: updated
2380         * CodeGen/cecil.xml
2381           CodeGen/cecil-gen.rb
2382           Mono.Cecil/StructureWriter.cs
2383           Mono.Cecil.Binary/IBinaryVisitor.cs
2384           Mono.Cecil.Binary/ImageWriter.cs
2385           Mono.Cecil.Binary/Image.cs
2386           Mono.Cecil.Binary/ImageInitializer.cs
2387           Mono.Cecil.Binary/BaseImageVisitor.cs
2388           Mono.Cecil.Binary/ImageReader.cs
2389           Mono.Cecil.Metadata/MetadataWriter.cs:
2390                 Read and write debug header.
2392         * CodeGen/templates/ImageWriter.cs
2393           Mono.Cecil.Binary/ImageWriter.cs:
2394                 Revert revision 54409.
2396 2005-12-14  Jb Evain  <jbevain@gmail.com>
2398         * Mono.Cecil.Cil/ICilWorker.cs
2399           Mono.Cecil.Cil/CilWorker.cs:
2400                 Add a remove method.
2402         * CodeGen/templates/ImageWriter.cs
2403           Mono.Cecil.Binary/ImageWriter.cs:
2404                 Don't allocate potential big arrays here.
2406 2005-12-13  Jb Evain  <jbevain@gmail.com>
2408         * Mono.Cecil.Metadata/MetadataWriter.cs:
2409                 Set the correct version for .net 2 assemblies.
2410                 Correctly write embedded resources.
2411                 Fix #76963.
2413 2005-12-03  Jb Evain  <jbevain@gmail.com>
2415         * Mono.Cecil/MethodSpecification.cs:
2416                 Override the declaring type and the name property to
2417                 match the inner method.
2418         * Mono.Cecil/GenericInstanceType.cs:
2419                 Correctly set the FullName.
2420         * Mono.Cecil/GenericInstanceMethod.cs:
2421                 Style.
2423 2005-12-02  Jb Evain  <jbevain@gmail.com>
2425         * Mono.Cecil/TypeDefinition.cs:
2426                 Fix interface import. Patch by Thomas Gil.
2428 2005-11-24  Jb Evain  <jbevain@gmail.com>
2430         * CodeGen/cecil-gen.rb
2431           CodeGen/templates/MetadataTableReader.cs
2432           CodeGen/templates/PEFileHeader.cs
2433           CodeGen/templates/CLIHeader.cs
2434           CodeGen/templates/PEOptionalHeader.cs
2435           CodeGen/templates/Table.cs
2436           CodeGen/templates/MetadataRowReader.cs
2437           CodeGen/templates/OpCodes.cs
2438           CodeGen/templates/Section.cs
2439           CodeGen/templates/ImageReader.cs:
2440                 Update the codegen engine so that everyone can run it
2441                 without having to install a dependency (eruby).
2443         * Mono.Cecil.Metadata/Utilities.cs: re-codegenerated.
2445 2005-11-23  Jb Evain  <jbevain@gmail.com>
2447         * Mono.Cecil/IGenericArgumentProvider.cs
2448                 Style.
2449         * CodeGen/cecil.xml:
2450                 Mirror Martin's change in the codegen engine.
2452 2005-11-23  Martin Baulig  <martin@ximian.com>
2454         Generics API changes:
2455         TypeReference and MethodReference now contain a
2456         `GenericArguments' property (of type `GenericArgumentCollection')
2457         and `GenericParameters' is moved into TypeDefinition/MethodDefinition.
2459         * Mono.Cecil/IGenericArgumentProvider.cs: New file.
2460         (IGenericArgumentProvider): New public interface.
2462         * Mono.Cecil/IGenericArgumentCollection.cs
2463         (IGenericArgumentCollection.Container): Changed type from
2464         `IGenericInstance' -> `IGenericArgumentProvider'.
2466         * Mono.Cecil/IGenericInstance.cs
2467         (IGenericInstance.Arguments): Renamed to `GenericArguments'.
2469         * Mono.Cecil/ITypeReference.cs
2470         (ITypeReference): Implement `IGenericArgumentProvider' instead of
2471         `IGenericParameterProvider'.
2473         * Mono.Cecil/ITypeDefinition.cs
2474         (ITypeDefinition): Implement `IGenericParameterProvider'.
2476         * Mono.Cecil/IMethod.cs
2477         (IMethodReference): Implement `IGenericArgumentProvider' instead of
2478         `IGenericParameterProvider'.
2479         (IMethodDefinition): Implement `IGenericParameterProvider'.
2481         * Mono.Cecil/TypeReference.cs
2482         (TypeReference.GenericParameters): Removed.
2483         (TypeReference.GenericArguments): New public property.
2485         * Mono.Cecil/TypeDefinition.cs
2486         (TypeDefinition.GenericParameters): New public property.
2487         (TypeDefinition.OnGenericParameterAdded): If a generic parameter
2488         is added, also add it to the `GenericArguments'.
2490         * Mono.Cecil/MethodReference.cs
2491         (MethodReference.GenericParameters): Removed.
2492         (MethodReference.GenericArguments): New public property.
2494         * Mono.Cecil/MethodDefinition.cs
2495         (MethodDefinition.GenericParameters): New public property.
2496         (MethodDefinition.OnGenericParameterAdded): If a generic parameter
2497         is added, also add it to the `GenericArguments'.
2499         * Mono.Cecil/GenericInstanceType.cs
2500         (GenericInstanceType): Removed the `m_arguments' field; we now
2501         inherit the `GenericArguments' property from `TypeReference'.
2503         * Mono.Cecil/GenericInstanceMethod.cs
2504         (GenericInstanceMethod): Removed the `m_arguments' field; we now
2505         inherit the `GenericArguments' property from `MethodReference'.
2507         * Mono.Cecil/GenericContext.cs
2508         (GenericContext): We now operate on type/method references and not
2509         definitions.
2510         (GenericContext.Type): Changed type to `TypeReference'.
2511         (GenericContext.Method): Changed type to `MethodReference'.
2513 2005-11-23  Martin Baulig  <martin@ximian.com>
2515         * Mono.Cecil.Metadata/TokenType.cs: Added `GenericParam'.
2517         * Mono.Cecil.Metadata/Utilities.cs
2518         (GetMetadataToken): In `case CodedIndex.HasCustomAttribute', add
2519         `TokenType.GenericParam'.
2521 2005-11-22  Jb Evain  <jbevain@gmail.com>
2523         * Mono.Cecil/IMethodDefinitionCollection.cs
2524           Mono.Cecil/MethodDefinitionCollection.cs
2525           CodeGen/templates/IndexedCollectionImplem.cs
2526           CodeGen/templates/IIndexedCollection.cs:
2527                 Add a new search method.
2528         * CodeGen/templates/NamedCollectionImplem.cs
2529           Mono.Cecil/TypeReferenceCollection.cs
2530           Mono.Cecil/ExternTypeCollection.cs
2531           Mono.Cecil/TypeDefinitionCollection.cs:
2532                 Style.
2534 2005-11-13      Rodrigo B. de Oliveira <rodrigobamboo@gmail.com>
2535         * Mono.Cecil/ReflectionReader.cs
2536                 Fix for NRE when reading assemblies with a field initializer
2537                 pointing to a data section
2538                 (TestCases/Regression/OddInt64Initializer.dll).
2540 2005-11-11  Sebastien Pouliot  <sebastien@ximian.com>
2542         * Mono.Cecil.Metadata/MetadataWriter.cs
2543                 Add support for different strongname key size (between 384
2544                 and 16384 bits) as now supported in fx 2.0. Default is still
2545                 1024 bits.
2547 2005-11-10      Rodrigo B. de Oliveira <rodrigobamboo@gmail.com>
2548         * Mono.Cecil/CompactFrameworkCompatibility.cs
2549           Mono.Cecil/SecurityDeclarationReader.cs
2550           Mono.Cecil/TypeReferenceCollection.cs
2551           Mono.Cecil/ReflectionReader.cs
2552           Mono.Cecil/AssemblyFactory.cs
2553           Mono.Cecil/AssemblyName.cs
2554           Mono.Cecil/ExternTypeCollection.cs
2555           Mono.Cecil/ModuleDefinition.cs
2556           Mono.Cecil/TypeDefinitionCollection.cs
2557           CodeGen/templates/NamedCollectionImplem.cs
2558           CodeGen/templates/ImageReader.cs
2559           Mono.Cecil.Metadata/MetadataReader.cs
2560           Mono.Cecil.Metadata/MetadataWriter.cs
2561           Mono.Cecil.Metadata/CultureUtils.cs
2562           Mono.Xml/SecurityParser.cs
2563           Mono.Xml/SmallXmlParser.cs
2564           Mono.Cecil.Signatures/SignatureReader.cs
2565           Mono.Cecil.Binary/ImageReader.cs
2566           cecil.build
2567                 Implement support for compiling on the CompactFramework
2569 2005-11-08  Jb Evain  <jbevain@gmail.com>
2571         * Mono.Cecil/GenericInstanceType.cs
2572           Mono.Cecil/TypeReference.cs:
2573                 Fix a regression with 2.0 assemblies.
2575 2005-11-03  Jb Evain  <jbevain@gmail.com>
2577         * Mono.Cecil/CallSite.cs
2578           Mono.Cecil/ReflectionReader.cs
2579           Mono.Cecil/ICallSite.cs
2580           Mono.Cecil.Cil/CodeReader.cs
2581           Mono.Cecil.Cil/CodeWriter.cs
2582           Mono.Cecil.Signatures/SignatureReader.cs
2583           Mono.Cecil.dll.sources:
2584                 Implement support for calli opcodes reading.
2586 2005-11-01  Jb Evain  <jbevain@gmail.com>
2588         * Mono.Cecil/FunctionPointerType.cs
2589           Mono.Cecil/ReflectionReader.cs
2590           Mono.Cecil.Signatures/SignatureReader.cs:
2591                 Work on function pointers.
2593         * Mono.Cecil/AssemblyInfo.cs:
2594                 Increase Cecil SVN version.
2596         * Mono.Cecil/ArrayType.cs
2597           Mono.Cecil/MethodSpecification.cs
2598           Mono.Cecil/TypeSpecification.cs
2599           Mono.Cecil/IMethodSpecification.cs
2600           Mono.Cecil/GenericInstanceType.cs
2601           Mono.Cecil/IGenericInstanceType.cs
2602           Mono.Cecil/GenericInstanceMethod.cs
2603           Mono.Cecil/IModifierType.cs
2604           Mono.Cecil/IPinnedType.cs
2605           Mono.Cecil/ReferenceType.cs
2606           Mono.Cecil/IGenericInstanceMethod.cs
2607           Mono.Cecil/PinnedType.cs
2608           Mono.Cecil/PointerType.cs
2609           Mono.Cecil/IPointerType.cs
2610           Mono.Cecil/IReferenceType.cs
2611           Mono.Cecil/IArrayType.cs
2612           Mono.Cecil/ITypeSpecification.cs
2613           Mono.Cecil/Modifiers.cs
2614           Mono.Cecil.dll.sources:
2615                 Uniformize the specification model.
2617 2005-10-31  Jb Evain  <jbevain@gmail.com>
2619         * AUTHORS,
2620           NEWS,
2621           README,
2622           TODO,
2623           Mono.Cecil/AssemblyInfo.cs:
2624                 Cecil 0.1 release.
2626         * Mono.Cecil/ReflectionReader.cs:
2627                 Force value type property on known core types.
2629 2005-10-28  Jb Evain  <jbevain@gmail.com>
2631         * Mono.Cecil/TypeReference.cs
2632           Mono.Cecil/ReflectionReader.cs
2633           Mono.Cecil/TypeDefinition.cs
2634           Mono.Cecil/ModuleDefinition.cs
2635           Mono.Cecil/ReflectionWriter.cs:
2636                 Uniformize the API.
2638         * Mono.Cecil.Signatures/SignatureWriter.cs:
2639                 Correct a bug in strings encoding in custom attributes.
2641         * CodeGen/templates/ImageWriter.cs
2642           Mono.Cecil.Metadata/MetadataWriter.cs
2643           Mono.Cecil/StructureWriter.cs
2644           Mono.Cecil/ReflectionWriter.cs
2645           Mono.Cecil.Binary/ImageWriter.cs:
2646                 Implement a big of public key management,
2647                 here we reserve space for the strong name
2648                 signature if needed.
2650         * Mono.Cecil/StructureWriter.cs
2651           Mono.Cecil/StructureReader.cs:
2652                 Disable public key writing until
2653                 it is implemented.
2655         * Mono.Cecil/GenericParameter.cs
2656           Mono.Cecil/TypeReference.cs
2657           Mono.Cecil/MethodReference.cs:
2658                 Work on generics writing api.
2659         * Mono.Cecil/ReflectionReader.cs:
2660                 Fix a bug when defining a fresh assembly.
2662         * Mono.Cecil/GenericInstanceType.cs
2663           Mono.Cecil/ReflectionWriter.cs
2664           Mono.Cecil/IGenericParameterProvider.cs
2665           Mono.Cecil.Signatures/Var.cs
2666           Mono.Cecil.Signatures/MVar.cs
2667           Mono.Cecil.Signatures/SignatureReader.cs
2668           Mono.Cecil.Signatures/SignatureWriter.cs
2669           Mono.Cecil.Cil/CodeWriter.cs:
2670                 Work on generics writing.
2672 2005-10-27  Jb Evain  <jbevain@gmail.com>
2674         * Mono.Cecil.Cil/CodeReader.cs
2675           Mono.Cecil.Cil/CilWorker.cs
2676           Mono.Cecil.Cil/CodeWriter.cs
2677           Mono.Cecil.Cil/OpCode.cs:
2678                 Override op == and != on opcodes.
2680         * Mono.Cecil/FieldDefinition.cs
2681           Mono.Cecil/TypeDefinition.cs
2682           Mono.Cecil/MethodDefinition.cs
2683           Mono.Cecil/EventDefinition.cs
2684           Mono.Cecil/PropertyDefinition.cs:
2685                 Fix setters working on attributes.
2687         * Mono.Cecil.Cil/CodeWriter.cs:
2688                 Compute max stack before writing method.
2690         * Mono.Cecil/GenericContext.cs
2691           Mono.Cecil/ReflectionReader.cs
2692           Mono.Cecil.Signatures/SignatureReader.cs:
2693                 Work on generics support.
2695         * CodeGen/cecil.xml
2696           Mono.Cecil/ISecurityDeclarationCollection.cs
2697           Mono.Cecil/SecurityDeclarationCollection.cs:
2698                 Remove the security declaration from the codegen.
2700 2005-10-27  Sebastien Pouliot  <sebastien@ximian.com>
2702         * Mono.Cecil\SecurityDeclaration.cs
2703                 Copy the permission set when cloning.
2704         * Mono.Cecil\SecurityDeclarationCollection.cs
2705                 Ajusted to use an Hashtable, to Union permission sets on
2706                 the same action and to set/unset HasSecurity when needed.
2707         * Mono.Cecil\ModuleDefinition.cs:
2708                 Added TODO (remainder) for complete 2.0 format support.
2709         * Mono.Cecil\ReflectionWriter.cs:
2710                 Move MetadataToken finding outside the loop.
2711         * Mono.Cecil\ISecurityDeclarationCollection.cs:
2712                 Adjust interface.
2714 2005-10-27  Jb Evain  <jbevain@gmail.com>
2716         * Mono.Cecil/TypeDefinition.cs
2717           Mono.Cecil/MethodDefinition.cs:
2718                 Add generics parameters in visitor path.
2720         * Mono.Cecil/GenericParamAttributes.cs:
2721                 Add new constraints flags.
2723 2005-10-22  Jb Evain  <jbevain@gmail.com>
2725         * Mono.Cecil/GenericParameter.cs
2726           Mono.Cecil/ReflectionReader.cs
2727           Mono.Cecil/IGenericParameter.cs
2728           Mono.Cecil/AggressiveReflectionReader.cs
2729           Mono.Cecil/GenericContext.cs:
2730                 Support generic parameters constraints.
2732 2005-10-21  Jb Evain  <jbevain@gmail.com>
2734         * Mono.Cecil/FieldDefinition.cs
2735           Mono.Cecil/CustomAttribute.cs
2736           Mono.Cecil/TypeDefinition.cs
2737           Mono.Cecil/SecurityDeclaration.cs
2738           Mono.Cecil/MethodDefinition.cs
2739           Mono.Cecil/EventDefinition.cs
2740           Mono.Cecil/ParameterDefinition.cs
2741           Mono.Cecil/PropertyDefinition.cs:
2742                 Implement ICloneable.
2744         * Mono.Cecil/IAssemblyDefinition.cs:
2745                 Mirror changes on asm kind.
2746         * Mono.Cecil/StructureReader.cs:
2747                 Fix asm kind detection.
2749         * Mono.Cecil/StructureWriter.cs
2750           Mono.Cecil/ReflectionReader.cs
2751           Mono.Cecil/MethodDefinition.cs
2752           Mono.Cecil/ReflectionWriter.cs:
2753                 Fix regressions.
2754         * Mono.Cecil.Cil/MethodBody.cs:
2755                 Fix method cloning.
2757         * CodeGen/templates/MetadataTableReader.cs
2758           Mono.Cecil.Metadata/MetadataTableReader.cs
2759           Mono.Cecil.Metadata/MetadataReader.cs:
2760                 Add helpers for reading.
2762         * Mono.Cecil/ReflectionReader.cs
2763           Mono.Cecil/MethodDefinition.cs
2764           Mono.Cecil/AggressiveReflectionReader.cs
2765           Mono.Cecil/GenericContext.cs:
2766                 Working on generic parameters reading.
2767                 Still have troubles reading a 2.0 corlib.
2769         * Mono.Cecil/IHasMarshalSpec.cs:
2770                 API fix.
2772         * Mono.Cecil/ParameterDefinition.cs
2773           Mono.Cecil.Cil/VariableDefinition.cs:
2774                 Override ToString.
2776 2005-10-20  Jb Evain  <jbevain@gmail.com>
2778         * Mono.Cecil.Cil/CodeReader.cs
2779           Mono.Cecil.Cil/CodeWriter.cs
2780           Mono.Cecil.Cil/ICilWorker.cs
2781           Mono.Cecil.Cil/CilWorker.cs:
2782                 ShortInlineI operands are signed.
2783                 Spotted by Rodrigo B. de Oliveira.
2785         * CodeGen/templates/OpCodes.cs
2786           Mono.Cecil.Cil/OpCodes.cs:
2787                 Add 2.0 opcodes.
2789         * Mono.Cecil/StructureWriter.cs
2790           Mono.Cecil/AssemblyDefinition.cs
2791           Mono.Cecil/AssemblyFactory.cs
2792           Mono.Cecil/StructureReader.cs
2793           Mono.Cecil/ReflectionWriter.cs:
2794                 Handle the assembly kind in a smoothie way.
2796 2005-10-19  Sebastien Pouliot  <sebastien@ximian.com>
2798         * Mono.Cecil/AssemblyDefinition.cs: Added an override for ToString to
2799         ease debugging.
2800         * Mono.Cecil/ModuleDefinition.cs: Make SecurityDeclaration works with
2801         2.0 assemblies.
2802         * Mono.Cecil/ReflectionReader.cs: Modified BuildSecurityDeclaration
2803         to use the new SecurityDeclarationReader (supporting both formats).
2804         * Mono.Cecil/SecurityAction.cs: Removed actions that were "cutted" out
2805         of 2.0 final.
2806         * Mono.Cecil/SecurityDeclarationReader.cs: New. Handle both the 1.x
2807         and 2.0 formats for reading declarative security.
2809 2005-10-18  Jb Evain  <jbevain@gmail.com>
2811         * Mono.Cecil/GenericParameter.cs:
2812                 A little change before the fix.
2814         * Mono.Cecil/ReflectionHelper.cs
2815           Mono.Cecil/MethodDefinition.cs
2816           Mono.Cecil.Cil/MethodBody.cs:
2817                 Implement method cloning.
2819         * Mono.Cecil/ModuleReference.cs
2820           Mono.Cecil/FieldDefinition.cs
2821           Mono.Cecil/TypeReference.cs
2822           Mono.Cecil/ReflectionReader.cs
2823           Mono.Cecil/TypeDefinition.cs
2824           Mono.Cecil/EventDefinition.cs
2825           Mono.Cecil/ModuleDefinition.cs
2826           Mono.Cecil/FieldReference.cs
2827           Mono.Cecil/ReflectionWriter.cs
2828           Mono.Cecil/PropertyDefinition.cs
2829           Mono.Cecil/AssemblyFactory.cs:
2830                 Small API change.
2832         * Mono.Cecil.Cil/CodeReader.cs:
2833                 Fix variables names.
2835         TODO before 0.1:
2836                 Fix generic parameters,
2837                 generic writing,
2838                 constructor changes (with S.Type and SR.*Info)
2840 2005-10-14  Jb Evain  <jbevain@gmail.com>
2842         Work on generics support.
2844         * CodeGen/cecil.xml: new collections, coded indexes, opcodes.
2846         * Mono.Cecil/IGenericParameterCollection.cs
2847           Mono.Cecil/GenericParameterCollection.cs
2848           Mono.Cecil/IGenericArgumentCollection.cs
2849           Mono.Cecil/GenericArgumentCollection.cs:
2850                 Added new collections.
2852         * Mono.Cecil.Metadata/Utilities.cs: updated.
2853         * Mono.Cecil.Metadata/TokenType.cs: added MethodSpec.
2855         * Mono.Cecil/IGenericParameter.cs
2856           Mono.Cecil/GenericParameter.cs
2857           Mono.Cecil/IGenericParameterConstraints.cs
2858           Mono.Cecil/GenericParameterConstraints.cs
2859           Mono.Cecil/IGenericParameterProvider.cs
2860           Mono.Cecil/IGenericInstance.cs
2861           Mono.Cecil/IGenericInstanceType.cs
2862           Mono.Cecil/GenericInstanceType.cs
2863           Mono.Cecil/IGenericInstanceMethod.cs
2864           Mono.Cecil/GenericInstanceMethod.cs:
2865                 Generics API elements.
2867         * Mono.Cecil/IMethod.cs
2868           Mono.Cecil/MethodReference.cs
2869           Mono.Cecil/ITypeReference.cs
2870           Mono.Cecil/TypeReference.cs:
2871                 Implement IGenericParameterProvider
2873         * Mono.Cecil/ReflectionReader.cs
2874           Mono.Cecil/IReflectionVisitor.cs
2875           Mono.Cecil/BaseReflectionVisitor.cs
2876           Mono.Cecil/StructureReader.cs
2877           Mono.Cecil/AggressiveReflectionReader.cs
2878           Mono.Cecil/MemberReference.cs:
2879                 Support for the new generics elements.
2881         * Mono.Cecil.Signatures/Var.cs
2882           Mono.Cecil.Signatures/MVar.cs
2883           Mono.Cecil.Signatures/GenericInstSignature.cs
2884           Mono.Cecil.Signatures/GenericInst.cs:
2885                 Added file header.
2887         * Mono.Cecil.Signatures/SignatureReader.cs
2888           Mono.Cecil.Signatures/GenericInstSignature.cs
2889           Mono.Cecil.Signatures/MethodDefSig.cs
2890           Mono.Cecil.Signatures/GenericInst.cs
2891           Mono.Cecil.Signatures/MethodSpec.cs
2892           Mono.Cecil/MethodCallingConvention.cs
2893           Mono.Cecil.Cil/CodeReader.cs:
2894                 Added support for generic signatures.
2896         * Mono.Cecil.Cil/OpCodes.cs:
2897                 Add consrained. opcode.
2899         * Mono.Cecil.dll.sources:
2900                 Updated.
2902         Known problems: !!parameters
2904 2005-10-13  Jb Evain  <jbevain@gmail.com>
2906         * Mono.Cecil/ReflectionHelper.cs
2907           Mono.Cecil/FieldDefinition.cs
2908           Mono.Cecil/CustomAttribute.cs
2909           Mono.Cecil/MethodReturnType.cs
2910           Mono.Cecil/TypeDefinition.cs
2911           Mono.Cecil/SecurityDeclaration.cs
2912           Mono.Cecil/MethodDefinition.cs
2913           Mono.Cecil/EventDefinition.cs
2914           Mono.Cecil/ModuleDefinition.cs
2915           Mono.Cecil/ParameterDefinition.cs
2916           Mono.Cecil/IMethodReturnType.cs
2917           Mono.Cecil/PropertyDefinition.cs
2918           Mono.Cecil.Cil/MethodBody.cs:
2919                 Work on the import.
2920         * Mono.Cecil/ITypeParameterType.cs
2921           Mono.Cecil/TypeParameterType.cs:
2922                 Correct the interface.
2924 2005-10-12  Jb Evain  <jbevain@gmail.com>
2926         * Mono.Cecil/EventDefinition.cs
2927           Mono.Cecil/TypeDefinition.cs
2928           Mono.Cecil/ModuleDefinition.cs
2929           Mono.Cecil/ReflectionWriter.cs
2930           Mono.Cecil/PropertyDefinition.cs:
2931                 Small fixes.
2933 2005-09-16  Martin Baulig  <martin@ximian.com>
2935         Added generics support to Cecil.
2937         * Mono.Cecil/IGenericInstType.cs: New file.
2938         * Mono.Cecil/ITypeParameterType.cs: New file.
2939         * Mono.Cecil/IMethodTypeParameterType.cs: New file.
2941         * Mono.Cecil.Metadata/ElementType.cs
2942         (ElementType): Added `Var', `MVar' and `GenericInst'.
2944         * Mono.Cecil.Metadata/Utilities.cs
2945         (Utilities.GetMetadataToken): .NET 2.0 also uses TypeDef's in the
2946         MemberRefParent.
2948         * Mono.Cecil/GenericInstType.cs: New file.
2949         * Mono.Cecil/MethodTypeParameterType.cs: New file.
2950         * Mono.Cecil/TypeParameterType.cs: New file.
2952         * Mono.Cecil.Signatures/Var.cs: New file.
2953         * Mono.Cecil.Signatures/MVar.cs: New file.
2954         * Mono.Cecil.Signatures/GenericInst.cs: New file.
2955         * Mono.Cecil.Signatures/GenericInstSignature.cs: New file.
2957         * Mono.Cecil/ReflectionReader.cs
2958         (ReflectionReader.GetTypeRefFromSig): Add the new types.
2960         * Mono.Cecil.Signatures/SignatureReader.cs
2961         (SignatureReader.ReadType): Add the new types.
2963 2005-10-06  Jb Evain  <jbevain@gmail.com>
2965         * Mono.Cecil/ReflectionHelper.cs
2966           Mono.Cecil/ModuleDefinition.cs:
2967                 Fix a bug in type importing.
2969 2005-10-06  Jb Evain  <jbevain@gmail.com>
2971         * Hopefully, this is the last API change before the release of Cecil 0.1.
2972           Mono.Cecil.Implem has been moved to Mono.Cecil. The interfaces where
2973           very convenient for a reading API, it was far less convenient for a
2974           modification and writing one. The modification API still needs some work,
2975           but this should be easier this way.
2977 2005-09-27  Jb Evain  <jbevain@gmail.com>
2979         * Mono.Cecil.Metadata/MetadataReader.cs:
2980                 Fix resources reading.
2982         * Mono.Cecil.Implem/StructureWriter.cs:
2983                 Correctly set the offset of resources in the manifest.
2984         * Mono.Cecil.Implem/StructureFactories.cs:
2985                 Use correct overrides when creating assembly references.
2986         * Mono.Cecil.Implem/ReflectionFactories:
2987                 Correctly create type references.
2989 2005-09-06  Jb Evain  <jbevain@gmail.com>
2991         * Mono.Cecil/IReflectionFactories.cs
2992           Mono.Cecil.Implem/ReflectionFactories.cs:
2993                 Allow the creation of reference types for methods
2994                 parameters and return types.
2995         * Mono.Cecil.Cil/ICilWorker.cs
2996           Mono.Cecil.Implem/CilWorker.cs
2997           Mono.Cecil.Implem/CodeReader.cs
2998           Mono.Cecil.Implem/CodeWriter.cs:
2999                 Global fix on the handling of parameters in instructions.
3000         * Mono.Cecil.Implem/AssemblyName.cs:
3001                 Correcty write the version of an assembly fullname.
3002                 Spotted by Bruno Cabral.
3003         * Mono.Cecil.Implem/TypeDefinition.cs:
3004                 Set the declaring type of a nested type on add.
3005         * Mono.Cecil.Implem/CustomAttribute.cs
3006           Mono.Cecil.Implem/ReflectionReader.cs
3007           Mono.Cecil.Implem/ReflectionWriter.cs
3008           Mono.Cecil.Implem/AggressiveReflectionReader.cs
3009           Mono.Cecil.Signatures/CustomAttrib.cs
3010           Mono.Cecil.Signatures/SignatureReader.cs:
3011                 Global fix on custom attribute handling. Some
3012                 custom attribute (containing enums) blobs can not be
3013                 decoded.
3015 2005-09-04  Jb Evain  <jbevain@gmail.com>
3017         * Mono.Cecil.Implem/Instruction.cs:
3018                 Add the setter for IInstruction::OpCode.
3020 2005-09-02  Jb Evain  <jbevain@gmail.com>
3022         * Mono.Cecil/ICustomAttribute.cs
3023           Mono.Cecil.Implem/ReflectionFactories.cs
3024           Mono.Cecil.Implem/CustomAttribute.cs
3025           Mono.Cecil.Implem/ReflectionWriter.cs
3026           Mono.Cecil.Signatures/SignatureWriter.cs:
3027                 Prepare the work on custom attributes.
3028         * Mono.Cecil.Cil/IInstruction.cs:
3029                 Let users modify the content of an instruction.
3030         * Mono.Cecil.Implem/StructureReader.cs:
3031                 Do not try to read 2.0 assemblies.
3033 2005-08-28  Jb Evain  <jbevain@gmail.com>
3035         * Mono.Cecil.Metadata/MetadataWriter.cs:
3036                 Write the fields initial value back.
3037                 As of this revision, a round tripped mcs
3038                 can compile Cecil.
3040         * Mono.Cecil.Implem/ReflectionWriter.cs:
3041                 Emit things in proper order.
3042           Mono.Cecil.Implem/CodeReader.cs
3043           Mono.Cecil.Implem/CodeWriter.cs:
3044                 Correct bug with InlineVar opcodes.
3045                 Emit fat body if maxstack is set.
3047         * Mono.Cecil.Implem/CodeWriter.cs:
3048                 Handle null tokens.
3049           Mono.Cecil.Metadata/MetadataWriter.cs:
3050                 Allow one empty string in the userstring heap.
3052         * Mono.Cecil.Implem/ReflectionReader.cs
3053           Mono.Cecil.Implem/ReflectionWriter.cs:
3054                 Strings constant are unicode.
3056         * Mono.Cecil/LoadingType.cs
3057           Mono.Cecil/AssemblyFactory.cs
3058           CodeGen/templates/IndexedCollectionImplem.cs
3059           CodeGen/templates/LzIndexedCollectionImplem.cs
3060           CodeGen/cecil.xml
3061           Mono.Cecil.Implem/InterfaceCollection.cs
3062           Mono.Cecil.Implem/ILazyLoadable.cs
3063           Mono.Cecil.Implem/ExternTypeCollection.cs
3064           Mono.Cecil.Implem/SecurityDeclarationCollection.cs
3065           Mono.Cecil.Implem/ReflectionHelper.cs
3066           Mono.Cecil.Implem/OverrideCollection.cs
3067           Mono.Cecil.Implem/EventDefinitionCollection.cs
3068           Mono.Cecil.Implem/FieldDefinitionCollection.cs
3069           Mono.Cecil.Implem/PropertyDefinitionCollection.cs
3070           Mono.Cecil.Implem/CustomAttributeCollection.cs
3071           Mono.Cecil.Implem/MethodDefinition.cs
3072           Mono.Cecil.Implem/EventDefinition.cs
3073           Mono.Cecil.Implem/FieldDefinition.cs
3074           Mono.Cecil.Implem/ModuleDefinition.cs
3075           Mono.Cecil.Implem/ReflectionController.cs
3076           Mono.Cecil.Implem/TypeReference.cs
3077           Mono.Cecil.Implem/ReflectionReader.cs
3078           Mono.Cecil.Implem/ReflectionWriter.cs
3079           Mono.Cecil.Implem/AssemblyDefinition.cs
3080           Mono.Cecil.Implem/TypeDefinition.cs
3081           Mono.Cecil.Implem/AggressiveReflectionReader.cs
3082           Mono.Cecil.Implem/MethodDefinitionCollection.cs
3083           Mono.Cecil.Implem/LazyReflectionReader.cs
3084           Mono.Cecil.Implem/ParameterDefinition.cs
3085           Mono.Cecil.Implem/PropertyDefinition.cs
3086           Mono.Cecil.Implem/ConstructorCollection.cs
3087           Mono.Cecil.Signatures/SignatureWriter.cs:
3088                 Get rid of the complexity introduced by the
3089                 internal lazy loading.
3091         * Mono.Cecil.Implem/EventDefinition.cs
3092           Mono.Cecil.Implem/PropertyDefinition.cs:
3093                 Fix the behavior of .ToString ().
3095 2005-08-27  Jb Evain  <jbevain@gmail.com>
3097         * Mono.Cecil.Implem/ReflectionWriter.cs:
3098                 Write back custom attributes of modules and assemblies
3099                 as well as their security declaration.
3100         * Mono.Cecil.Implem/CodeWriter.cs:
3101                 Fix branches computation.
3102           Mono.Cecil.Signatures/SignatureReader.cs:
3103                 Disable custom attribute reading cache.
3105         * CodeGen/templates/ImageWriter.cs
3106           Mono.Cecil.Binary/ImageWriter.cs:
3107                 Compute relocations.
3108         * Mono.Cecil.Implem/ReflectionFactories.cs:
3109                 Blah.
3111         * Mono.Cecil.Implem/TablesComparer.cs
3112           Mono.Cecil.Implem/ReflectionWriter.cs:
3113                 Sort all tables that need to be sorted.
3115         * Mono.Cecil.Implem/CodeReader.cs:
3116                 Oops. Add fat exception handlers to the method body.
3118         * CodeGen/templates/ImageWriter.cs
3119           Mono.Cecil.Implem/StructureWriter.cs
3120           Mono.Cecil.Implem/ReflectionWriter.cs
3121           Mono.Cecil.Implem/TypeDefinition.cs
3122           Mono.Cecil.Binary/ImageWriter.cs:
3123                 Correct a few bugs: relocations now works.
3124                 Encode enums in custom attributes.
3125                 Compute memberrefs tokens before visitings types.
3127         * Mono.Cecil.Implem/FieldDefinition.cs:
3128                 Correct a bug that causes null ref due to
3129                 the new api.
3130         * Mono.Cecil.Signatures/SignatureWriter.cs:
3131                 Implement a very little more custom attributes
3132                 writing.
3134 2005-08-26  Jb Evain  <jbevain@gmail.com>
3136         * Mono.Cecil/IMemberReferenceCollection.cs
3137           Mono.Cecil/IReflectionVisitor.cs
3138           Mono.Cecil/IReflectionFactories.cs
3139           Mono.Cecil/BaseReflectionVisitor.cs
3140           Mono.Cecil/IModuleDefinition.cs
3141           CodeGen/cecil.xml
3142           Mono.Cecil.Implem/ReflectionFactories.cs
3143           Mono.Cecil.Implem/ReflectionHelper.cs
3144           Mono.Cecil.Implem/ModuleDefinition.cs
3145           Mono.Cecil.Implem/MemberReferenceCollection.cs
3146           Mono.Cecil.Implem/ReflectionReader.cs
3147           Mono.Cecil.Implem/ReflectionWriter.cs
3148           Mono.Cecil.Implem/ParameterDefinition.cs:
3149                 Handle member references nicely.
3151         * Mono.Cecil/ICustomAttributeProvider.cs
3152           Mono.Cecil/IModuleDefinitionCollection.cs
3153           Mono.Cecil/IReflectionStructureFactories.cs
3154           Mono.Cecil/IInterfaceCollection.cs
3155           Mono.Cecil/IMethod.cs
3156           Mono.Cecil/IReflectionFactories.cs
3157           Mono.Cecil/INestedTypeCollection.cs
3158           Mono.Cecil/ITypeReferenceCollection.cs
3159           Mono.Cecil/IExternTypeCollection.cs
3160           Mono.Cecil/IAssemblyDefinition.cs
3161           Mono.Cecil/ITypeDefinition.cs
3162           Mono.Cecil/ICustomAttribute.cs
3163           Mono.Cecil/IArrayDimensionCollection.cs
3164           Mono.Cecil/TypeFactory.cs
3165           Mono.Cecil/IConstructorCollection.cs
3166           Mono.Cecil/IHasSecurity.cs
3167           Mono.Cecil/IMethodDefinitionCollection.cs
3168           Mono.Cecil/IPropertyDefinitionCollection.cs
3169           Mono.Cecil/IAssemblyNameReferenceCollection.cs
3170           Mono.Cecil/IModuleReferenceCollection.cs
3171           Mono.Cecil/IArrayType.cs
3172           Mono.Cecil/ISecurityDeclarationCollection.cs
3173           Mono.Cecil/IModuleDefinition.cs
3174           Mono.Cecil/IResourceCollection.cs
3175           Mono.Cecil/IParameterDefinitionCollection.cs
3176           Mono.Cecil/IEventDefinitionCollection.cs
3177           Mono.Cecil/ITypeDefinitionCollection.cs
3178           Mono.Cecil/IFieldDefinitionCollection.cs
3179           Mono.Cecil/ICustomAttributeCollection.cs
3180           Mono.Cecil/ISecurityDeclaration.cs
3181           Mono.Cecil/IOverrideCollection.cs
3182           Mono.Cecil/ITypeReference.cs
3183           Mono.Cecil.Cil/IExceptionHandlerCollection.cs
3184           Mono.Cecil.Cil/IVariableDefinitionCollection.cs
3185           Mono.Cecil.Cil/IInstructionCollection.cs
3186           Mono.Cecil.Cil/IMethodBody.cs
3187           CodeGen/cecil-gen-types.rb
3188           CodeGen/templates/ImageWriter.cs
3189           CodeGen/templates/IndexedCollectionImplem.cs
3190           CodeGen/templates/NamedCollectionImplem.cs
3191           CodeGen/templates/IIndexedCollection.cs
3192           CodeGen/templates/LzIndexedCollectionImplem.cs
3193           CodeGen/templates/INamedCollection.cs
3194           CodeGen/templates/LzNamedCollectionImplem.cs
3195           Mono.Cecil.Implem/InterfaceCollection.cs
3196           Mono.Cecil.Implem/AssemblyLinkedResource.cs
3197           Mono.Cecil.Implem/ModuleReferenceCollection.cs
3198           Mono.Cecil.Implem/ExternTypeCollection.cs
3199           Mono.Cecil.Implem/SecurityDeclarationCollection.cs
3200           Mono.Cecil.Implem/ReflectionFactories.cs
3201           Mono.Cecil.Implem/ReflectionHelper.cs
3202           Mono.Cecil.Implem/OverrideCollection.cs
3203           Mono.Cecil.Implem/ArrayDimensionCollection.cs
3204           Mono.Cecil.Implem/EmbeddedResource.cs
3205           Mono.Cecil.Implem/CilWorker.cs
3206           Mono.Cecil.Implem/ParameterDefinitionCollection.cs
3207           Mono.Cecil.Implem/EventDefinitionCollection.cs
3208           Mono.Cecil.Implem/FieldDefinitionCollection.cs
3209           Mono.Cecil.Implem/PropertyDefinitionCollection.cs
3210           Mono.Cecil.Implem/ModuleDefinitionCollection.cs
3211           Mono.Cecil.Implem/CustomAttributeCollection.cs
3212           Mono.Cecil.Implem/VariableDefinitionCollection.cs
3213           Mono.Cecil.Implem/TypeReferenceCollection.cs
3214           Mono.Cecil.Implem/MemberDefinition.cs
3215           Mono.Cecil.Implem/StructureReader.cs
3216           Mono.Cecil.Implem/FunctionPointerType.cs
3217           Mono.Cecil.Implem/MethodDefinition.cs
3218           Mono.Cecil.Implem/EventDefinition.cs
3219           Mono.Cecil.Implem/FieldDefinition.cs
3220           Mono.Cecil.Implem/InstructionCollection.cs
3221           Mono.Cecil.Implem/VariableDefinition.cs
3222           Mono.Cecil.Implem/CustomAttribute.cs
3223           Mono.Cecil.Implem/ModuleDefinition.cs
3224           Mono.Cecil.Implem/MethodReference.cs
3225           Mono.Cecil.Implem/TypeReference.cs
3226           Mono.Cecil.Implem/StructureFactories.cs
3227           Mono.Cecil.Implem/TypeDefinitionCollection.cs
3228           Mono.Cecil.Implem/AssemblyNameReferenceCollection.cs
3229           Mono.Cecil.Implem/ReflectionReader.cs
3230           Mono.Cecil.Implem/MethodReturnType.cs
3231           Mono.Cecil.Implem/MemberReference.cs
3232           Mono.Cecil.Implem/ReflectionWriter.cs
3233           Mono.Cecil.Implem/Resource.cs
3234           Mono.Cecil.Implem/AssemblyDefinition.cs
3235           Mono.Cecil.Implem/TypeDefinition.cs
3236           Mono.Cecil.Implem/AggressiveReflectionReader.cs
3237           Mono.Cecil.Implem/CodeReader.cs
3238           Mono.Cecil.Implem/FieldReference.cs
3239           Mono.Cecil.Implem/MethodDefinitionCollection.cs
3240           Mono.Cecil.Implem/LazyReflectionReader.cs
3241           Mono.Cecil.Implem/LinkedResource.cs
3242           Mono.Cecil.Implem/ParameterDefinition.cs
3243           Mono.Cecil.Implem/PropertyDefinition.cs
3244           Mono.Cecil.Implem/MethodBody.cs
3245           Mono.Cecil.Implem/NestedTypeCollection.cs
3246           Mono.Cecil.Implem/ConstructorCollection.cs
3247           Mono.Cecil.Implem/ResourceCollection.cs
3248           Mono.Cecil.Implem/ExceptionHandlerCollection.cs
3249           Mono.Cecil.Binary/ImageWriter.cs
3250           Mono.Cecil.Binary/ImageReader.cs:
3251                 Fix the writing API before the API freeze. Few things
3252                 are not implemented, see todos.
3254 2005-08-20  Jb Evain  <jbevain@gmail.com>
3256         * Mono.Cecil/ITypeDefinition.cs
3257           Mono.Cecil/IModuleDefinition.cs
3258           Mono.Cecil/ITypeReference.cs
3259           Mono.Cecil.Implem/ReflectionHelper.cs
3260           Mono.Cecil.Implem/ModuleDefinition.cs
3261           Mono.Cecil.Implem/TypeReference.cs
3262           Mono.Cecil.Implem/ReflectionReader.cs
3263           Mono.Cecil.Implem/ReflectionWriter.cs
3264           Mono.Cecil.Implem/TypeDefinition.cs:
3265                 Add way to know if a type reference is a
3266                 value type or not. This hack saved my life.
3268         * Mono.Cecil.Implem/CodeWriter.cs:
3269                 Fix typespec emitting.
3271         * Mono.Cecil/IReflectionVisitor.cs
3272           Mono.Cecil/IMethod.cs
3273           Mono.Cecil/BaseReflectionVisitor.cs
3274           Mono.Cecil/ITypeDefinition.cs
3275           Mono.Cecil/IConstructorCollection.cs
3276           CodeGen/cecil.xml
3277           Mono.Cecil.Implem/MethodDefinition.cs
3278           Mono.Cecil.Implem/ReflectionReader.cs
3279           Mono.Cecil.Implem/ReflectionWriter.cs
3280           Mono.Cecil.Implem/TypeDefinition.cs
3281           Mono.Cecil.Implem/ConstructorCollection.cs:
3282                 Support constructors decently.
3284         * CodeGen/templates/Utilities.cs
3285           Mono.Cecil.Metadata/Utilities.cs:
3286                 Return a null token if the rid of a md token
3287                 is 0. Fix the crash when Mono try to read
3288                 assemblies emitted by Cecil.
3290 2005-08-19  Jb Evain  <jbevain@gmail.com>
3292         * Mono.Cecil.Implem/ReflectionWriter.cs:
3293                 Set the RVA of a method only if it can
3294                 have a body.
3295         * Mono.Cecil.Signatures/SignatureReader.cs:
3296                 Remove debugging stuff.
3298         * Mono.Cecil.Implem/ReflectionReader.cs
3299           Mono.Cecil.Signatures/SignatureReader.cs:
3300                 Fix custom marshaller reading.
3302         * CodeGen/templates/NamedCollectionImplem.cs
3303           CodeGen/templates/LzNamedCollectionImplem.cs
3304           Mono.Cecil.Implem/ExternTypeCollection.cs
3305           Mono.Cecil.Implem/TypeReferenceCollection.cs
3306           Mono.Cecil.Implem/TypeDefinitionCollection.cs
3307           Mono.Cecil.Implem/ReflectionReader.cs
3308           Mono.Cecil.Implem/ReflectionWriter.cs
3309           Mono.Cecil.Implem/TablesComparer.cs
3310           Mono.Cecil.Implem/Constants.cs
3311           Mono.Cecil.Signatures/SignatureWriter.cs:
3312                 Correct bugs in type* tables generations.
3314         * Mono.Cecil/IModuleDefinitionCollection.cs
3315           Mono.Cecil/IInterfaceCollection.cs
3316           Mono.Cecil/INestedTypeCollection.cs
3317           Mono.Cecil/ITypeReferenceCollection.cs
3318           Mono.Cecil/IExternTypeCollection.cs
3319           Mono.Cecil/IArrayDimensionCollection.cs
3320           Mono.Cecil/IMethodDefinitionCollection.cs
3321           Mono.Cecil/IPropertyDefinitionCollection.cs
3322           Mono.Cecil/IAssemblyNameReferenceCollection.cs
3323           Mono.Cecil/IModuleReferenceCollection.cs
3324           Mono.Cecil/ISecurityDeclarationCollection.cs
3325           Mono.Cecil/IResourceCollection.cs
3326           Mono.Cecil/IParameterDefinitionCollection.cs
3327           Mono.Cecil/IEventDefinitionCollection.cs
3328           Mono.Cecil/ITypeDefinitionCollection.cs
3329           Mono.Cecil/IFieldDefinitionCollection.cs
3330           Mono.Cecil/ICustomAttributeCollection.cs
3331           Mono.Cecil/IOverrideCollection.cs
3332           Mono.Cecil.Cil/IExceptionHandlerCollection.cs
3333           Mono.Cecil.Cil/IVariableDefinitionCollection.cs
3334           Mono.Cecil.Cil/IInstructionCollection.cs
3335           CodeGen/templates/IIndexedCollection.cs
3336           CodeGen/templates/INamedCollection.cs
3337           Mono.Cecil.Implem/ReflectionWriter.cs
3338           Mono.Cecil.Binary/SubSystem.cs
3339           Mono.Cecil.Signatures/SignatureWriter.cs:
3340                 On going change to the writing api. Not setter allowed on
3341                 collections. Work on custom attribute encoding. Remove
3342                 the Flags on Subsystem.
3344         * Mono.Cecil.dll.sources
3345           Mono.Cecil.Implem/ReflectionHelper.cs
3346           Mono.Cecil.Implem/TypeReference.cs
3347           Mono.Cecil.Implem/ReflectionReader.cs
3348           Mono.Cecil.Implem/ReflectionWriter.cs
3349           Mono.Cecil.Implem/TypeDefinition.cs
3350           Mono.Cecil.Implem/TablesComparer.cs
3351           Mono.Cecil.Signatures/SignatureReader.cs:
3352                 Fix the build.
3353                 Stop to prefix typeref by the scope.
3354                 Cecil will have buggy behaviour if it have to handle
3355                 two typeref with the same namespace+name, but for the
3356                 moment, let it like that.
3358         * Mono.Cecil/INestedTypeCollection.cs
3359           Mono.Cecil/IModuleReference.cs
3360           Mono.Cecil/ITypeReferenceCollection.cs
3361           Mono.Cecil/IAssemblyName.cs
3362           Mono.Cecil/IExternTypeCollection.cs
3363           Mono.Cecil/IMetadataScope.cs
3364           Mono.Cecil/IModuleDefinition.cs
3365           Mono.Cecil/IResourceCollection.cs
3366           Mono.Cecil/ITypeDefinitionCollection.cs
3367           CodeGen/templates/NamedCollectionImplem.cs
3368           CodeGen/templates/INamedCollection.cs
3369           CodeGen/templates/LzNamedCollectionImplem.cs
3370           CodeGen/cecil.xml
3371           Mono.Cecil.Metadata/RowCollection.cs
3372           Mono.Cecil.Metadata/MetadataWriter.cs
3373           Mono.Cecil.Metadata/MetadataToken.cs
3374           Mono.Cecil.Implem/TablesComparer.cs
3375           Mono.Cecil.Implem/ExternTypeCollection.cs
3376           Mono.Cecil.Implem/ReflectionHelper.cs
3377           Mono.Cecil.Implem/TypeReferenceCollection.cs
3378           Mono.Cecil.Implem/StructureReader.cs
3379           Mono.Cecil.Implem/StructureWriter.cs
3380           Mono.Cecil.Implem/ModuleDefinition.cs
3381           Mono.Cecil.Implem/TypeReference.cs
3382           Mono.Cecil.Implem/TypeDefinitionCollection.cs
3383           Mono.Cecil.Implem/ReflectionReader.cs
3384           Mono.Cecil.Implem/ReflectionWriter.cs
3385           Mono.Cecil.Implem/TypeDefinition.cs
3386           Mono.Cecil.Implem/CodeReader.cs
3387           Mono.Cecil.Implem/CodeWriter.cs
3388           Mono.Cecil.Implem/Constants.cs
3389           Mono.Cecil.Implem/NestedTypeCollection.cs
3390           Mono.Cecil.Implem/ResourceCollection.cs
3391           Mono.Cecil.Signatures/SignatureReader.cs
3392           Mono.Cecil.Signatures/SignatureWriter.cs:
3393                 Correct some part of the API.
3394                 Correct tons of bugs in the writing layer.
3396 2005-08-17  Jb Evain  <jbevain@gmail.com>
3398         * Mono.Cecil/IField.cs
3399           CodeGen/cecil.xml
3400           Mono.Cecil.Metadata/MetadataReader.cs
3401           Mono.Cecil.Metadata/MetadataWriter.cs
3402           Mono.Cecil.Implem/ReflectionHelper.cs
3403           Mono.Cecil.Implem/StructureReader.cs
3404           Mono.Cecil.Implem/FieldDefinition.cs
3405           Mono.Cecil.Implem/BaseReflectionReader.cs
3406           Mono.Cecil.Implem/ReflectionReader.cs
3407           Mono.Cecil.Implem/ReflectionWriter.cs
3408           Mono.Cecil.Implem/TypeDefinition.cs
3409           Mono.Cecil.Implem/AggressiveReflectionReader.cs
3410           Mono.Cecil.Implem/CodeReader.cs
3411           Mono.Cecil.Implem/IDetailReader.cs
3412           Mono.Cecil.Implem/CodeWriter.cs
3413           Mono.Cecil.Implem/LazyReflectionReader.cs
3414           Mono.Cecil.Signatures/SignatureWriter.cs:
3415                 Work on the working layer. Implement field initial
3416                 data. Bugs.
3418 2005-08-16  Jb Evain  <jbevain@gmail.com>
3420         * Mono.Cecil.Implem/ReflectionWriter.cs
3421           Mono.Cecil.Implem/CodeWriter.cs
3422           Mono.Cecil.Signatures/SignatureReader.cs:
3423                 Implement local var sig writing.
3425         * Mono.Cecil.Implem/ArrayType.cs:
3426                 Style.
3427           Mono.Cecil.Implem/ParameterDefinition.cs:
3428                 Correct a bug in module obtention.
3429           Mono.Cecil.Signatures/SignatureReader.cs:
3430                 Correct a bug in arrays's signature reading.
3432         * Mono.Cecil.dll.sources
3433           Mono.Cecil/IReflectionVisitor.cs
3434           Mono.Cecil/IModuleDefinitionCollection.cs
3435           Mono.Cecil/IInterfaceCollection.cs
3436           Mono.Cecil/IProperty.cs
3437           Mono.Cecil/BaseReflectionVisitor.cs
3438           Mono.Cecil/INestedTypeCollection.cs
3439           Mono.Cecil/ITypeReferenceCollection.cs
3440           Mono.Cecil/IParameter.cs
3441           Mono.Cecil/IExternTypeCollection.cs
3442           Mono.Cecil/IField.cs
3443           Mono.Cecil/IArrayDimensionCollection.cs
3444           Mono.Cecil/IMethodDefinitionCollection.cs
3445           Mono.Cecil/IPropertyDefinitionCollection.cs
3446           Mono.Cecil/IAssemblyNameReferenceCollection.cs
3447           Mono.Cecil/IModuleReferenceCollection.cs
3448           Mono.Cecil/IHasConstant.cs
3449           Mono.Cecil/ISecurityDeclarationCollection.cs
3450           Mono.Cecil/IMetadataTokenProvider.cs
3451           Mono.Cecil/IModuleDefinition.cs
3452           Mono.Cecil/BaseStructureVisitor.cs
3453           Mono.Cecil/IResourceCollection.cs
3454           Mono.Cecil/IParameterDefinitionCollection.cs
3455           Mono.Cecil/IEventDefinitionCollection.cs
3456           Mono.Cecil/ITypeDefinitionCollection.cs
3457           Mono.Cecil/IFieldDefinitionCollection.cs
3458           Mono.Cecil/ICustomAttributeCollection.cs
3459           Mono.Cecil/IOverrideCollection.cs
3460           Mono.Cecil.Cil/IExceptionHandlerCollection.cs
3461           Mono.Cecil.Cil/IVariableDefinitionCollection.cs
3462           Mono.Cecil.Cil/IInstructionCollection.cs
3463           CodeGen/cecil-gen.rb
3464           CodeGen/cecil-gen-types.rb
3465           CodeGen/templates/IndexedCollectionImplem.cs
3466           CodeGen/templates/NamedCollectionImplem.cs
3467           CodeGen/templates/IIndexedCollection.cs
3468           CodeGen/templates/LzIndexedCollectionImplem.cs
3469           CodeGen/templates/INamedCollection.cs
3470           CodeGen/templates/LzNamedCollectionImplem.cs
3471           CodeGen/cecil.xml
3472           Mono.Cecil.Metadata/MetadataRowWriter.cs
3473           Mono.Cecil.Metadata/MetadataWriter.cs
3474           Mono.Cecil.Implem/InterfaceCollection.cs
3475           Mono.Cecil.Implem/ModuleReferenceCollection.cs
3476           Mono.Cecil.Implem/ExternTypeCollection.cs
3477           Mono.Cecil.Implem/SecurityDeclarationCollection.cs
3478           Mono.Cecil.Implem/OverrideCollection.cs
3479           Mono.Cecil.Implem/ParameterDefinitionCollection.cs
3480           Mono.Cecil.Implem/EventDefinitionCollection.cs
3481           Mono.Cecil.Implem/FieldDefinitionCollection.cs
3482           Mono.Cecil.Implem/PropertyDefinitionCollection.cs
3483           Mono.Cecil.Implem/ModuleDefinitionCollection.cs
3484           Mono.Cecil.Implem/CustomAttributeCollection.cs
3485           Mono.Cecil.Implem/VariableDefinitionCollection.cs
3486           Mono.Cecil.Implem/TypeReferenceCollection.cs
3487           Mono.Cecil.Implem/StructureReader.cs
3488           Mono.Cecil.Implem/MethodDefinition.cs
3489           Mono.Cecil.Implem/EventDefinition.cs
3490           Mono.Cecil.Implem/FieldDefinition.cs
3491           Mono.Cecil.Implem/InstructionCollection.cs
3492           Mono.Cecil.Implem/StructureWriter.cs
3493           Mono.Cecil.Implem/ModuleDefinition.cs
3494           Mono.Cecil.Implem/MethodReference.cs
3495           Mono.Cecil.Implem/TypeReference.cs
3496           Mono.Cecil.Implem/TypeDefinitionCollection.cs
3497           Mono.Cecil.Implem/AssemblyNameReferenceCollection.cs
3498           Mono.Cecil.Implem/ReflectionReader.cs
3499           Mono.Cecil.Implem/MethodReturnType.cs
3500           Mono.Cecil.Implem/ReflectionWriter.cs
3501           Mono.Cecil.Implem/AssemblyDefinition.cs
3502           Mono.Cecil.Implem/TypeDefinition.cs
3503           Mono.Cecil.Implem/AggressiveReflectionReader.cs
3504           Mono.Cecil.Implem/MethodDefinitionCollection.cs
3505           Mono.Cecil.Implem/CodeWriter.cs
3506           Mono.Cecil.Implem/LazyReflectionReader.cs
3507           Mono.Cecil.Implem/ParameterDefinition.cs
3508           Mono.Cecil.Implem/PropertyDefinition.cs
3509           Mono.Cecil.Implem/NestedTypeCollection.cs
3510           Mono.Cecil.Implem/ResourceCollection.cs
3511           Mono.Cecil.Implem/ExceptionHandlerCollection.cs
3512           Mono.Cecil.Signatures/SignatureReader.cs
3513           Mono.Cecil.Signatures/SignatureWriter.cs:
3514                 Working on the writing layer.
3515                 Begin to fix brokens part of the API.
3517 2005-08-15  Jb Evain  <jbevain@gmail.com>
3519         * Mono.Cecil/ITypeDefinition.cs
3520           CodeGen/templates/MetadataTableReader.cs
3521           CodeGen/templates/PEFileHeader.cs
3522           CodeGen/templates/ImageWriter.cs
3523           CodeGen/templates/CLIHeader.cs
3524           CodeGen/templates/PEOptionalHeader.cs
3525           CodeGen/templates/MetadataTableWriter.cs
3526           CodeGen/templates/Table.cs
3527           CodeGen/templates/MetadataRowReader.cs
3528           CodeGen/templates/BaseMetadataVisitor.cs
3529           CodeGen/templates/Section.cs
3530           CodeGen/templates/MetadataRowWriter.cs
3531           CodeGen/templates/ImageReader.cs
3532           CodeGen/templates/IMetadataVisitor.cs
3533           Mono.Cecil.Metadata/Assembly.cs
3534           Mono.Cecil.Metadata/PropertyMap.cs
3535           Mono.Cecil.Metadata/InterfaceImpl.cs
3536           Mono.Cecil.Metadata/MetadataInitializer.cs
3537           Mono.Cecil.Metadata/Constant.cs
3538           Mono.Cecil.Metadata/MethodSpec.cs
3539           Mono.Cecil.Metadata/BaseMetadataVisitor.cs
3540           Mono.Cecil.Metadata/DeclSecurity.cs
3541           Mono.Cecil.Metadata/TypeDef.cs
3542           Mono.Cecil.Metadata/MethodImpl.cs
3543           Mono.Cecil.Metadata/GenericParamConstraint.cs
3544           Mono.Cecil.Metadata/NestedClass.cs
3545           Mono.Cecil.Metadata/MetadataTableReader.cs
3546           Mono.Cecil.Metadata/AssemblyRefProcessor.cs
3547           Mono.Cecil.Metadata/AssemblyRef.cs
3548           Mono.Cecil.Metadata/AssemblyRefOS.cs
3549           Mono.Cecil.Metadata/Method.cs
3550           Mono.Cecil.Metadata/RowCollection.cs
3551           Mono.Cecil.Metadata/MetadataTableWriter.cs
3552           Mono.Cecil.Metadata/StringsHeap.cs
3553           Mono.Cecil.Metadata/MetadataRowReader.cs
3554           Mono.Cecil.Metadata/ExportedType.cs
3555           Mono.Cecil.Metadata/CustomAttribute.cs
3556           Mono.Cecil.Metadata/Param.cs
3557           Mono.Cecil.Metadata/MetadataReader.cs
3558           Mono.Cecil.Metadata/ClassLayout.cs
3559           Mono.Cecil.Metadata/MetadataRowWriter.cs
3560           Mono.Cecil.Metadata/BlobHeap.cs
3561           Mono.Cecil.Metadata/MetadataWriter.cs
3562           Mono.Cecil.Metadata/AssemblyOS.cs
3563           Mono.Cecil.Metadata/ModuleRef.cs
3564           Mono.Cecil.Metadata/MetadataRoot.cs
3565           Mono.Cecil.Metadata/UserStringsHeap.cs
3566           Mono.Cecil.Metadata/FieldMarshal.cs
3567           Mono.Cecil.Metadata/GenericParam.cs
3568           Mono.Cecil.Metadata/ImplMap.cs
3569           Mono.Cecil.Metadata/TableCollection.cs
3570           Mono.Cecil.Metadata/TablesHeap.cs
3571           Mono.Cecil.Metadata/MetadataStreamCollection.cs
3572           Mono.Cecil.Metadata/ManifestResource.cs
3573           Mono.Cecil.Metadata/TypeRef.cs
3574           Mono.Cecil.Metadata/AssemblyProcessor.cs
3575           Mono.Cecil.Metadata/EventMap.cs
3576           Mono.Cecil.Metadata/File.cs
3577           Mono.Cecil.Metadata/Event.cs
3578           Mono.Cecil.Metadata/FieldLayout.cs
3579           Mono.Cecil.Metadata/Field.cs
3580           Mono.Cecil.Metadata/Property.cs
3581           Mono.Cecil.Metadata/Module.cs
3582           Mono.Cecil.Metadata/GuidHeap.cs
3583           Mono.Cecil.Metadata/MethodSemantics.cs
3584           Mono.Cecil.Metadata/StandAloneSig.cs
3585           Mono.Cecil.Metadata/MetadataStream.cs
3586           Mono.Cecil.Metadata/FieldRVA.cs
3587           Mono.Cecil.Metadata/TypeSpec.cs
3588           Mono.Cecil.Metadata/MemberRef.cs
3589           Mono.Cecil.Metadata/IMetadataVisitor.cs
3590           Mono.Cecil.Implem/TypeDefinition.cs
3591           Mono.Cecil.Signatures/MethodRefSig.cs
3592           Mono.Cecil.Signatures/SignatureReader.cs
3593           Mono.Cecil.Signatures/FieldSig.cs
3594           Mono.Cecil.Signatures/PropertySig.cs
3595           Mono.Cecil.Signatures/ISignatureVisitor.cs
3596           Mono.Cecil.Signatures/SignatureWriter.cs
3597           Mono.Cecil.Signatures/MethodDefSig.cs
3598           Mono.Cecil.Signatures/LocalVarSig.cs
3599           Mono.Cecil.Binary/PEFileHeader.cs
3600           Mono.Cecil.Binary/IBinaryVisitor.cs
3601           Mono.Cecil.Binary/ImageWriter.cs
3602           Mono.Cecil.Binary/CLIHeader.cs
3603           Mono.Cecil.Binary/SectionCollection.cs
3604           Mono.Cecil.Binary/Image.cs
3605           Mono.Cecil.Binary/PEOptionalHeader.cs
3606           Mono.Cecil.Binary/ImageInitializer.cs
3607           Mono.Cecil.Binary/Imports.cs
3608           Mono.Cecil.Binary/BaseImageVisitor.cs
3609           Mono.Cecil.Binary/DOSHeader.cs
3610           Mono.Cecil.Binary/Section.cs
3611           Mono.Cecil.Binary/ImageReader.cs:
3612                 Apply the new visitor model to the rest of Cecil.
3614         * Mono.Cecil/IReflectionVisitor.cs
3615           Mono.Cecil/BaseReflectionVisitor.cs
3616           Mono.Cecil/IReflectionStructureVisitor.cs
3617           Mono.Cecil/BaseStructureVisitor.cs
3618           Mono.Cecil.Cil/BaseCodeVisitor.cs
3619           Mono.Cecil.Cil/ICodeVisitor.cs
3620           CodeGen/cecil-gen.rb
3621           CodeGen/cecil-gen-types.rb
3622           CodeGen/templates/IndexedCollectionImplem.cs
3623           CodeGen/templates/NamedCollectionImplem.cs
3624           CodeGen/templates/LzIndexedCollectionImplem.cs
3625           CodeGen/templates/LzNamedCollectionImplem.cs
3626           CodeGen/cecil.xml
3627           Mono.Cecil.Implem/InterfaceCollection.cs
3628           Mono.Cecil.Implem/AssemblyLinkedResource.cs
3629           Mono.Cecil.Implem/ModuleReferenceCollection.cs
3630           Mono.Cecil.Implem/AssemblyName.cs
3631           Mono.Cecil.Implem/Instruction.cs
3632           Mono.Cecil.Implem/ExternTypeCollection.cs
3633           Mono.Cecil.Implem/MarshalDesc.cs
3634           Mono.Cecil.Implem/SecurityDeclarationCollection.cs
3635           Mono.Cecil.Implem/OverrideCollection.cs
3636           Mono.Cecil.Implem/ExceptionHandler.cs
3637           Mono.Cecil.Implem/EmbeddedResource.cs
3638           Mono.Cecil.Implem/ModuleReference.cs
3639           Mono.Cecil.Implem/ParameterDefinitionCollection.cs
3640           Mono.Cecil.Implem/EventDefinitionCollection.cs
3641           Mono.Cecil.Implem/FieldDefinitionCollection.cs
3642           Mono.Cecil.Implem/PropertyDefinitionCollection.cs
3643           Mono.Cecil.Implem/ModuleDefinitionCollection.cs
3644           Mono.Cecil.Implem/CustomAttributeCollection.cs
3645           Mono.Cecil.Implem/VariableDefinitionCollection.cs
3646           Mono.Cecil.Implem/TypeReferenceCollection.cs
3647           Mono.Cecil.Implem/StructureReader.cs
3648           Mono.Cecil.Implem/MethodDefinition.cs
3649           Mono.Cecil.Implem/EventDefinition.cs
3650           Mono.Cecil.Implem/FieldDefinition.cs
3651           Mono.Cecil.Implem/InstructionCollection.cs
3652           Mono.Cecil.Implem/StructureWriter.cs
3653           Mono.Cecil.Implem/ModuleDefinition.cs
3654           Mono.Cecil.Implem/CustomAttribute.cs
3655           Mono.Cecil.Implem/VariableDefinition.cs
3656           Mono.Cecil.Implem/TypeReference.cs
3657           Mono.Cecil.Implem/TypeDefinitionCollection.cs
3658           Mono.Cecil.Implem/AssemblyNameReferenceCollection.cs
3659           Mono.Cecil.Implem/ReflectionReader.cs
3660           Mono.Cecil.Implem/ReflectionWriter.cs
3661           Mono.Cecil.Implem/PInvokeInfo.cs
3662           Mono.Cecil.Implem/AssemblyDefinition.cs
3663           Mono.Cecil.Implem/TypeDefinition.cs
3664           Mono.Cecil.Implem/CodeReader.cs
3665           Mono.Cecil.Implem/AggressiveReflectionReader.cs
3666           Mono.Cecil.Implem/MethodDefinitionCollection.cs
3667           Mono.Cecil.Implem/CodeWriter.cs
3668           Mono.Cecil.Implem/SecurityDeclaration.cs
3669           Mono.Cecil.Implem/LazyReflectionReader.cs
3670           Mono.Cecil.Implem/LinkedResource.cs
3671           Mono.Cecil.Implem/ParameterDefinition.cs
3672           Mono.Cecil.Implem/PropertyDefinition.cs
3673           Mono.Cecil.Implem/MethodBody.cs
3674           Mono.Cecil.Implem/NestedTypeCollection.cs
3675           Mono.Cecil.Implem/ResourceCollection.cs
3676           Mono.Cecil.Implem/ExceptionHandlerCollection.cs:
3677                 BIG changes in the visitor object model. Last one
3678                 was causing ambiguous calls, and does not provides
3679                 differences between an interface and a typedef for
3680                 instance. This is corrected by suffixing the visit
3681                 method by the name of what it is visiting, and by
3682                 configuring some collection to stop the propagation
3683                 of the visitor.
3685         * Mono.Cecil/ITypeDefinition.cs
3686           Mono.Cecil/IArrayType.cs
3687           CodeGen/templates/Utilities.cs
3688           Mono.Cecil.Metadata/Utilities.cs
3689           Mono.Cecil.Implem/ArrayType.cs
3690           Mono.Cecil.Implem/TypeReference.cs
3691           Mono.Cecil.Implem/ReflectionWriter.cs
3692           Mono.Cecil.Implem/TypeDefinition.cs
3693           Mono.Cecil.Implem/CodeWriter.cs
3694           Mono.Cecil.Implem/Constants.cs
3695           Mono.Cecil.Signatures/MarshalSig.cs:
3696                 Work on the writing layer goes on.
3698 2005-08-14  Jb Evain  <jbevain@gmail.com>
3700         * Mono.Cecil/NativeType.cs
3701           Mono.Cecil.Signatures/MarshalSig.cs
3702           Mono.Cecil.Signatures/SignatureWriter.cs
3703           Mono.Cecil.Signatures/Signature.cs:
3704                 Work on signature writing.
3705           Mono.Cecil.Implem/MethodDefinition.cs
3706           Mono.Cecil.Implem/TypeDefinition.cs:
3707                 Correct bugs in setting the hasThis field.
3709         * CodeGen/templates/ImageWriter.cs
3710           Mono.Cecil.Binary/templates/ImageWriter.cs
3711           Mono.Cecil/AssemblyKind.cs:
3712                 Make assemblies executable on win32.
3713           Mono.Cecil.Implem/TypeDefinition.cs:
3714                 Mark new fields as loaded.
3715           Mono.Cecil.Implem/ReflectionWriter.cs:
3716                 Correct the style to patch provided by
3717                 Sebastien Ros  <s.ros@evaluant.com>
3719 2005-08-13  Jb Evain  <jbevain@gmail.com>
3721         * Mono.Cecil/IMethod.cs
3722           Mono.Cecil/ITypeDefinition.cs
3723           Mono.Cecil/IModuleDefinition.cs
3724           Mono.Cecil.Cil/OpCode.cs
3725           Mono.Cecil.Cil/ICilWorker.cs
3726           CodeGen/templates/ImageReader.cs
3727           Mono.Cecil.Metadata/MetadataReader.cs
3728           Mono.Cecil.Metadata/MetadataWriter.cs
3729           Mono.Cecil.Metadata/MetadataRoot.cs
3730           Mono.Cecil.Implem/ReflectionHelper.cs
3731           Mono.Cecil.Implem/CilWorker.cs
3732           Mono.Cecil.Implem/StructureReader.cs
3733           Mono.Cecil.Implem/MethodDefinition.cs
3734           Mono.Cecil.Implem/StructureWriter.cs
3735           Mono.Cecil.Implem/ModuleDefinition.cs
3736           Mono.Cecil.Implem/MethodReference.cs
3737           Mono.Cecil.Implem/ReflectionReader.cs
3738           Mono.Cecil.Implem/ReflectionWriter.cs
3739           Mono.Cecil.Implem/TypeDefinition.cs
3740           Mono.Cecil.Implem/CodeReader.cs
3741           Mono.Cecil.Implem/CodeWriter.cs
3742           Mono.Cecil.Implem/Constants.cs
3743           Mono.Cecil.Implem/ParameterDefinition.cs
3744           Mono.Cecil.Implem/MethodBody.cs
3745           Mono.Cecil.Binary/ImageReader.cs
3746           Mono.Cecil.Binary/MemoryBinaryWriter.cs
3747           Mono.Cecil.Signatures/SignatureReader.cs
3748           Mono.Cecil.Signatures/SignatureWriter.cs:
3749                 On going work on the writing layer.
3751         * Mono.Cecil.Signatures/SignatureReader.cs:
3752                 Fix a bug when reading chars inside a custom
3753                 attribute signature.
3755 2005-08-12  Jb Evain  <jbevain@gmail.com>
3757         * Mono.Cecil/AssemblyFactory.cs
3758           CodeGen/templates/ImageWriter.cs
3759           CodeGen/templates/MetadataTableWriter.cs
3760           CodeGen/templates/MetadataRowWriter.cs
3761           Mono.Cecil.Metadata/MetadataTableWriter.cs
3762           Mono.Cecil.Metadata/MetadataRowWriter.cs
3763           Mono.Cecil.Metadata/MetadataWriter.cs
3764           Mono.Cecil.Implem/StructureWriter.cs
3765           Mono.Cecil.Binary/ImageWriter.cs
3766           Mono.Cecil.Binary/MemoryBinaryWriter.cs:
3767                 Use a custom binary writer instead of the old one.
3769         * Mono.Cecil/IMethod.cs
3770           Mono.Cecil.Cil/BaseCodeVisitor.cs
3771           Mono.Cecil.Cil/MethodHeader.cs
3772           Mono.Cecil.Cil/ICodeVisitor.cs
3773           Mono.Cecil.Implem/Instruction.cs
3774           Mono.Cecil.Implem/MethodDefinition.cs
3775           Mono.Cecil.Implem/FieldDefinition.cs
3776           Mono.Cecil.Implem/ReflectionWriter.cs
3777           Mono.Cecil.Implem/CodeReader.cs
3778           Mono.Cecil.Implem/CodeWriter.cs
3779           Mono.Cecil.Implem/MethodBody.cs:
3780                 Ongoing work on the writing layer.
3782         * CodeGen/templates/Utilities.cs
3783           CodeGen/templates/NamedCollectionImplem.cs
3784           CodeGen/templates/MetadataRowWriter.cs
3785           CodeGen/templates/LzNamedCollectionImplem.cs
3786           CodeGen/cecil.xml
3787           Mono.Cecil/IMethod.cs
3788           Mono.Cecil/IAssemblyName.cs
3789           Mono.Cecil/IModuleDefinition.cs
3790           Mono.Cecil/AssemblyFactory.cs
3791           Mono.Cecil.Metadata/MetadataRowWriter.cs
3792           Mono.Cecil.Metadata/Utilities.cs
3793           Mono.Cecil.Implem/ReflectionHelper.cs
3794           Mono.Cecil.Implem/StructureReader.cs
3795           Mono.Cecil.Implem/MethodDefinition.cs
3796           Mono.Cecil.Implem/EventDefinition.cs
3797           Mono.Cecil.Implem/FieldDefinition.cs
3798           Mono.Cecil.Implem/StructureWriter.cs
3799           Mono.Cecil.Implem/ModuleDefinition.cs
3800           Mono.Cecil.Implem/MethodReference.cs
3801           Mono.Cecil.Implem/TypeDefinitionCollection.cs
3802           Mono.Cecil.Implem/ReflectionReader.cs
3803           Mono.Cecil.Implem/ReflectionWriter.cs
3804           Mono.Cecil.Implem/TypeDefinition.cs
3805           Mono.Cecil.Implem/AggressiveReflectionReader.cs
3806           Mono.Cecil.Implem/Constants.cs
3807           Mono.Cecil.Implem/ParameterDefinition.cs
3808           Mono.Cecil.Implem/PropertyDefinition.cs
3809           Mono.Cecil.Signatures/SignatureWriter.cs:
3810                 Ongoing work on the writing layer.
3811                 Some fixes to the reading layer as well.
3813 2005-08-11  Jb Evain  <jbevain@gmail.com>
3815         * Mono.Cecil.Signatures/SignatureReader.cs:
3816                 Read Array signatures correctly.
3818         * Mono.Cecil/IMethodSignature.cs:
3819                 Remove the setted for the return type.
3820         * Mono.Cecil.Implem/CilWorker.cs:
3821                 Fix the build. Me idiot!
3822         * Mono.Cecil.Implem/Constants.cs:
3823                 Remove unexisting type Variant.
3824         * Mono.Cecil.Implem/ReflectionHelper.cs:
3825                 Complete the helper.
3827 2005-08-10  Jb Evain  <jbevain@gmail.com>
3829         * Mono.Cecil.Cil/IMethodBody.cs
3830           Mono.Cecil.Cil/ICilEmitter.cs
3831           Mono.Cecil.Cil/ICilWorker.cs
3832           Mono.Cecil.Implem/CilWorker.cs
3833           Mono.Cecil.Implem/ReflectionWriter.cs
3834           Mono.Cecil.Implem/MethodBody.cs
3835           Mono.Cecil.Implem/CilEmitter.cs
3836           Mono.Cecil.Signatures/SignatureReader.cs
3837           Mono.Cecil.Signatures/SignatureWriter.cs:
3838                 Prepare the api for the cil emitting.
3840         * CodeGen/templates/Utilities.cs
3841           CodeGen/templates/MetadataRowReader.cs
3842           CodeGen/templates/MetadataRowWriter.cs
3843           Mono.Cecil.Metadata/Utilities.cs
3844           Mono.Cecil.Metadata/MetadataRowReader.cs
3845           Mono.Cecil.Metadata/MetadataRowWriter.cs:
3846                 Fix the build on .net, i was using a sugar
3847                 syntax for delegates that csc does not understand.
3848                 Remove the coded index cache from the static class
3849                 Utilities, and add one per row visitor.
3851         * Mono.Cecil/IMethodReturnType.cs
3852           Mono.Cecil.Implem/MethodReturnType.cs
3853           Mono.Cecil.Implem/ReflectionReader.cs
3854           Mono.Cecil.Implem/ParameterDefinition.cs:
3855                 Make IMethodReturn type inherits IHasMarshalSpec so
3856                 that users can read marshaling info for return types,
3857                 and implement it.
3859         * CodeGen/templates/ImageWriter.cs
3860           Mono.Cecil.Binary/ImageWriter.cs
3861           Mono.Cecil.Metadata/MetadataWriter.cs
3862           Mono.Cecil.Implem/ReflectionWriter.cs:
3863                 Cecil now emits assemblies understood by the .net clr.
3865 2005-08-09  Jb Evain  <jbevain@gmail.com>
3867         * Mono.Cecil/AssemblyKind.cs
3868           CodeGen/templates/ImageWriter.cs
3869           CodeGen/templates/ImageReader.cs
3870           Mono.Cecil.Metadata/MetadataWriter.cs
3871           Mono.Cecil.Binary/ImageWriter.cs
3872           Mono.Cecil.Binary/ImageInitializer.cs
3873           Mono.Cecil.Binary/ImageReader.cs:
3874                 Lots of little fixes. Now dumpbin is coherent
3875                 compared with an assembly emitted with csc or mcs
3876                 but still not yet compatible with .net.
3878         * Mono.Cecil.Signatures/SignatureReader.cs:
3879                 Fix an array out of range while trying to read
3880                 fixed arrays signatures
3882         * CodeGen/templates/ImageWriter.cs
3883           Mono.Cecil.Metadata/MetadataReader.cs
3884           Mono.Cecil.Metadata/MetadataWriter.cs
3885           Mono.Cecil.Implem/AssemblyName.cs
3886           Mono.Cecil.Implem/StructureReader.cs
3887           Mono.Cecil.Implem/ReflectionWriter.cs
3888           Mono.Cecil.Binary/ImageCharacteristics.cs
3889           Mono.Cecil.Binary/ImageWriter.cs
3890           Mono.Cecil.Binary/Image.cs:
3891                 Cecil now emits assemblies that are understood
3892                 by Mono and Cecil itself. Still have troubles
3893                 with Msft CLR.
3895 2005-08-08  Jb Evain  <jbevain@gmail.com>
3897         * CodeGen/cecil-gen.rb
3898           CodeGen/templates/MetadataTableReader.cs
3899           CodeGen/templates/ImageWriter.cs
3900           CodeGen/templates/MetadataTableWriter.cs
3901           CodeGen/templates/BaseMetadataVisitor.cs
3902           CodeGen/templates/MetadataRowReader.cs
3903           CodeGen/templates/MetadataRowWriter.cs
3904           CodeGen/cecil.xml
3905           Mono.Cecil.Metadata/MetadataInitializer.cs
3906           Mono.Cecil.Metadata/BaseMetadataVisitor.cs
3907           Mono.Cecil.Metadata/MetadataTableReader.cs
3908           Mono.Cecil.Metadata/MetadataTableWriter.cs
3909           Mono.Cecil.Metadata/MetadataRowReader.cs
3910           Mono.Cecil.Metadata/MetadataRowWriter.cs
3911           Mono.Cecil.Metadata/MetadataWriter.cs
3912           Mono.Cecil.Binary/ImageWriter.cs
3913           Mono.Cecil.Binary/CLIHeader.cs
3914           Mono.Cecil.Binary/ImageInitializer.cs:
3915                 The writing layer almost works.
3917         * Mono.Cecil/AssemblyKind.cs
3918           Mono.Cecil/TargetRuntime.cs
3919           Mono.Cecil.dll.sources:
3920                 Add thoses enumes to control assembly writing.
3921         * Mono.Cecil/AssemblyFactory.cs
3922           Mono.Cecil/IReflectionVisitor.cs
3923           Mono.Cecil/BaseReflectionVisitor.cs
3924           Mono.Cecil/IAssemblyDefinition.cs
3925           Mono.Cecil/IReflectionStructureVisitor.cs
3926           Mono.Cecil/BaseStructureVisitor.cs
3927           CodeGen/templates/ImageWriter.cs
3928           CodeGen/templates/MetadataTableWriter.cs
3929           CodeGen/templates/MetadataRowWriter.cs
3930           CodeGen/templates/LzNamedCollectionImplem.cs
3931           Mono.Cecil.Metadata/MetadataInitializer.cs
3932           Mono.Cecil.Metadata/MetadataTableWriter.cs
3933           Mono.Cecil.Metadata/MetadataRowWriter.cs
3934           Mono.Cecil.Metadata/MetadataWriter.cs
3935           Mono.Cecil.Metadata/MetadataStreamCollection.cs
3936           Mono.Cecil.Implem/AssemblyName.cs
3937           Mono.Cecil.Implem/StructureWriter.cs
3938           Mono.Cecil.Implem/ModuleDefinition.cs
3939           Mono.Cecil.Implem/TypeDefinitionCollection.cs
3940           Mono.Cecil.Implem/ReflectionWriter.cs
3941           Mono.Cecil.Implem/AssemblyDefinition.cs
3942           Mono.Cecil.Binary/ImageWriter.cs
3943           Mono.Cecil.Binary/ImageInitializer.cs
3944           Mono.Cecil.Binary/Imports.cs:
3945                 Things are now plugged. SaveAssembly will now emits
3946                 a binary file. A broken file, but heh, at least it does.
3948 2005-08-07  Jb Evain  <jbevain@gmail.com>
3950         * CodeGen/templates/ImageReader.cs
3951           CodeGen/templates/ImageWriter.cs
3952           CodeGen/templates/IMetadataVisitor.cs
3953           Mono.Cecil.Binary/ImageReader.cs
3954           Mono.Cecil.Binary/ImageWriter.cs
3955           Mono.Cecil.Metadata/IMetadataVisitor.cs
3956           Mono.Cecil.Metadata/BaseMetadataVisitor.cs
3957           Mono.Cecil.Metadata/MetadataReader.cs
3958           Mono.Cecil.Metadata/MetadataWriter.cs
3959           Mono.Cecil.Metadata/MetadataStreamCollection.cs:
3960                 Simplify IMetadataVisitor.
3961                 Work on the writing layer, closer to have something testable
3962                 than ever.
3964         * CodeGen/cecil.xml
3965           CodeGen/templates/ImageWriter.cs
3966           Mono.Cecil.Metadata/MetadataWriter.cs
3967           Mono.Cecil.Binary/PEOptionalHeader.cs
3968           Mono.Cecil.Binary/ImageWriter.cs
3969           Mono.Cecil.Binary/Imports.cs:
3970                 don't stop don't stop come ON!
3972         * CodeGen/templates/ImageWriter.cs
3973           CodeGen/templates/ImageReader.cs
3974           CodeGen/templates/Section.cs
3975           Mono.Cecil.Binary/Image.cs
3976           Mono.Cecil.Binary/ImageReader.cs
3977           Mono.Cecil.Binary/ImageInitializer.cs
3978           Mono.Cecil.Binary/ImageWriter.cs
3979           Mono.Cecil.Binary/Section.cs
3980           Mono.Cecil.Metadata/MetadataReader.cs
3981           Mono.Cecil.Metadata/MetadataWriter.cs
3982           Mono.Cecil.Implem/StructureReader.cs
3983           Mono.Cecil.Implem/StructureWriter.cs
3984           Mono.Cecil.Implem/CodeWriter.cs:
3985                 Some writing layer love.
3987         * CodeGen/templates/ImageWriter.cs
3988           CodeGen/templates/ImageReader.cs
3989           Mono.Cecil.Binary/Imports.cs
3990           Mono.Cecil.Binary/ImageReader.cs
3991           Mono.Cecil.Binary/ImageInitializer.cs
3992           Mono.Cecil.Binary/ImageWriter.cs:
3993                 Read an write correctly the Hint/Name table
3994                 at the end of the .text section.
3996         * CodeGen/templates/ImageWriter.cs
3997           Mono.Cecil.Metadata/MetadataWriter.cs
3998           Mono.Cecil.Binary/ImageWriter.cs
3999           Mono.Cecil.Binary/ImageInitializer.cs:
4000                 More writing layer stuff.
4002 2005-08-06  Jb Evain  <jbevain@gmail.com>
4004         * CodeGen/templates/ImageWriter.cs
4005           CodeGen/templates/MetadataTableWriter.cs
4006           Mono.Cecil.Metadata/MetadataInitializer.cs
4007           Mono.Cecil.Metadata/MetadataTableWriter.cs
4008           Mono.Cecil.Metadata/StringsHeap.cs
4009           Mono.Cecil.Metadata/BlobHeap.cs
4010           Mono.Cecil.Metadata/MetadataWriter.cs
4011           Mono.Cecil.Metadata/UserStringsHeap.cs
4012           Mono.Cecil.Metadata/TableCollection.cs
4013           Mono.Cecil.Metadata/TablesHeap.cs
4014           Mono.Cecil.Metadata/MetadataHeap.cs
4015           Mono.Cecil.Metadata/GuidHeap.cs
4016           Mono.Cecil.Metadata/MetadataStream.cs
4017           Mono.Cecil.Implem/StructureWriter.cs
4018           Mono.Cecil.Implem/ReflectionWriter.cs
4019           Mono.Cecil.Implem/CodeWriter.cs
4020           Mono.Cecil.Binary/ImageWriter.cs
4021           Mono.Cecil.Binary/ImageInitializer.cs:
4022                 Playing lego with bricks from the writing layer.
4024         * Mono.Cecil.dll.sources:
4025                 Updated.
4026         * CodeGen/templates/CLIHeader.cs
4027           CodeGen/templates/PEOptionalHeader.cs
4028                 Blah.
4029         * CodeGen/cecil.xml
4030           Mono.Cecil.Binary/CLIHeader.cs
4031           Mono.Cecil.Binary/PEOptionalHeader.cs:
4032           Mono.Cecil.Binary/PEFileHeader.cs
4033                 On going work on the writing layer
4035         * CodeGen/templates/ImageWriter.cs
4036           CodeGen/templates/ImageReader.cs
4037           Mono.Cecil.Binary/BaseImageVisitor.cs
4038           Mono.Cecil.Binary/ImageReader.cs
4039           Mono.Cecil.Binary/ImageInitializer.cs
4040           Mono.Cecil.Binary/ImageWriter.cs
4041           Mono.Cecil.Metadata/BaseMetadataVisitor.cs
4042           Mono.Cecil.Metadata/MetadataReader.cs
4043           Mono.Cecil.Metadata/MetadataInitializer.cs
4044           Mono.Cecil.Metadata/MetadataWriter.cs
4045           Mono.Cecil.Metadata/MetadataStream.cs
4046           Mono.Cecil.Implem/ReflectionWriter.cs
4047           Mono.Cecil.Implem/CodeWriter.cs:
4048                 Add helpers visitor.
4049                 On going work on the writing layer.
4051         * CodeGen/templates/Utilities.cs
4052           CodeGen/templates/MetadataRowReader.cs
4053           CodeGen/templates/MetadataRowWriter.cs
4054           Mono.Cecil.Metadata/StringsHeap.cs
4055           Mono.Cecil.Metadata/MetadataRowReader.cs
4056           Mono.Cecil.Metadata/MetadataRowWriter.cs
4057           Mono.Cecil.Metadata/MetadataReader.cs
4058           Mono.Cecil.Metadata/Utilities.cs
4059           Mono.Cecil.Metadata/BlobHeap.cs
4060           Mono.Cecil.Metadata/MetadataWriter.cs
4061           Mono.Cecil.Metadata/MetadataHeap.cd
4062           Mono.Cecil.Metadata/GuidHeap.cs:
4063                 On going work on the writing layer.
4065         * CodeGen/templates/MetadataTableWriter.cs
4066           Mono.Cecil.Metadata/MetadataTableWriter.cs
4067           Mono.Cecil.Metadata/MetadataWriter.cs:
4068                 On going work on the writing layer.
4069         * Mono.Cecil.Implem/StructureWriter.cs:
4070                 Correctly override methods
4071         * CodeGen/templates/MetadataRowWriter.cs
4072           Mono.Cecil.Metadata/MetadataRowWriter.cs
4073           Mono.Cecil.Implem/ReflectionWriter.cs:
4074                 Fix build warnings.
4076         * Mono.Cecil/IResource.cs
4077           Mono.Cecil.Implem/AssemblyLinkedResource.cs
4078           Mono.Cecil.Implem/EmbeddedResource.cs
4079           Mono.Cecil.Implem/LinkedResource.cs
4080           Mono.Cecil.Implem/Resource.cs:
4081                 Rename field Attributes to Flags for the sake of consistency.
4082         * Mono.Cecil.Metadata/MetadataWriter.cs
4083           Mono.Cecil.Implem/ReflectionWriter.cs
4084           Mono.Cecil.Implem/StructureWriter.cs:
4085                 On going work on the writing layer.
4086         * Mono.Cecil.Implem/StructureReader.cs:
4087                 Style.
4089         * Mono.Cecil/IAssemblyName.cs
4090           Mono.Cecil.Implem/AssemblyName.cs
4091           Mono.Cecil.Implem/StructureReader.cs:
4092                 Add an AssemblyFlag property to an IAssemblyNameReference,
4093                 implement it, and read it.
4095 2005-08-04  Jb Evain  <jbevain@gmail.com>
4097         * Mono.Cecil.Implem/ReflectionReader.cs:
4098                 set a correct name to nameless parameters
4100         * Mono.Cecil.Signatures/SignatureReader.cs:
4101                 don't crash on null custom attributes
4103 2005-08-03  Jb Evain  <jbevain@gmail.com>
4105         * CodeGen/templates/OpCodes.cs
4106           Mono.Cecil.Cil/OpCodes.cs
4107           Mono.Cecil.Cil/OpCode.cs:
4108                 Revert modifications to reduce code. OpCodes::.ctors were
4109                 not called.
4111         * Mono.Cecil.Implem/ReflectionReader.cs:
4112                 Make sure parameters are read even if there is no
4113                 corresponding Param row. Thanks Cesar for the hint.
4115         * Mono.Cecil.Metadata/MetadataWriter.cs
4116           Mono.Cecil.Metadata/UserStringsHeap.cs
4117           Mono.Cecil.Metadata/GuidHeap.cs
4118           Mono.Cecil.Implem/CodeReader.cs:
4119                 On going work on the writing layer
4121         * CodeGen/cecil-gen.rb
4122           CodeGen/cecil-gen-sources.rb
4123                 make executable
4124         * *.*: set svn:eol-style to native
4126         * Mono.Cecil/BaseStructureVisitor.cs
4127           Mono.Cecil/BaseReflectionVisitor.cs
4128           Mono.Cecil.Implem/BaseReflectionReader.cs:
4129                 Add empty visitors for the sake of simplicity
4130         * Mono.Cecil.Implem/StructureReader.cs
4131           Mono.Cecil.Implem/ReflectionReader.cs:
4132                 Inherit new visitors
4134 2005-08-03  Jb Evain  <jbevain@gmail.com>
4136         * Mono.Cecil.Implem/ReflectionReader.cs
4137           Mono.Cecil.Implem/AggressiveReflectionReader.cs
4138           Mono.Cecil.Implem/LazyReflectionReader.cs
4139           Mono.Cecil.Implem/CodeReader.cs:
4140                 Modify and add helpers to avoid lots of casts.
4141                 Correct a bug in custom attributes attribution.
4143 2005-08-02  Jb Evain  <jbevain@gmail.com>
4145         * Mono.Cecil.Signatures/TypeSpec.cs:
4146                 Don't restrain the SigType
4147         * Mono.Cecil.Implem/AggressiveReflectionReader.cs:
4148                 Set PInvokeInfos on the correct method
4150 2005-07-30  Jb Evain  <jbevain@gmail.com>
4152         * CodeGen/cecil-gen.rb
4153           CodeGen/cecil-gen-sources.rb:
4154                 make them executable
4155         * CodeGen/cecil-gen-types: style
4156         * CodeGen/templates/ImageWriter.cs
4157           Mono.Cecil.Binary/ImageWriter.cs:
4158                 Prelimimary work on assembly writing
4160 2005-07-29  Jb Evain  <jbevain@gmail.com>
4162         * CodeGen/cecil-gen-types.rb
4163           CodeGen/templates/MetadataTableWriter.cs
4164           CodeGen/templates/MetadataRowWriter.cs
4165           Mono.Cecil/AssemblyFactory.cs
4166           Mono.Cecil.Metadata/MetadataTableWriter.cs
4167           Mono.Cecil.Metadata/MetadataRowWriter.cs
4168           Mono.Cecil.Implem/StructureWriter.cs
4169           Mono.Cecil.Implem/ReflectionWriter.cs:
4170                 Preliminary work on assembly writing
4172 2005-07-28  Jb Evain  <jbevain@gmail.com>
4174         * Mono.Cecil/AssemblyFactory.cs
4175           Mono.Cecil.Implem/StructureWriter.cs
4176                 Preliminary work on assembly writing
4178         * Mono.Cecil/IMetadataTokenProvider.cs
4179           Mono.Cecil/IMember.cs
4180           Mono.Cecil/IParameter.cs:
4181                 Add a MetadataToken property on searchable items
4182         * Mono.Cecil.Metadata/MetadataToken.cs:
4183                 Add a factory method to create token from row number
4184         * Mono.Cecil.Implem/TypeReference.cs
4185           Mono.Cecil.Implem/MemberReference.cs
4186           Mono.Cecil.Implem/ParameterDefinition.cs:
4187                 Implement the token property
4188         * Mono.Cecil.Implem/ReflectionReader.cs
4189           Mono.Cecil.Implem/AggressiveReflectionReader.cs
4190           Mono.Cecil.Implem/LazyReflectionReader.cs:
4191                 Set the token property on reading
4192         * Mono.Cecil/IModuleDefinition.cs
4193           Mono.Cecil.Implem/ModuleDefinition.cs
4194           Mono.Cecil.Implem/ReflectionReader.cs:
4195                 Add methods to lookup items from their tokens
4197 2005-07-27  Jb Evain  <jbevain@gmail.com>
4199         * CodeGen/templates/OpCodes.cs
4200           Mono.Cecil.Cil/OpCodes.cs
4201           Mono.Cecil.Cil/OpCode.cs:
4202                 Changes to reduce the size of the cache ctor
4204 2005-07-22  Raja R Harinath  <rharinath@novell.com>
4206         * Makefile (MCS): Allow compiler to be overriden.
4208 2005-07-21  Todd Berman  <tberman@off.net>
4210         * configure: Add a small stub configure (stolen from mcs) to set the
4211         prefix.
4212         * mono-cecil.pc.in: Add a mono-cecil.pc.in to allow for installation
4213         according to the new "Libraries with Unstable API" Wiki documentation.
4214         * Makefile: Add an install an a mono-cecil.pc target to allow for
4215         installation and creation of the pc file.
4217 2005-07-14  Jb Evain  <jbevain@gmail.com>
4219         * CodeGen/templates/ImageReader.cs
4220           Mono.Cecil.Binary/IBinaryVisitor.cs
4221           Mono.Cecil.Binary/Image.cs
4222           Mono.Cecil.Binary/ImageInitializer.cs
4223           Mono.Cecil.Binary/Imports.cs
4224           Mono.Cecil.Binary/ImageReader.cs:
4225                 Read Imports Tables
4227 2005-07-14  Jb Evain  <jbevain@gmail.com>
4229         * CodeGen/cecil-gen.rb:
4230                 make codegen works on ruby 1.8.2
4231         * CodeGen/templates/*.cs
4232           Mono.Cecil.Metadata/*.cs:
4233                 style
4235 2005-07-13  Jb Evain  <jbevain@gmail.com>
4237         * Mono.Cecil.Implem/VariableDefinition.cs:
4238                 set the index field
4240 2005-07-13  Jb Evain  <jbevain@gmail.com>
4242         * Mono.Cecil.dll.sources: regenerated
4243         * Mono.Cecil.Signatures/SignatureReader.cs:
4244                 Fix compilation warnings
4245         * Mono.Cecil/IArrayType.cs
4246           Mono.Cecil.Implem/ArrayType.cs:
4247                 Add Rank helper property
4248         * Mono.Cecil/ITypeDefinition.cs
4249           Mono.Cecil.Implem/TypeDefinition.cs:
4250                 Add Constructors helper property
4252 2005-07-11  Jb Evain  <jbevain@gmail.com>
4254         * Mono.Cecil/IMethod.cs
4255           Mono.Cecil.Implem/Instruction.cs
4256           Mono.Cecil.Implem/ExceptionHandler.cs
4257           Mono.Cecil.Implem/MethodDefinition.cs
4258           Mono.Cecil.Implem/Label.cs
4259           Mono.Cecil.Implem/CodeReader.cs
4260           Mono.Cecil.Implem/MethodBody.cs
4261           Mono.Cecil.Implem/CilEmitter.cs
4262           Mono.Cecil.Cil/ILabel.cs
4263           Mono.Cecil.Cil/IInstruction.cs
4264           Mono.Cecil.Cil/IExceptionHandler.cs
4265           Mono.Cecil.Cil/IMethodBody.cs
4266           Mono.Cecil.Cil/ICilEmitter.cs:
4267                 Preliminary changes on the instruction model before
4268                 changing of latptop
4270 2005-07-08  Jb Evain  <jbevain@gmail.com>
4272    * Every generated files: use \n instead of \r\n
4274 2005-07-07  Jb Evain  <jbevain@gmail.com>
4276         * *.*: use Mono coding conventions
4277         * Mono.Xml/*.*: update Mono.Xml from corlib
4278         * Mono.Cecil.Metadata/CultureUtils.cs:
4279                 Ensure that Cecil works under Mono
4281 2005-07-02  Jb Evain  <jbevain@gmail.com>
4283         * Mono.Cecil/IMethod.cs
4284           Mono.Cecil/IProperty.cs
4285           Mono.Cecil/IEvent.cs
4286           Mono.Cecil/IField.cs
4287           Mono.Cecil/ITypeDefinition.cs
4288           Mono.Cecil.Implem/MethodDefinition.cs
4289           Mono.Cecil.Implem/PropertyDefinition.cs
4290           Mono.Cecil.Implem/EventDefinition.cs
4291           Mono.Cecil.Implem/FieldDefinition.cs
4292           Mono.Cecil.Implem/TypeDefinition.cs:
4293                 Add some funky sugar attributes,
4294                 more to come
4296 2005-07-01  Jb Evain  <jbevain@gmail.com>
4298         * CodeGen/cecil-gen.rb,
4299           CodeGen/templates/MetadataTableWriter.cs,
4300           CodeGen/templates/MetadataRowWriter.cs,
4301           Mono.Cecil.Metadata/MetadataTableWriter.cs,
4302           Mono.Cecil.Metadata/MetadataRowWriter.cs,
4303           Mono.Cecil.Metadata/MetadataWriter.cs:
4304                 Add metadata writing visitors
4305         * Mono.Cecil.Metadata/CultureUtils.cs:
4306                 Be sure to use every possible culture infos.
4307         * Mono.Cecil.Cil/IVariable.cs,
4308           Mono.Cecil.Implem/VariableDefinition.cs,
4309           Mono.Cecil.Implem/CodeReader.cs,
4310           Mono.Cecil.Implem/CilEmitter.cs:
4311                 Add an index property to local variables
4312         * Mono.Cecil.Metadata/MetadataReader.cs,
4313           Mono.Cecil.Metadata/MetadataRowReader.cs,
4314           CodeGen/templates/MetadataRowReader.cs,
4315           Mono.Cecil.Metadata/TablesHeap.cs:
4316                 Handles null heaps
4317         * Mono.Cecil.Implem/StructureWriter.cs,
4318           Mono.Cecil.Implem/ReflectionController.cs,
4319           Mono.Cecil.Implem/ReflectionWriter.cs:
4320                 Assemble writing classes
4322 2005-06-28  Jb Evain  <jbevain@gmail.com>
4324         * Mono.Cecil.Implem/ReflectionReader.cs: style
4325         * Mono.Cecil.Implem/LazyReflectionReader.cs:
4326                 read the last property as well.
4328 2005-06-21  Jb Evain  <jbevain@gmail.com>
4330         * Mono.Cecil.Implem/ReflectionReader.cs: Correct a bug that prevents
4331                 assemblies to be readed if they have an entrypoint. Suggestion by
4332                 Mario Sopena
4333         * Mono.Cecil.Implem/CodeReader.cs: Use sbyte not to lose negatives
4334                 offsets. Suggestion by Vladislav Spivak
4335         * CodeGen/cecil.xml,
4336           Mono.Cecil.Cil/OpCodes.cs,
4337           Mono.Cecil.Cil/StackBehaviour.cs: Add an PopAll enumeration value
4338                 for StackBehaviour, and set the StackBehaviourPop property for
4339                 leave and leave.s opcodes to it. Suggested by Vladislav Spivak
4341 2005-06-12  Jb Evain  <jbevain@gmail.com>
4343         * Mono.Cecil.Implem/TypeDefinition.cs: Set the declaring type
4344                 to this when defining a nested type.
4346 2005-06-07  Jb Evain  <jbevain@gmail.com>
4348         * Mono.Cecil.dll.sources,
4349         * CodeGen/cecil.xml,
4350         * Mono.Cecil/IReflectionVisitor.cs,
4351         * Mono.Cecil/INestedTypeCollection.cs,
4352         * Mono.Cecil/ITypeDefinition,
4353         * Mono.Cecil.Implem/ReflectionReader.cs,
4354         * Mono.Cecil.Implem/ReflectionWriter.cs,
4355         * Mono.Cecil.Implem/TypeDefinition.cs,
4356         * Mono.Cecil.Implem/NestedTypeCollection:
4357                 Add a collection of nested types for type definition
4359         * Mono.Cecil.Implem/ModuleDefinition.cs: simplify type creation
4361 2005-06-07  Jb Evain  <jbevain@gmail.com>
4363         * ChangeLog: Cecil has now ChangeLogs. Let use them.