1 2008-11-06 Jb Evain <jbevain@novell.com>
3 * Mono.Cecil.Metadata/MetadataWriter.cs: properly clean
4 the runtime image in case we're unsigning an assembly.
6 2008-11-01 Jb Evain <jbevain@novell.com>
8 * Mono.Cecil.Binary/RuntimeImage.cs: add [Flags] attribute.
11 2008-10-27 Jb Evain <jbevain@novell.com>
13 * Mono.Cecil/AssemblyInfo.cs: bump version.
15 2008-10-27 Zoltan Varga <vargaz@gmail.com>
17 * Mono.Cecil/AssemblyStripper.cs: Strip locals info too.
19 2008-10-17 Jb Evain <jbevain@novell.com>
21 * Mono.Cecil/ReflectionWriter.cs: remove dead code.
22 * Mono.Cecil.Cil/ISymbolWriter.cs: simplify Write method.
24 2008-10-17 Rodrigo B. de Oliveira <rodrigobamboo@gmail.com>
26 * Mono.Cecil.Cil/CodeWriter.cs
27 * Mono.Cecil.Cil/MethodBody.cs:
28 mcs-cecil-local-var-1.diff patch enabling better handling of local
29 variable debugging information applied.
30 Patch by Juerg Billeter <j@bitron.ch>
32 2008-10-17 Rodrigo B. de Oliveira <rodrigobamboo@gmail.com>
34 * Mono.Cecil/ConstructorCollection.cs
35 * Mono.Cecil.Binary/ImageReader.cs:
36 Compact Framework compilation fixes.
38 2008-10-14 Jb Evain <jbevain@novell.com>
40 * Mono.Cecil/SecurityDeclarationReader.cs: protect against
41 wrongly formatted security attributes.
43 2008-10-12 Sebastien Pouliot <sebastien@ximian.com>
45 * Mono.Cecil.Cil/SymbolStoreHelper.cs: Change two "static readonly"
47 [Found using Gendarme PreferLiteralOverInitOnlyFieldsRule]
49 2008-10-11 Sebastien Pouliot <sebastien@ximian.com>
51 * Mono.Cecil/ConstructorCollection.cs: Fix a NRE if a null parameter
52 is provided to one of the GetConstructor overloads.
54 2008-10-07 Jb Evain <jbevain@novell.com>
56 * Mono.Cecil/ReflectionReader.cs: don't cache generic typespecs,
57 as some compiler reuse generic instance signatures with different
60 2008-10-01 Jb Evain <jbevain@novell.com>
62 * Mono.Cecil.dll.sources
64 * Mono.Cecil/AssemblyStripper.cs
65 * Mono.Cecil.Cil/CodeWriter.cs
66 * Mono.Cecil.Metadata/MetadataWriter.cs: add a new AssemblyStripper
67 class to be used by a tool to empty method bodies for assemblies
70 2008-09-29 Jb Evain <jbevain@novell.com>
72 * Mono.Cecil/GenericParameter.cs: override TypeReference.Scope.
74 2008-09-25 Jb Evain <jbevain@novell.com>
76 * Mono.Cecil.Binary/MemoryBinaryWriter.cs: Make sure QuadAlign
77 properly enlarge the memory stream if needed.
78 Patch by Regis Vaquette <rvaquette@yahoo.fr>.
80 2008-09-18 Jb Evain <jbevain@novell.com>
82 * Mono.Cecil/ReflectionReader.cs (GetModifierType): protect against
85 2008-09-15 Jb Evain <jbevain@novell.com>
87 * Mono.Cecil.Signatures/SignatureReader.cs: fix regression
88 in reading custom mods.
90 2008-09-04 Jb Evain <jbevain@novell.com>
92 * Mono.Cecil.Signatures/SignatureReader.cs: better read modifiers on
93 return types and parameters.
95 2008-09-02 Jb Evain <jbevain@novell.com>
97 * Mono.Cecil.Metadata/UserStringsHeap.cs: fix reading of some unicode fu.
99 2008-09-02 Jb Evain <jbevain@novell.com>
101 * Mono.Cecil/MethodAttributes.cs: add CheckAccessOnOverride.
102 * Mono.Cecil/MethodDefinition.cs: add IsCheckAccessOnOverride.
104 2008-09-02 Jb Evain <jbevain@novell.com>
106 * Mono.Cecil/GenericParameter.cs: fix Has*Constraint properties.
108 2008-09-02 Jb Evain <jbevain@novell.com>
110 * Mono.Cecil/SecurityDeclarationReader.cs: fix reading
111 multiple permissions. Patch by Carsten Keutmann.
113 2008-09-01 Jb Evain <jbevain@novell.com>
115 * Mono.Cecil/ReflectionReader.cs: properly compose mod and byref types
116 for parameters and return types.
117 Based on a patch by Carlo Kok <ck@remobjects.com>
119 2008-09-01 Jb Evain <jbevain@novell.com>
121 * Mono.Cecil.Signatures/SignatureReader.cs: Avoid a crash
122 when looking for an enumeration definition when the assembly
123 could not be resolved. Patch by Carlo Kok <ck@remobjects.com>
125 2008-09-01 Jb Evain <jbevain@novell.com>
127 * Mono.Cecil/ReflectionWriter.cs: fix for writing null string
128 constants. Patch by Ewout Prangsma <ewout@tallapplications.com>.
130 2008-06-28 Sebastien Pouliot <sebastien@ximian.com>
132 * Mono.Cecil.dll.sources
133 * Mono.Xml/MiniParser.cs:
134 Remove MiniParser as it is no more required (replaced by
135 SmallXmlParser) and save a few KB in the binary size
137 * Mono.Xml/SecurityParser.cs
138 * Mono.Xml/SmallXmlParser.cs:
139 Seal non-visible classes.
140 [Found using Gendarme AvoidUnsealedUninheritedInternalClassesRule]
142 * Mono.Cecil.Signatures/GenericArg.cs:
143 Seal non-visible classes.
144 [Found using Gendarme AvoidUnsealedUninheritedInternalClassesRule]
146 * Mono.Cecil.Binary/CopyImageVisitor.cs
147 * Mono.Cecil.Binary/ImageInitializer.cs
148 * Mono.Cecil.Binary/ImageReader.cs
149 * Mono.Cecil.Binary/ImageWriter.cs
150 * Mono.Cecil.Binary/ResourceReader.cs
151 * Mono.Cecil.Binary/ResourceWriter.cs:
152 Seal non-visible classes.
153 [Found using Gendarme AvoidUnsealedUninheritedInternalClassesRule]
155 * Mono.Cecil.Metadata/CultureUtils.cs
156 * Mono.Cecil.Metadata/MetadataInitializer.cs
157 * Mono.Cecil.Metadata/MetadataReader.cs
158 * Mono.Cecil.Metadata/MetadataRowReader.cs
159 * Mono.Cecil.Metadata/MetadataRowWriter.cs
160 * Mono.Cecil.Metadata/MetadataTableReader.cs
161 * Mono.Cecil.Metadata/Utilities.cs:
162 Seal non-visible classes.
163 [Found using Gendarme AvoidUnsealedUninheritedInternalClassesRule]
165 * Mono.Cecil.Cil/CodeReader.cs
166 * Mono.Cecil.Cil/OpCodeNames.cs
167 * Mono.Cecil.Cil/CodeWriter.cs
168 * Mono.Cecil.Cil/SymbolStoreHelper.cs:
169 Seal non-visible classes.
170 [Found using Gendarme AvoidUnsealedUninheritedInternalClassesRule]
172 * Mono.Cecil/SecurityDeclarationReader.cs
173 * Mono.Cecil/NullReferenceImporter.cs
174 * Mono.Cecil/TableComparers.cs:
175 Seal non-visible classes.
176 [Found using Gendarme AvoidUnsealedUninheritedInternalClassesRule]
178 * Mono.Cecil/AssemblyNameReference.cs:
179 Use String.Length > 0 instead of comparing to String.Empty
180 [Found using Gendarme CompareWithEmptyStringEfficientlyRule]
182 * Mono.Cecil.Metadata/MetadataToken.cs:
183 Add a private Equals(MetadataToken) method. This allows the
184 existing operators (== and !=) to avoid boxing, since they
185 will prefer it to the Equals(object) method.
186 [Found using Gendarme ImplementEqualsTypeRule]
188 * Mono.Cecil.Cil/GuidAttribute.cs:
190 [Found using Gendarme AvoidUnsealedConcreteAttributesRule]
192 * Mono.Cecil.Signatures/SignatureWriter.cs:
194 [Found using Gendarme AvoidUnneededUnboxingRule]
196 2008-06-06 Jb Evain <jbevain@novell.com>
198 * CodeGen/cecil.xml: constrained. is of type InlineType.
199 * Mono.Cecil.Cil/OpCodes.cs: re-generate.
201 2008-05-14 Jb Evain <jbevain@novell.com>
203 * Mono.Cecil/ReflectionWriter.cs:
204 Only create the GenericParameterConstraint table if needed.
205 Patch by Richard Flamsholt <richard.flamsholt@gmail.com>.
207 * Mono.Cecil.Cil/MethodBody.cs:
208 Fix typo in switch cloning. Patch by
209 Rune Glerup <rune.glerup@gmail.com>.
211 2008-05-06 Jb Evain <jbevain@novell.com>
213 * Mono.Cecil.Signatures/CustomMod.cs:
214 Introduce a EmptyCustomMod static field.
215 * Mono.Cecil/ReflectionWriter.cs
216 * Mono.Cecil.Signatures/SignatureReader.cs:
217 Use EmptyCustomMod instead of instanciating
218 empty arrays of CustomMod.
219 Based on a patch by Carlo Kok <ck@remobjects.com>.
221 * Mono.Cecil.Metadata/MetadataRowReader.cs
222 * Mono.Cecil.Metadata/MetadataRowWriter.cs:
223 Cache row counters delegates.
224 Based on a patch by Carlo Kok <ck@remobjects.com>.
226 * Mono.Cecil/TypeDefinition.cs
227 * Mono.Cecil/MethodDefinition.cs
228 * Mono.Cecil/DefaultImporter.cs
229 * Mono.Cecil/ReflectionHelper.cs:
230 Restore the generic context values instead of blindly
231 overriding them. Based on a patch by Dzintars Avots.
233 * Mono.Cecil/MarshalSpec.cs (CloneInto): add new method
234 to clone MarshalSpec into a new container.
236 * Mono.Cecil/ParameterDefinition.cs (Clone):
237 * Mono.Cecil/FieldDefinition.cs (Clone):
238 Use the new MarshalSpec.CloneInto method.
239 Based on a patch by Dzintars Avots <davots@coverity.com>.
241 * Mono.Cecil/MethodDefinition.cs (Clone): fix cloning of
242 return types when they don't have a parameter.
243 Patch by Dzintars Avots <davots@coverity.com>.
245 * Mono.Cecil.Cil/CodeWriter.cs (ComputeMaxStack): compute max
246 stack more precisely. Based on a patch by Daniel Grunwald,
247 Contains code from Cecil.FlowAnalysis.
249 * Mono.Cecil.Cil/MethodBody.cs (Clone): make sure the
250 instruction linked list is properly constructed.
252 2008-04-19 Sebastien Pouliot <sebastien@ximian.com>
254 * Mono.Cecil.Cil/CodeReader.cs:
255 * Mono.Cecil.Cil/ISymbolReader.cs:
256 Move reading of debugging symbols where it's possible to
257 reuse the existing Hashtable (offset, Instruction) in
258 the debugging libraries. Change interface to allow
259 passing the Hashtable.
261 2008-04-15 Sebastien Pouliot <sebastien@ximian.com>
264 * Mono.Cecil.dll.sources:
265 Add Mono.Cecil.Cil/OpCodeNames.cs to the build.
267 * Mono.Cecil.Cil/OpCodeNames.cs
268 * Mono.Cecil.Cil/OpCode.cs
269 * Mono.Cecil.Cil/OpCodes.cs:
270 Reduce the OpCode struct size to 8 bytes (instead of 36).
271 Based on the SRE.OpCode code found in corlib.
273 2008-04-13 Sebastien Pouliot <sebastien@ximian.com>
275 * Mono.Cecil/AssemblyDefinition.cs:
276 Short circut loop when module is found.
278 2008-04-08 Jb Evain <jbevain@novell.com>
280 * Mono.Cecil/SecurityDeclaration.cs
281 Mono.Cecil/SecurityDeclarationReader.cs:
282 Implement resolving of SecurityDeclarations.
284 2008-03-31 Jb Evain <jbevain@novell.com>
286 Integrate patches from Dzintars Avots <davots@coverity.com>
288 * Mono.Cecil/GenericParameter.cs
289 Mono.Cecil/TypeDefinition.cs
290 Mono.Cecil/DefaultImporter.cs
291 Mono.Cecil/MethodDefinition.cs:
292 Fix generic parameter cloning to avoid issues when
293 the constraint reference the parameter itself.
295 * Mono.Cecil/MethodBody.cs (Clone): deals with switches.
297 * Mono.Cecil/MethodBody.cs (Clone): clone the name of
300 2008-03-30 Sebastien Pouliot <sebastien@ximian.com>
302 * Mono.Cecil/ReflectionReader.cs:
303 Avoid creating a BinaryReader+MemoryStream on LE archs for
304 GetConstant. Saves about 400KB for Gendarme.
305 Avoid a BinaryReader creation in GetConstant which saves
306 about 50KB for Gendarme.
307 * Mono.Cecil.Metadata/GuidHeap.cs:
308 Compute ideal capacity for Hashtable. Avoid memory allocation
309 if a single GUID is present (which is the case for all of
310 Mono 2.0 assemblies). Saves a whole 2KB for Gendarme ;-)
311 * Mono.Cecil.Binary/Image.cs:
312 Add internal GetSectionAtVirtualAddress to avoid creating
313 BinaryReader in some cases.
314 * Mono.Cecil.Binary/ResourceReader.cs:
315 Avoid a BinaryReader creation in SetInitialValue which saves
316 about 3000KB for Gendarme.
318 2008-03-08 Jb Evain <jbevain@novell.com>
320 * Mono.Cecil.Binary/CopyImageVisitor.cs:
321 Copy the cliheaders flags over the new assembly.
322 Patch by Oleksiy Gapotchenko <alex.s.gap@gmail.com>
324 2008-03-08 Sebastien Pouliot <sebastien@ximian.com>
326 * Mono.Cecil.Cil/CodeReader.cs:
327 Use one and only Hashtable for caching instructions offsets.
328 Save tons of precious memory.
330 2008-03-08 Sebastien Pouliot <sebastien@ximian.com>
332 * Mono.Cecil.Cil/OpCode.cs
333 * Mono.Cecil.Binary/RVA.cs
334 * Mono.Cecil.Binary/DataDirectory.cs:
335 Avoid boxing/unboxing when == or != operators are used.
336 Results in significant memory savings for Gendarme.
338 2008-03-08 Jb Evain <jbevain@novell.com>
340 * Mono.Cecil/ReflectionReader.cs:
341 Protect from malformed RIDs.
342 * Mono.Cecil/AggressiveReflectionReader.cs:
343 Create the m_events and m_properties tables
344 even if they contains 0 elements.
346 2008-02-26 Jb Evain <jbevain@novell.com>
348 * Mono.Cecil.Binary/ImageReader.cs:
349 Avoid throwing non desired exceptions.
351 2008-02-25 Jb Evain <jbevain@novell.com>
353 * Mono.Cecil/ReflectionReader.cs:
354 Avoid throwing in case a constant
357 2008-02-19 Jb Evain <jbevain@novell.com>
359 * Mono.Cecil/DefaultImporter.cs:
360 Add support for importing function pointers. Based on a
361 patch by Andrea Carlo Ornstein <andrea.ornstein@st.com>.
363 * Mono.Cecil/ModuleDefinition.cs:
364 Add a Inject(FieldDef) overload for symmetry.
365 Patch by Andrea Carlo Ornstein <andrea.ornstein@st.com>.
367 2008-02-16 Jb Evain <jbevain@novell.com>
369 * CodeGen/templates/MetadataRowReader.cs
370 CodeGen/templates/Utilities.cs
371 CodeGen/templates/MetadataRowWriter.cs
372 Mono.Cecil.Metadata/MetadataRowReader.cs
373 Mono.Cecil.Metadata/MetadataRowWriter.cs
374 Mono.Cecil.Metadata/Utilities.cs:
375 Use a good old traditional array instead of an
376 Hashtable. Based on a patch by Carlo Kok <ck@remobjects.com>.
378 2008-02-07 Jb Evain <jbevain@novell.com>
380 * Mono.Cecil/BaseAssemblyResolver.cs:
381 deal with 2.1 corlib on Mono.
383 2008-02-07 Jb Evain <jbevain@novell.com>
385 * Mono.Cecil/MethodDefinition.cs:
386 add last Is method for semantics property.
388 2008-02-05 Jb Evain <jbevain@novell.com>
390 * Mono.Cecil/TypeDefinition.cs:
391 System.Enum by itself is not a value type.
394 * Mono.Cecil.Signatures/SignatureReader.cs:
395 Properly read fnptr local variables. Fix #358507.
397 * Mono.Cecil.Binary/DefaultImporter.cs:
398 Import modifiers and sentinels, patch from:
399 Andrea Carlo Ornstein <andrea.ornstein@st.com>
401 2008-02-04 Jb Evain <jbevain@novell.com>
403 * Mono.Cecil.Binary/CLIHeader.cs
404 Mono.Cecil.Binary/ImageWriter.cs
405 Mono.Cecil.Metadata/MetadataWriter.cs:
406 emit the proper cli header version for 1.1 and 2.0 cases.
408 * Mono.Cecil.Cil/CilWorker.cs: add callsite overloads.
410 2008-01-10 Jb Evain <jbevain@novell.com>
412 * Mono.Cecil/ReflectionHelper.cs: deal with complex arrays.
414 2008-01-07 Jb Evain <jbevain@novell.com>
416 * Mono.Cecil.Cil/CilWorker.cs:
417 Allow ldarg.s/ldloc.s/stloc.s to take a byte
418 instead of the actual parameter or variable. Fix #350606.
420 2008-01-07 Jb Evain <jbevain@novell.com>
422 * Mono.Cecil/ArrayType.cs:
423 Add a constructor with the array rank. Fix #351924.
424 Based on a patch by Rolf Kvinge <rkvinge@novell.com>.
426 2008-01-04 Jb Evain <jbevain@novell.com>
428 * Mono.Cecil.Cil/CilWorker.cs:
429 Allow ldarg/ldloc/stloc to take a integer
430 instead of the actual parameter or variable. Fix #350606.
432 2008-01-04 Jb Evain <jbevain@novell.com>
434 * Mono.Cecil/DefaultImporter.cs:
435 Mono.Cecil/ReflectionHelper.cs:
436 Properly import nested types. Fix #351133.
438 2008-01-03 Jb Evain <jbevain@novell.com>
440 * Mono.Cecil/ReflectionWriter.cs:
441 Properly emit null type constants. Fix #351141.
442 Patch by Rolf Kvinge <rkvinge@novell.com>.
444 2007-12-30 Jb Evain <jbevain@novell.com>
446 * Mono.Cecil.Cil/CilWorker.cs:
447 Check for null arguments. Fix #350857.
449 2007-12-21 Jb Evain <jbevain@novell.com>
451 * Mono.Cecil/ReflectionReader.cs
452 Mono.Cecil/AggressiveReflectionReader.cs
453 Mono.Cecil.Signatures/SignatureReader.cs:
454 Don't crash on force resolve for nested arrays
455 in custom attributes.
457 2007-12-17 Jb Evain <jbevain@novell.com>
459 * Mono.Cecil/IMemberDefinition.cs: make IMemberDefinition
460 implement ICustomAttributeProvider.
462 2007-12-15 Jb Evain <jbevain@novell.com>
464 * Mono.Cecil.Binary/AggressiveReflectionReader.cs: protect
465 against zeroed tokens.
467 2007-12-15 Jb Evain <jbevain@novell.com>
469 * Mono.Cecil.Binary/ImageReader.cs: fix crash when reading
470 some non .net binaries.
472 2007-11-22 Sebastien Pouliot <sebastien@ximian.com>
474 * Mono.Cecil/SecurityDeclarationReader.cs: Change default read
475 value to true. Fix reading 2.0 security declaration format used by
476 MS compilers (#343553).
478 2007-11-15 Rodrigo B. de Oliveira <rodrigobamboo@gmail.com>
480 * Mono.Cecil.Cil/MethodBody.cs:
481 Fixed Optimize for ldc_i4
483 2007-11-15 Rodrigo B. de Oliveira <rodrigobamboo@gmail.com>
485 * Mono.Cecil.Cil/DocumentLanguage.cs
486 Mono.Cecil.Cil/DocumentLanguageVendor.cs:
487 Compact Framework support by using Guid(string) if CF_2_0 is defined
489 2007-11-01 Jb Evain <jbevain@novell.com>
491 * Mono.Cecil/MethodReturnType.cs: based on a patch by
492 Ivan <ivanjh@gmail.com>. Fix for cloning methods with
493 marshalers on return type.
495 2007-10-31 Jb Evain <jbevain@novell.com>
497 * Mono.Cecil.Binary/ImageReader.cs: fix for the case where
498 the export table export zero functions.
500 2007-10-18 Jb Evain <jbevain@novell.com>
502 * Mono.Cecil.Cil/MethodBody.cs: Add an Optimize method which
503 is the opposite of Simplify. Based on a patch by Carlo.
505 * Mono.Cecil.Cil/CodeWriter.cs: don't care about reducing MaxStack.
507 2007-10-11 Jb Evain <jbevain@novell.com>
509 * Mono.Cecil/TypeReference.cs: add a IsNested helper property.
511 * Mono.Cecil/ReflectionWriter.cs
512 Mono.Cecil.Signatures/SignatureWriter.cs:
513 Integrate patch for Carlo, start working on enum writing
516 2007-10-09 Nestor Salceda <nestor.salceda@gmail.com>
518 * mono-cecil.pc.in: Updated the version number.
520 2007-10-09 Jb Evain <jbevain@novell.com>
522 * Mono.Cecil.Cil/Instruction.cs
523 Mono.Cecil.Cil/CodeWriter.cs:
524 Move CodeWriter.GetSize (Instruction) to Instruction.
526 Integration of patches from Carlo Kok <ck@remobjects.com>:
528 * Mono.Cecil.Cil/Document.cs
529 Mono.Cecil.Cil/DocumentType.cs
530 Mono.Cecil.Cil/DocumentLanguage.cs
531 Mono.Cecil.Cil/DocumentLanguageVendor.cs:
532 Use plain guids for Document properties so it's easy
533 for third party document providers to use their own.
535 * Mono.Cecil/ParameterDefinition.cs:
536 Clean or set the HasFieldMarshal flag when setting
537 MarshalSpecs on parameters.
539 * Mono.Cecil/AssemblyNameReference.cs:
540 Protect against null culture.
542 * Mono.Cecil/FieldDefinition.cs:
543 Clean or set the HasFieldMarshal flag when setting
544 MarshalSpecs on fields.
546 * Mono.Cecil/GenericInstanceType.cs:
547 Properly initialize the IsValueType from the element type.
549 2007-10-09 Jb Evain <jbevain@novell.com>
551 * Mono.Cecil/ReflectionWriter.cs: check for duplicates
552 in the MemberRef row.
554 2007-10-08 Sebastien Pouliot <sebastien@ximian.com>
556 * standalone.make: Revert changes so standalone Cecil (in SVN) can
557 be built using this Makefile (required for Gendarme);
558 * README: Update build and bug instructions.
560 2007-10-07 Jb Evain <jbevain@novell.com>
562 * Mono.Cecil/BaseAssemblyResolver.cs: first lookup assemblies
563 in the specified directories before trying the framework dir.
565 2007-10-06 Jb Evain <jbevain@novell.com>
567 * Mono.Cecil.Cil/OpCode.cs: make that a struct again, it
568 make the 2.1 profile explode. Will investigate why.
570 2007-10-06 Jb Evain <jbevain@novell.com>
572 * Mono.Cecil/MethodCallingConvention.cs: Not a [Flag]
574 2007-10-05 Jb Evain <jbevain@novell.com>
576 * Mono.Cecil.Cil/OpCode.cs: Change OpCode from struct to class
577 to avoid copying everything everytime.
579 2007-09-28 Jb Evain <jbevain@novell.com>
581 * Mono.Cecil/SecurityDeclarationReader.cs:
582 Adapt patch from Carlo Kok <ck@remobjects.com>.
583 Properly read unicode string constants.
585 * Mono.Cecil/SecurityDeclarationReader.cs:
586 Adapt patch from Carlo Kok <ck@remobjects.com>.
587 For some MS assemblies, the security declaration contains
590 2007-09-24 Jb Evain <jbevain@novell.com>
592 * Mono.Cecil/ModuleDefinition.cs: after a FullLoad, the symbol
593 reader is not needed anymore.
595 2007-09-18 Jb Evain <jbevain@novell.com>
597 * Mono.Cecil.Cil/MethodBody.cs:
598 Adapt a patch from Ivan <ivanjh@gmail.com>.
599 Fix cloning of the This parameter.
601 2007-09-12 Jb Evain <jbevain@novell.com>
603 * Mono.Cecil/ReflectionReader.cs
604 Mono.Cecil.Signatures/SignatureReader.cs
605 Mono.Cecil.Signatures/TypeSpec.cs
606 Mono.Cecil.Signatures/SignatureWriter.cs:
607 Deal with custom mods on typespecs.
609 2007-09-12 Jb Evain <jbevain@novell.com>
611 * Mono.Cecil.Binary/ImageReader.cs: some 64bits assemblies
612 have a strange header without import tables.
614 2007-09-09 Jb Evain <jbevain@novell.com>
616 * Mono.Cecil/GenericContext.cs
617 Mono.Cecil/ReflectionReader.cs
618 Mono.Cecil/DefaultImporter.cs:
619 Better handling of generic instances of references, where
620 the number of generic parameters is not known.
622 2007-09-06 Jb Evain <jbevain@novell.com>
624 * Mono.Cecil/MethodDefinition: add Is** methods for MethodImplAttributes.
626 2007-09-04 Jb Evain <jbevain@novell.com>
628 * Mono.Cecil/ReflectionWriter.cs:
629 Adapt a patch by Ewout Prangsma <ewout@tallapplications.com>.
630 Cache the typespec tokens instead of the typespec themselves
631 because GenericParameters are somethimes considered as typespecs.
633 2007-08-28 Jb Evain <jbevain@novell.com>
635 * Mono.Cecil.Cil/CodeWriter.cs
636 Mono.Cecil/ReflectionWriter.cs
637 Mono.Cecil.Cil/SymbolStoreHelper.cs
638 Mono.Cecil.Signatures/SignatureWriter.cs:
639 Generate proper variables signatures for symbols
642 2007-08-19 Jb Evain <jbevain@novell.com>
644 * Mono.Cecil.Cil/CodeReader.cs:
645 Deal with generic exceptions.
647 2007-08-15 Jb Evain <jbevain@novell.com>
650 Mono.Cecil.Cil/OpCodes.cs:
651 Fix bug spotted by Jesse Jones, ldelem.any has a
652 stack behavior pop of popref, popi.
654 2007-08-15 Jb Evain <jbevain@novell.com>
656 * Mono.Cecil/TypeReference.cs
657 Mono.Cecil/TypeSpecification.cs:
658 TypeSpecification.Module return the module of the elemen
661 2007-08-13 Rodrigo B. de Oliveira <rodrigobamboo@gmail.com>
664 Mono.Cecil/AssemblyInfo.cs:
665 Ability to pass custom defines to the c# compiler through
666 the csc.defines property. KEYFILE can be used to force
667 an AssemblyKeyFile attribute on AssemblyInfo.cs so strongly
668 signed versions of Mono.Cecil can be produced on .net 1.1,
671 2007-08-13 Jb Evain <jbevain@novell.com>
673 * Mono.Cecil.Cil/CilWorker.cs:
676 2007-08-06 Jb Evain <jbevain@novell.com>
678 * Mono.Cecil.Cil/CilWorker.cs:
679 Fix the linked list after an InsertBefore, InsertAfter.
681 2007-08-02 Jb Evain <jbevain@novell.com>
683 * Mono.Cecil/GenericParameter.cs
684 Mono.Cecil/FieldDefinition.cs
685 Mono.Cecil/TypeDefinition.cs
686 Mono.Cecil/MethodDefinition.cs
687 Mono.Cecil/EventDefinition.cs
688 Mono.Cecil/PInvokeInfo.cs
689 Mono.Cecil/Resource.cs
690 Mono.Cecil/ParameterDefinition.cs
691 Mono.Cecil/PropertyDefinition.cs:
693 Add Isxxx properties based on the xxxAttributes enums.
695 2007-07-23 Raja R Harinath <rharinath@novell.com>
698 * Makefile (LIBRARY_PACKAGE): Set to none.
699 (install-local): Remove.
701 2007-07-21 Jb Evain <jbevain@novell.com>
703 * Mono.Cecil/TypeReference.cs
704 Mono.Cecil/TypeSpecification.cs:
705 Add a new GetOriginalType () method.
707 * Mono.Cecil/MethodReference.cs
708 Mono.Cecil/MethodSpecification.cs:
709 Add a new GetOriginalMethod () method.
711 2007-07-19 Jb Evain <jbevain@novell.com>
713 * Mono.Cecil/AssemblyFactory.cs
714 Mono.Cecil.Binary/Image.cs:
715 Update the fileinfo after writing an assembly
718 2007-07-19 Jb Evain <jbevain@novell.com>
720 * Mono.Cecil/ReflectionReader.cs
721 Mono.Cecil.Cil/CodeReader.cs
722 Mono.Cecil.Signature/SignatureReader.cs:
723 Better handling of the sentil in the varargs methods.
725 * Mono.Cecil/ReflectionReader.cs
726 Mono.Cecil/SentinelType.cs
727 Mono.Cecil.Cil/CodeWriter.cs:
728 Mono.Cecil.Signatures/SignatureReader.cs:
729 Fix handling of varargs methods.
731 2007-07-18 Jb Evain <jbevain@novell.com>
733 * Mono.Cecil.Cil/CodeReader.cs
734 Mono.Cecil.Cil/CodeWriter.cs:
735 Deal with non-sense instructions that some
738 * Mono.Cecil/AggressiveReflectionReader.cs:
739 Deal with out of range properties.
740 * Mono.Cecil.Metadata/StringsHeap.cs:
741 Deal with out of range string indexes.
743 2007-07-17 Jb Evain <jbevain@novell.com>
745 * Mono.Cecil/AggressiveReflectionReader.cs:
746 Add some gards against zeroed tokens.
748 * Mono.Cecil.Metadata/Utilities.cs:
749 Return zero instead of throwing on invalid tags.
750 Allow Cecil to read assemblies partially broken
753 2007-07-14 Gert Driesen <drieseng@users.sourceforge.net>
755 * default.build: Fix relative path to key. Avoid use of ugly foreach
756 contruct. Spaces to tabs.
757 * Mono.Cecil.csproj: Fix relative path to key.
758 * standalone.make: Fix relative path to key and config.make.
760 2007-07-03 Jb Evain <jbevain@novell.com>
762 * Mono.Cecil/BaseAssemblyResolver.cs:
763 Expose a way to add default directories
764 where the assemblies are first looked for.
766 2007-06-20 Jb Evain <jbevain@novell.com>
768 * Mono.Cecil/IReferenceImporter.cs => IImporter.cs
769 Mono.Cecil/DefaultReferenceImporter.cs => DefaultImporter.cs
771 * Mono.Cecil/ReflectionHelper.cs
772 Mono.Cecil/DefaultReferenceImporter.cs
773 Mono.Cecil/ModuleDefinition.cs:
774 Move Cecil types import logic into
775 the DefaultReferenceImporter.
777 Needed by the merger and the extractor.
779 2007-06-19 Jb Evain <jbevain@novell.com>
781 * Mono.Cecil.Cil/MethodBody.cs:
782 Avoid invalid cast by properly simplifying
785 * Mono.Cecil.Cil/OpCodes.cs:
787 leave.s is a macro instruction.
789 * Mono.Cecil/TypeDefinition.cs
790 Mono.Cecil/ParameterDefinition.cs:
793 2007-06-18 Jb Evain <jbevain@novell.com>
795 * Mono.Cecil/ReflectionReader.cs:
796 Fix custom mods for fields ref.
798 2007-06-13 Jb Evain <jbevain@novell.com>
800 Integrated patches by:
801 Paul Apostolescu <papostolescu@fortifysoftware.com>
804 Mono.Cecil/ReflectionReader.cs
805 Mono.Cecil.Signatures/SignatureWriter.cs:
806 In named args, objects are encoded as boxed.
809 Mono.Cecil/IMemberDefinition.cs
810 Mono.Cecil/Constants.cs
811 Mono.Cecil/ReflectionReader.cs
812 Mono.Cecil/AggressiveReflectionReader.cs:
813 Do not take into account special _Deleted
817 Mono.Cecil/StructureReader.cs:
818 Read the flags of the references as well.
821 Mono.Cecil.Metadata/UserStringsHeap.cs:
822 Don't bother getting a string from the bytes
823 if the length is < 2 (0, or 0 + an encoding flag)
826 Mono.Cecil/ReflectionHelper.cs:
827 Update the value type flags of types
828 when they are imported if the type
829 reference was first seen as a type reference.
832 Mono.Cecil.Signature/SignatureWriter.cs:
833 Patch to handle nullref values for types in
834 custom attributes arguments.
836 2007-06-13 Jb Evain <jbevain@novell.com>
838 * Mono.Cecil/StructureWriter.cs,
839 Mono.Cecil/ReflectionWriter.cs:
840 Revert the on demand creation of memberref.
842 2007-06-12 Jb Evain <jbevain@novell.com>
844 * Mono.Cecil/CallSite.cs
845 Mono.Cecil/ModuleReference.cs
846 Mono.Cecil/CustomAttribute.cs
847 Mono.Cecil/AssemblyDefinition.cs
848 Mono.Cecil/SecurityDeclaration.cs
849 Mono.Cecil/AssemblyNameReference.cs
850 Mono.Cecil/MemberReference.cs
851 Mono.Cecil/Resource.cs
852 Mono.Cecil/ParameterReference.cs:
853 Implement explicitely IAnnotationProvider.
855 2007-06-05 Jb Evain <jbevain@novell.com>
857 * Mono.Cecil/AssemblyNameReference.cs:
858 Cache the fullname when possible.
860 2007-05-31 Jb Evain <jbevain@novell.com>
862 * Mono.Cecil/ModuleDefinition.cs:
863 Add types to the module and members to the context
866 * Mono.Cecil/BaseAssemblyResolver.cs:
867 Improve resolve, works for people requiring
868 .net 1.0 assemblies when they only have 1.1.
870 2007-05-30 Jb Evain <jbevain@novell.com>
872 * Mono.Cecil/DefaultAssemblyResolver.cs:
873 Add a RegisterAssembly method to register an
874 assembly to the cache without having to resolve it.
876 * Mono.Cecil/DefaultReferenceImporter.cs:
877 Make methods virtual.
879 * Mono.Cecil.dll.sources
881 Mono.Cecil/ReflectionHelper.cs
882 Mono.Cecil/IReferenceImporter.cs
883 Mono.Cecil/FieldDefinition.cs
884 Mono.Cecil/CustomAttribute.cs
885 Mono.Cecil/ImportContext.cs
886 Mono.Cecil/NullReferenceImporter.cs
887 Mono.Cecil/MethodDefinition.cs
888 Mono.Cecil/EventDefinition.cs
889 Mono.Cecil/ReflectionController.cs
890 Mono.Cecil/ModuleDefinition.cs
891 Mono.Cecil/GenericContext.cs
892 Mono.Cecil/DefaultReferenceImporter.cs
893 Mono.Cecil/PropertyDefinition.cs:
894 Provide a IReferenceImporter to customize how
895 types are injected from an assembly to another.
897 2007-05-28 Jb Evain <jbevain@novell.com>
899 * Borrow annotations concept from boo ast node.
900 Should be useful for the linker.
902 2007-05-23 Jb Evain <jbevain@novell.com>
904 * Mono.Cecil/StructureWriter.cs
905 Mono.Cecil/ReflectionWriter.cs
906 Mono.Cecil.Cil/CodeWriter.cs:
907 Emit MemberReferences rows on demand.
909 2007-05-16 Jb Evain <jb@nurv.fr>
911 * Mono.Cecil.Binary/ImageReader.cs:
912 Fix reading of the debug header for
913 headers half way emitted by .net SRE.
915 * Mono.Cecil/BaseAssemblyResolver:
916 try to resolve unversionned assemblies.
918 2007-05-09 Jb Evain <jb@nurv.fr>
920 * Mono.Cecil.Binary/Image.cs:
921 Throw when rva cannot be resolved.
924 Mono.Cecil.Binary/ExportTable.cs
925 Mono.Cecil.Binary/BaseImageVisitor.cs
926 Mono.Cecil.Binary/ImageReader.cs
927 Mono.Cecil.Binary/IBinaryVisitor.cs
928 Mono.Cecil.Binary/Image.cs
929 Mono.Cecil.Binary/ImageInitializer.cs
930 Mono.Cecil/StructureReader.cs
931 Mono.Cecil/ReflectionWriter.cs:
932 When present, read the export table, so that people
933 reading non managed assemblies can use the Mono.Cecil.Binary
936 Fix the bug when section name is 8 char long.
938 Based on a patch by Pavel Savara <pavel.savara@gmail.com>.
940 2007-04-27 Jb Evain <jb@nurv.fr>
942 * Mono.Cecil/AssemblyNameReference.cs:
943 Allow the computation of pktoken on CF_2_0.
945 2007-04-25 Jb Evain <jb@nurv.fr>
947 * Mono.Cecil/ModuleDefinition.cs
948 Mono.Cecil/ReflectionWriter.cs
949 Mono.Cecil.Cil/ISymbolWriter.cs
950 Mono.Cecil.Signatures/SignatureWriter.cs
951 Start working on local var debug infos emitting.
953 2007-04-08 Jb Evain <jb@nurv.fr>
955 * Mono.Cecil/ParameterAttributes.cs:
956 ParameterAttributes.None
958 2007-03-30 Jb Evain <jb@nurv.fr>
961 Remove uneeded tests as an optimizations.
962 Based on a suggestion by Carlo Kok <ck@remobjects.com>.
964 * Mono.Cecil.Metadata/StringsHeap.cs:
965 Optimize GetStringAt, patch by:
966 Carlo Kok <ck@remobjects.com>
968 2007-03-22 Jb Evain <jbevain@gmail.com>
970 * Mono.Cecil/AssemblyInfo.cs:
971 Bump to 0.5.0.0 for the sake of our packagers friends.
974 * Mono.Cecil/StructureWriter.cs:
975 Throw a NotSupportedException instead of a NIE
976 for mixed mode assemblies.
978 2007-03-20 Jb Evain <jbevain@gmail.com>
980 * Mono.Cecil.Metadata/MetadataWriter.cs:
981 Correct epilog for unicode user strings heap.
983 2007-03-16 Jb Evain <jbevain@gmail.com>
985 * Mono.Cecil.Cil/CodeReader.cs
986 Mono.Cecil.Cil/MethodBody.cs:
987 Add a MethodBody.Simplify method to expand
990 * Mono.Cecil.dll.sources
992 Mono.Cecil.Cil/OpCode.cs
993 Mono.Cecil.Cil/OpCodes.cs
994 Mono.Cecil.Cil/Code.cs
996 CodeGen/templates/OpCodes.cs
997 CodeGen/templates/Code.cs:
998 Add a Code enumeration to simplify working with
1001 2007-03-12 Jb Evain <jbevain@gmail.com>
1003 * Mono.Cecil.Metadata/UserStringsHeap.cs:
1004 Avoid trailing blank on some systems.
1006 2007-02-22 Jb Evain <jbevain@gmail.com>
1008 * Mono.Cecil/ReflectionWriter.cs:
1009 Deal with sentinels on simple methodrefs.
1011 2007-02-22 Jb Evain <jbevain@gmail.com>
1013 * Mono.Cecil.dll.sources
1016 Mono.Cecil.Metadata/ParamPtr.cs
1017 Mono.Cecil.Metadata/MethodSpec.cs
1018 Mono.Cecil.Metadata/BaseMetadataVisitor.cs
1019 Mono.Cecil.Metadata/EventPtr.cs
1020 Mono.Cecil.Metadata/MetadataTableReader.cs
1021 Mono.Cecil.Metadata/MetadataTableWriter.cs
1022 Mono.Cecil.Metadata/MetadataRowReader.cs
1023 Mono.Cecil.Metadata/MetadataRowWriter.cs
1024 Mono.Cecil.Metadata/PropertyPtr.cs
1025 Mono.Cecil.Metadata/FieldPtr.cs
1026 Mono.Cecil.Metadata/MethodPtr.cs
1027 Mono.Cecil.Metadata/IMetadataVisitor.cs:
1028 Add *Ptr table definitions.
1030 * Mono.Cecil.dll.sources
1032 Mono.Cecil/CallSite.cs
1033 Mono.Cecil/IMethodSignature.cs
1034 Mono.Cecil/SentinelType.cs
1035 Mono.Cecil/FunctionPointerType.cs
1036 Mono.Cecil/MethodReference.cs
1037 Mono.Cecil/ReflectionReader.cs
1038 Mono.Cecil/ReflectionWriter.cs
1039 Mono.Cecil.Cil/CodeReader.cs
1040 Mono.Cecil.Cil/CodeWriter.cs:
1041 Implement support for writing function pointers.
1042 Based on a patch by Argiris Kirtzidis <akyrtzi@gmail.com>
1044 * Mono.Cecil/Constants.cs:
1045 Make it public due to some demands.
1047 2007-02-21 Jb Evain <jbevain@gmail.com>
1049 * Mono.Cecil.Signatures/SignatureReader.cs:
1050 do not read enums if the resolution is not forced until
1051 cecil knows how to write them.
1053 * Mono.Cecil/ReflectionWriter.cs
1054 Mono.Cecil.Signatures/SzArray.cs
1055 Mono.Cecil.Signatures/Array.cs
1056 Mono.Cecil.Signatures/SignatureReader.cs
1057 Mono.Cecil.Signatures/TypeSpec.cs
1058 Mono.Cecil.Signatures/SignatureWriter.cs:
1059 handle custom mods on arrays signatures.
1061 * Mono.Cecil/ReflectionReader.cs:
1062 Handle fields TypeSpecs that have an initial value.
1063 Based on a patch by Argiris Kirtzidis <akyrtzi@gmail.com>
1065 2007-01-29 Jb Evain <jbevain@gmail.com>
1067 * Mono.Cecil.Metadata/MetadataWriter.cs:
1068 Save a byte ! Yeah !
1070 2006-12-18 Jb Evain <jbevain@gmail.com>
1072 * Mono.Cecil/ReflectionReader.cs:
1073 Fix a bug in reading MemberRef pointing to MethodDef.
1075 2006-12-16 Jb Evain <jbevain@gmail.com>
1077 * Mono.Cecil/StructureReader.cs:
1078 Prevent a NRE if we're reading a multi module
1079 assembly through a stream if a module is not find.
1082 2006-12-07 Jb Evain <jbevain@gmail.com>
1084 * Mono.Cecil/ReflectionWriter.cs:
1085 Allow an AssemblyDefinition to be written
1088 2006-12-05 Jb Evain <jbevain@gmail.com>
1090 * Mono.Cecil/ReflectionWriter.cs:
1091 Deal with nullref default parameters.
1093 2006-12-03 Jb Evain <jbevain@gmail.com>
1095 * Mono.Cecil/ReflectionWriter.cs:
1096 Handle constant where the parameter is object
1097 and the signature is something else.
1099 2006-11-27 Jb Evain <jbevain@gmail.com>
1101 * Mono.Cecil/TypeDefinitionCollection.cs
1102 CodeGen/templates/NamedCollection.cs:
1103 Allow multiple typedefs with the same namespace+name
1104 to be able to read unvalid assemblies.
1106 * Mono.Cecil/ReflectionReader.cs
1107 Mono.Cecil/ReflectionWriter.cs
1108 Mono.Cecil.Signatures/PropertySig.cs
1109 Mono.Cecil.Signatures/SignatureReader.cs
1110 Mono.Cecil.Signatures/SignatureWriter.cs:
1111 - Deal with modifiers on properties.
1112 - Deal with non standard signatures when the byref
1113 flag is placed after the custom modifiers.
1114 Mono.Cecil/StructureReader.cs:
1115 - Properly detect wether an assembli is a dll or not.
1117 Based on a patch by Argiris Kirtzidis <akyrtzi@gmail.com>.
1119 2006-11-25 Jb Evain <jbevain@gmail.com>
1121 * Mono.Cecil/ReflectionReader.cs
1122 Mono.Cecil/ReflectionWriter.cs
1123 Mono.Cecil.Signatures/GenericArg.cs
1124 Mono.Cecil.Signatures/GenericInstSignature.cs
1125 Mono.Cecil.Signatures/SignatureReader.cs
1126 Mono.Cecil.Signatures/SignatureWriter.cs:
1127 Deal with modifiers for generic arguments.
1128 Based on a patch by Argiris Kirtzidis <akyrtzi@gmail.com>.
1130 * Mono.Cecil.Binary/ImageWriter.cs:
1131 Fix a bug in writing rsrc sections.
1133 * Mono.Cecil.Cil/CodeReader.cs:
1134 Do some refactoring.
1136 * Mono.Cecil.Metadata/MetadataToken.cs:
1137 Add a ctor to get a MetadataToken
1138 from an integer token.
1140 2006-11-22 Jb Evain <jbevain@gmail.com>
1142 * Mono.Cecil.Cil/GuidAttribute.cs:
1143 Fix for CF compilation.
1145 2006-11-16 Jb Evain <jbevain@gmail.com>
1147 * Mono.Cecil/StructureReader.cs:
1148 If an assembly has no managed assembly defined,
1149 consider it as a dll.
1151 2006-11-08 Jb Evain <jbevain@gmail.com>
1153 * Mono.Cecil/BaseAssemblyResolver.cs:
1154 Handles different kind of GAC on Windows.
1156 2006-11-07 Jb Evain <jbevain@gmail.com>
1158 * Mono.Cecil/ReflectionHelper.cs:
1159 Don't import the flags of an assembly name reference.
1161 2006-11-03 Jb Evain <jbevain@gmail.com>
1163 * Mono.Cecil/PropertyDefinition.cs:
1164 Fix property cloning.
1165 Patch by Alex Prudkiy <prudkiy@mail.ru>
1167 2006-10-26 Jb Evain <jbevain@gmail.com>
1169 * Mono.Cecil/ReflectionReader.cs:
1170 Use the proper generic context when reading memberrefs.
1172 2006-10-11 Jb Evain <jbevain@gmail.com>
1174 * Mono.Cecil.Cil/Document.cs:
1175 Complete a little bit.
1177 * Mono.Cecil/SecurityDeclarationReader.cs:
1178 Get rid of a lot of exceptions when creating the security
1181 2006-10-10 Jb Evain <jbevain@gmail.com>
1183 * Mono.Cecil/ReflectionReader.cs:
1184 Mono.Cecil/CustomAttribute.cs:
1185 Mono.Cecil.Signatures/SignatureReader.cs:
1186 Mono.Cecil/SecurityDeclarationReader.cs:
1187 Patch from: Eyal Alaluf <eyala@mainsoft.com>.
1188 Add support for resolving custom attributes that contain references
1189 to enum in other assemblies.
1191 2006-10-09 Jb Evain <jbevain@gmail.com>
1193 * Mono.Cecil/IRequireResolving.cs
1194 Mono.Cecil/CustomAttribute.cs
1195 Mono.Cecil/SecurityDeclaration.cs
1196 Mono.Cecil/SecurityDeclarationReader.cs
1197 Mono.Cecil/AggressiveReflectionReader.cs
1198 Mono.Cecil/ReflectionWriter.cs
1199 Mono.Cecil/ModuleDefinition.cs:
1200 Introduce the interface IRequireResolving implemented
1201 by CustomAttribute and SecurityDeclaration for when they can't
1202 be read without loading another assembly.
1204 * Mono.Cecil/SecurityDeclarationReader.cs:
1205 Prevent Cecil to crash when it can not get the type
1208 2006-10-04 Eyal Alaluf <eyala@mainsoft.com>
1210 * Mono.Cecil/StructureReader.cs:
1211 Visit the module we load when a DLL has more then 1 module.
1212 Mono.Cecil/AssemblyNameReference.cs:
1213 Allow "PublicToken=null" when parsing an assembly full name.
1215 2006-10-03 Jb Evain <jbevain@gmail.com>
1217 * Mono.Cecil/BaseAssemblyResolver.cs
1218 Mono.Cecil.Binary/ResourceReader.cs:
1219 CompactFramework fix.
1221 2006-10-02 Jb Evain <jbevain@gmail.com>
1223 * implement IList on the named collections.
1225 * implement the first bits of Win32 resources handling.
1227 * Mono.Cecil/ReflectionHelper.cs:
1228 It does not make sense to import the assembly flags.
1230 2006-09-28 Jb Evain <jbevain@gmail.com>
1232 * Mono.Cecil/MethodDefinitionCollection.cs
1233 Mono.Cecil/ConstructorCollection.cs
1234 Mono.Cecil.Cil/InstructionCollection.cs
1235 CodeGen/templates/IndexedCollection.cs
1238 2006-09-27 Jb Evain <jbevain@gmail.com>
1240 * *Collection.cs: use CollectionBase when possible.
1242 2006-09-24 Jb Evain <jbevain@gmail.com>
1244 * Mono.Cecil/AssemblyFactory.cs
1245 Mono.Cecil/ReflectionWriter.cs
1246 Mono.Cecil.Cil/ISymbolStoreFactory.cs
1247 Mono.Cecil.Cil/SymbolStoreHelper.cs:
1248 Some more work on the debugging infos api.
1250 * Mono.Cecil/MethodDefinitionCollection.cs
1251 Mono.Cecil/ConstructorCollection.cs
1252 CodeGen/templates/IndexedCollection.cs:
1253 Fix the GetConstructor/GetMethod methods.
1254 Based on a patch by Jon Chambers.
1256 2006-09-20 Jb Evain <jbevain@gmail.com>
1258 * Mono.Cecil/StructureWriter.cs
1259 Mono.Cecil/ModuleDefinition.cs
1260 Mono.Cecil/ReflectionWriter.cs
1261 Mono.Cecil/AssemblyFactory.cs
1262 Mono.Cecil.Cil/ISymbolReader.cs
1263 Mono.Cecil.Cil/CodeWriter.cs
1264 Mono.Cecil.Cil/ISymbolWriter.cs
1265 Mono.Cecil.Cil/SymbolStoreHelper.cs:
1266 Working on the debug infos stuff.
1268 * Mono.Cecil.Signatures/SignatureReader.cs:
1269 Ensure custom attributes are read when they can be.
1270 Patch by Sebastien Pouliot.
1272 2006-09-19 Jb Evain <jbevain@gmail.com>
1274 * Mono.Cecil/ModuleDefinition.cs
1275 Mono.Cecil/ReflectionReader.cs
1276 Mono.Cecil/ReflectionWriter.cs
1277 Mono.Cecil.Cil/Document.cs
1278 Mono.Cecil.Cil/Instruction.cs
1279 Mono.Cecil.Cil/SequencePoint.cs
1280 Mono.Cecil.Cil/CodeReader.cs
1281 Mono.Cecil.Cil/IScopeProvider.cs
1282 Mono.Cecil.Cil/ISymbolReader.cs
1283 Mono.Cecil.Cil/CodeWriter.cs
1284 Mono.Cecil.Cil/ISymbolWriter.cs
1285 Mono.Cecil.Cil/IVariableDefinitionProvider.cs
1286 Mono.Cecil.Cil/SymbolStoreHelper.cs
1287 Mono.Cecil.Cil/ISymbolStoreFactory.cs
1288 Mono.Cecil.Cil/ScopeCollection.cs
1289 Mono.Cecil.Cil/Scope.cs:
1290 Work on the architecture for debugging infos.
1292 * Mono.Cecil.dll.sources
1293 Mono.Cecil.Cil/Document.cs
1294 Mono.Cecil.Cil/IVariableDefinitionProvider.cs
1295 Mono.Cecil.Cil/SequencePoint.cs
1296 Mono.Cecil.Cil/ScopeCollection.cs
1297 Mono.Cecil.Cil/BaseCodeVisitor.cs
1298 Mono.Cecil.Cil/CodeReader.cs
1299 Mono.Cecil.Cil/IScopeProvider.cs
1300 Mono.Cecil.Cil/MethodBody.cs
1301 Mono.Cecil.Cil/ICodeVisitor.cs
1302 Mono.Cecil.Cil/CodeWriter.cs
1303 Mono.Cecil.Cil/Scope.cs
1304 Mono.Cecil.Cil/VariableDefinitionCollection.cs
1306 First bits of the debug infos stuff.
1308 * Mono.Cecil.Cil/InstructionCollection.cs
1309 CodeGen/templates/IndexedCollection.cs:
1310 The outside instruction has an offset of -1.
1312 * Mono.Cecil.Cil/OpCodes.cs
1313 Mono.Cecil.Cil/CodeReader.cs
1314 Mono.Cecil.Cil/OpCode.cs
1315 CodeGen/templates/OpCodes.cs:
1316 Simpliest way of dealing with different opcodes.
1318 2006-09-07 Jb Evain <jbevain@gmail.com>
1320 * support PE32+ file format.
1322 * Add an Outside instruction to an InstructionCollection.
1323 Cleaner than the old null instruction.
1325 * Mono.Cecil/MarshalSpec.cs
1326 Mono.Cecil/ReflectionReader.cs
1327 Mono.Cecil/ReflectionWriter.cs
1328 CodeGen/cecil-mig.rb:
1329 Refactor names from Desc to Spec.
1332 Remove the unused events stuff.
1334 2006-08-31 Jb Evain <jbevain@gmail.com>
1336 * /!\ Breaking changes:
1337 On the way to Cecil 0.5. Remove meaningless interfaces.
1338 GenericParamAttributes -> GenericParameterAttributes
1339 ParamAttributes -> ParamAttributes
1341 I'll provide a migration path with a script.
1343 Please do not use this revision, other changes are on the way.
1345 2006-08-26 Jb Evain <jbevain@gmail.com>
1347 * Mono.Cecil/ReflectionReader.cs:
1348 Fix a bug when reading some parameters.
1350 2006-08-26 Jb Evain <jbevain@gmail.com>
1352 * Mono.Cecil.Cil/ReflectionWriter.cs:
1353 Fix the computation of the size of the last opcode in case
1354 of an exception handler is pointing outside the cil stream.
1356 * Mono.Cecil.Cil/ReflectionWriter.cs:
1357 Don't use seh tiny headers when the size can't fit in a byte.
1359 * Mono.Cecil.Cil/ReflectionWriter.cs:
1360 Fix a problem in the computation of the stack when the IL
1361 is somewhat strange.
1363 2006-08-23 Jb Evain <jbevain@gmail.com>
1365 * Mono.Cecil/AssemblyInfo.cs:
1366 Cecil 0.4.3 release.
1368 2006-08-21 Jb Evain <jbevain@gmail.com>
1370 * Mono.Cecil.Metadata/MetadataWriter.cs:
1371 Fix a bug in field initial values writing.
1373 * Mono.Cecil/BaseAssemblyResolver.cs:
1374 Look for assemblies in ./ first
1376 2006-08-17 Jb Evain <jbevain@gmail.com>
1378 * Mono.Cecil/BaseAssemblyResolver.cs:
1379 Resolve the corlib depending on its version.
1381 * Mono.Cecil/AssemblyName.cs
1382 Mono.Cecil/BaseAssemblyResolver.cs:
1383 Implement a AssemblyNameReference.Parse(string)
1385 * Mono.Cecil/TypeReferenceCollection.cs
1386 Mono.Cecil/ExternTypeCollection.cs
1387 Mono.Cecil/TypeDefinitionCollection.cs
1388 CodeGen/templates/NamedCollectionImplem.cs:
1389 Avoid infinite recursion.
1391 * Mono.Cecil/BaseAssemblyResolver.sc:
1392 Stay .net 1.1 compatible
1394 2006-08-16 Jb Evain <jbevain@gmail.com>
1396 * Mono.Cecil/IAssemblyResolver.cs
1397 Mono.Cecil/BaseAssemblyResolver.cs
1398 Mono.Cecil/DefaultAssemblyResolver.cs
1399 Mono.Cecil/AssemblyDefinition.cs
1400 Implement an assembly resolver.
1402 * Mono.Cecil/ReflectionReader.cs:
1403 Fix the initial value reading.
1404 Based on a report and a patch of Roei Erez <roeie@mainsoft.com>
1406 2006-08-15 Jb Evain <jbevain@gmail.com>
1408 * Mono.Cecil/TypeReferenceCollection.cs
1409 Mono.Cecil/ExternTypeCollection.cs
1410 Mono.Cecil/TypeDefinitionCollection.cs
1411 CodeGen/templates/NamedCollectionImplem.cs:
1412 Fix the CopyTo method.
1414 2006-07-19 Jb Evain <jbevain@gmail.com>
1416 * CodeGen/templates/IIndexedCollection.cs
1417 CodeGen/templates/IndexedCollectionImplem.cs
1418 Mono.Cecil/IConstructorCollection.cs
1419 Mono.Cecil/IMethodDefinitionCollection.cs
1420 Mono.Cecil/MethodDefinitionCollection.cs
1421 Mono.Cecil/ConstructorCollection.cs:
1422 Add a GetConstructor(bool,ParameterDefinitionCollection) method
1423 required by the linker.
1425 * Mono.Cecil.Metadata/MetadataReader.cs
1426 Mono.Cecil.Metadata/StringsHeap.cs:
1427 Read the string on demand, based on the index.
1428 Needed due to some obfuscators that create a string entry like
1429 xClassName, and make the pointer points to after the x.
1431 2006-07-03 Rodrigo B. de Oliveira <rodrigobamboo@gmail.com>
1432 * CodeGen/templates/ImageReader.cs
1433 Mono.Cecil.Binary/ImageReader.cs:
1434 CompactFramework compatibility.
1436 2006-07-02 Rodrigo B. de Oliveira <rodrigobamboo@gmail.com>
1438 * CodeGen/templates/ImageReader.cs
1439 Mono.Cecil.Binary/ImageReader.cs:
1440 Proper FileNotFoundException construction.
1442 * Mono.Cecil/MethodDefinition.cs
1443 Mono.Cecil/IMethod.cs:
1444 Helper properties IsInternalCall and IsRuntime.
1446 2006-06-21 Jb Evain <jbevain@gmail.com>
1448 * Mono.Cecil.Cil/CilWorker.cs:
1449 Fix ldc.i4.s emitting.
1451 2006-06-13 Jb Evain <jbevain@gmail.com>
1453 * Mono.Cecil/ReflectionWriter.cs:
1454 Fix for compiling on CF 1.
1455 * Mono.Cecil/StructureReader.cs:
1456 Fix for a "bug" when csc 7.1 emits an assembly
1457 with an assembly row, but no blob heap.
1460 2006-06-08 Jb Evain <jbevain@gmail.com>
1462 * Mono.Cecil/IMethod.cs
1463 Mono.Cecil/MethodDefinition.cs
1464 Mono.Cecil/ReflectionWriter.cs:
1465 Add a public HasBody property.
1467 2006-06-07 Jb Evain <jbevain@gmail.com>
1469 * Mono.Cecil/MethodDefinition.cs
1470 Mono.Cecil/ReflectionWriter.cs:
1471 Read and write method bodies only when allowed.
1473 2006-05-29 Jb Evain <jbevain@gmail.com>
1475 * Mono.Cecil/IMethodDefinition.cs
1476 Mono.Cecil/MethodDefinition.cs:
1477 Remove the useless CreateBody method.
1479 2006-05-27 Jb Evain <jbevain@gmail.com>
1481 * Mono.Cecil/StructureWriter.cs
1482 Mono.Cecil/ReflectionReader.cs
1483 Mono.Cecil/MethodDefinition.cs
1484 Mono.Cecil.Metadata/MetadataToken.cs
1485 Mono.Cecil.Signatures/SignatureReader.cs:
1486 Play better with mixed mode assemblies.
1488 * Mono.Cecil/SecurityDeclarationReader.cs
1489 Mono.Cecil/ReflectionWriter.cs
1490 Mono.Cecil.Signatures/SignatureReader.cs:
1491 Read/Write this awful load of crap that is sharepoint.
1493 2006-05-22 Jb Evain <jbevain@gmail.com>
1495 * Mono.Cecil.Cil/CilWorker.cs:
1496 Fix #78479. Patch by David Emsellem.
1498 2006-05-20 Jb Evain <jbevain@gmail.com>
1500 * CodeGen/templates/ImageReader.cs
1501 CodeGen/templates/ImageWriter.cs
1502 Mono.Cecil/AssemblyFactory.cs
1503 Mono.Cecil/StructureWriter.cs
1504 Mono.Cecil/Binary/ImageReader.cs
1505 Mono.Cecil/Binary/Image.cs
1506 Mono.Cecil/Binary/ImageWriter.cs
1507 Mono.Cecil.Metadata/MetadataWriter.cs:
1508 Optimize assembly writing.
1509 Add methods to read assemblies from byte arrays.
1511 * Mono.Cecil/StructureWriter.cs:
1512 Throw an exception when the target is an exe
1513 and no entry point have been setted.
1514 * Mono.Cecil/AssemblyFactory.cs:
1515 Add helpers method to defines assemblies.
1516 * Mono.Cecil/MethodDefinition.cs:
1517 Set the hasThis flag to the correct value.
1518 * Mono.Cecil.Cil/CodeReader.cs:
1520 * Mono.Xml/SmallXmlParser.cs:
1523 2006-05-18 Jb Evain <jbevain@gmail.com>
1525 * CodeGen/templates/MetadataTableReader.cs
1526 Mono.Cecil.Metadata/MetadataTableReader.cs
1527 Mono.Cecil.Metadata/TableCollection.cs
1528 Mono.Cecil.Metadata/TablesHeap.cs:
1529 Optimize a little bit.
1531 * CodeGen/templates/MetadataTableWriter.cs
1532 Mono.Cecil.Metadata/MetadataTableWriter.cs
1533 Mono.Cecil.Metadata/TableCollection.cs:
1534 Fix for last changeset.
1536 * Mono.Cecil.Metadata/RIdAttribute.cs:
1539 * Mono.Cecil/ReflectionReader.cs
1540 Mono.Cecil/StructureReader.cs
1541 Mono.Cecil/ReflectionWriter.cs
1542 Mono.Cecil/AggressiveReflectionReader.cs
1543 Mono.Cecil.Cil/CodeReader.cs
1544 CodeGen/templates/Utilities.cs
1545 CodeGen/templates/MetadataTableReader.cs
1546 CodeGen/templates/MetadataTableWriter.cs
1547 CodeGen/templates/Table.cs
1548 CodeGen/templates/MetadataRowReader.cs
1549 CodeGen/templates/MetadataRowWriter.cs
1550 Mono.Cecil.Metadata/Assembly.cs
1551 Mono.Cecil.Metadata/InterfaceImpl.cs
1552 Mono.Cecil.Metadata/PropertyMap.cs
1553 Mono.Cecil.Metadata/Constant.cs
1554 Mono.Cecil.Metadata/MethodSpec.cs
1555 Mono.Cecil.Metadata/DeclSecurity.cs
1556 Mono.Cecil.Metadata/TypeDef.cs
1557 Mono.Cecil.Metadata/GenericParamConstraint.cs
1558 Mono.Cecil.Metadata/MethodImpl.cs
1559 Mono.Cecil.Metadata/NestedClass.cs
1560 Mono.Cecil.Metadata/MetadataTableReader.cs
1561 Mono.Cecil.Metadata/AssemblyRefProcessor.cs
1562 Mono.Cecil.Metadata/AssemblyRef.cs
1563 Mono.Cecil.Metadata/AssemblyRefOS.cs
1564 Mono.Cecil.Metadata/Method.cs
1565 Mono.Cecil.Metadata/MetadataTableWriter.cs
1566 Mono.Cecil.Metadata/MetadataRowReader.cs
1567 Mono.Cecil.Metadata/ExportedType.cs
1568 Mono.Cecil.Metadata/CustomAttribute.cs
1569 Mono.Cecil.Metadata/Param.cs
1570 Mono.Cecil.Metadata/ClassLayout.cs
1571 Mono.Cecil.Metadata/MetadataRowWriter.cs
1572 Mono.Cecil.Metadata/Utilities.cs
1573 Mono.Cecil.Metadata/AssemblyOS.cs
1574 Mono.Cecil.Metadata/ModuleRef.cs
1575 Mono.Cecil.Metadata/FieldMarshal.cs
1576 Mono.Cecil.Metadata/GenericParam.cs
1577 Mono.Cecil.Metadata/ImplMap.cs
1578 Mono.Cecil.Metadata/TableCollection.cs
1579 Mono.Cecil.Metadata/TablesHeap.cs
1580 Mono.Cecil.Metadata/TypeRef.cs
1581 Mono.Cecil.Metadata/ManifestResource.cs
1582 Mono.Cecil.Metadata/File.cs
1583 Mono.Cecil.Metadata/EventMap.cs
1584 Mono.Cecil.Metadata/AssemblyProcessor.cs
1585 Mono.Cecil.Metadata/FieldLayout.cs
1586 Mono.Cecil.Metadata/Event.cs
1587 Mono.Cecil.Metadata/Field.cs
1588 Mono.Cecil.Metadata/Property.cs
1589 Mono.Cecil.Metadata/Module.cs
1590 Mono.Cecil.Metadata/MethodSemantics.cs
1591 Mono.Cecil.Metadata/StandAloneSig.cs
1592 Mono.Cecil.Metadata/FieldRVA.cs
1593 Mono.Cecil.Metadata/TypeSpec.cs
1594 Mono.Cecil.Metadata/IMetadataTable.cs
1595 Mono.Cecil.Metadata/MemberRef.cs:
1596 Fix the way the metadata tables are handled.
1598 * Mono.Cecil.Signatures/SignatureWriter.cs:
1599 Fix bug in string writing.
1601 2006-05-12 Jb Evain <jbevain@gmail.com>
1603 * Mono.Cecil/AssemblyInfo.cs:
1604 Hide the info if Cecil is embedded.
1606 2006-05-09 Jb Evain <jbevain@gmail.com>
1608 * cecil.build: rename to default.build
1610 2006-05-08 Jb Evain <jbevain@gmail.com>
1616 Add an msbuild file.
1618 2006-05-05 Jb Evain <jbevain@gmail.com>
1620 * Mono.Cecil/AssemblyFactory.cs
1621 Mono.Cecil/StructureReader.cs
1622 Mono.Cecil/ModuleDefinition.cs:
1623 Add an AssemblyFactory.GetAssemblyManifest method.
1625 2006-05-04 Jb Evain <jbevain@gmail.com>
1627 * Mono.Cecil/TableComparers.cs:
1628 TypeDef.Compare: the name is enough against <Module>.
1630 * Mono.Cecil/ReflectionWriter.cs:
1631 Fix writing of namedargs in custom attributes.
1633 2006-04-26 Jb Evain <jbevain@gmail.com>
1635 * Mono.Cecil.Signatures/SignatureReader.cs:
1636 Don't create tons of hashtables.
1638 2006-04-24 Jb Evain <jbveain@gmail.com>
1640 * Mono.Cecil.Cil/MethodBody.cs:
1643 2006-04-21 Jb Evain <jbevain@gmail.com>
1645 * Mono.Cecil/AssemblyFactory.cs
1646 Mono.Cecil.Binary/MemoryBinaryWriter.cs:
1647 Use MemoryStream::WriteTo when it's possible.
1649 2006-04-21 Rodrigo B. de Oliveira <rodrigobamboo@gmail.com>
1651 * Mono.Cecil/SecurityDeclaration.cs
1652 Mono.Cecil/ISecurityDeclaration.cs
1653 Mono.Cecil/SecurityDeclarationCollection.cs
1654 Mono.Cecil/ModuleDefinition.cs:
1655 Patch by Almann T. Goo (almann.goo@gmail.com) conditionally
1656 removing references to PermissionSet when compiling for the CompactFramework.
1658 * Mono.Cecil/CompactFrameworkCompatibility.cs:
1659 System.Security.PermissionSet definition no longer needed.
1661 2006-04-21 Jb Evain <jbevain@gmail.com>
1664 Fix typo in RemoveAt.
1666 2006-04-20 Jb Evain <jbevain@gmail.com>
1668 * Mono.Cecil/ReflectionWriter.cs:
1669 Fix writing of complex arrays.
1670 Now we roundtrip SharpDevelop.
1672 * Mono.Cecil/ReflectionWriter.cs
1673 Mono.Cecil/TableComparers.cs:
1674 Ensure <Module> will always be the first type.
1675 Fix roundtrip of Nemerle.
1677 2006-04-19 Jb Evain <jbevain@gmail.com>
1679 * Mono.Cecil.Cil/CodeWriter.cs:
1680 Handle the case where an handler points after the last
1681 instruction. Now we roundtrip db4o.
1683 * Mono.Cecil/IIndexedCollection.cs:
1685 Make every collection implement an indexed collection.
1687 2006-04-15 Jb Evain <jbevain@gmail.com>
1689 * Mono.Cecil/CustomAttribute.cs:
1690 Fix handling of types.
1692 2006-04-11 Jb Evain <jbevain@gmail.com>
1694 * Mono.Cecil/FieldDefinition.cs
1695 Mono.Cecil/ReflectionReader.cs
1696 Mono.Cecil/TypeDefinition.cs
1697 Mono.Cecil/IField.cs
1698 Mono.Cecil/ITypeDefinition.cs
1699 Mono.Cecil/ReflectionWriter.cs
1700 Mono.Cecil/AggressiveReflectionReader.cs
1701 Mono.Cecil.Cil/IVariable.cs
1702 Mono.Cecil.Cil/MethodBody.cs
1703 Mono.Cecil.Cil/VariableDefinition.cs
1704 Mono.Cecil.Cil/CodeWriter.cs:
1705 Don't use interfaces internally.
1707 * Mono.Cecil/TypeReference.cs:
1708 Make TypeReference extend MemberReference.
1710 * Mono.Cecil/Modifiers.cs
1711 Mono.Cecil.Cil/CodeReader.cs
1712 Mono.Cecil.Cil/CodeWriter.cs
1713 Mono.Cecil.Signatures/LocalVarSig.cs
1714 Mono.Cecil.Signatures/SignatureReader.cs:
1715 Fix modifiers on localvar signatures.
1716 Fix roundtrip of delphi assemblies.
1718 * Mono.Cecil/CustomAttribute.cs
1719 Mono.Cecil/ReflectionReader.cs
1720 Mono.Cecil/ReflectionWriter.cs
1721 Mono.Cecil.Signatures/SignatureWriter.cs:
1722 Work on complex custom attributes encoding.
1724 * Mono.Cecil/TableComparers.cs:
1727 2006-04-09 Eyal Alaluf <eyala@mainsoft.com>
1729 * Mono.Cecil/ReflectionReader.cs
1730 Cannot assume that TypeRefs are ordered is such a way that an outer
1731 class index comes always before all its inner classes.
1733 2006-04-06 Jb Evain <jbevain@gmail.com>
1735 * Mono.Cecil/ReflectionWriter.cs
1736 Mono.Cecil.Signatures/SignatureWriter.cs:
1737 Clean up things a little bit prior ending
1738 custom attribute encoding.
1740 * Mono.Cecil/ReflectionWriter.cs:
1741 Write custom attributes of parameters
1742 onyl when all methods have their tokens.
1744 * Mono.Cecil/ReflectionReader.cs
1745 Mono.Cecil/ReflectionWriter.cs
1746 Mono.Cecil/AggressiveReflectionReader.cs:
1747 Handle custom attributes on generic parameters.
1749 2006-04-05 Jb Evain <jbevain@gmail.com>
1751 * Mono.Cecil/ReflectionWriter.cs:
1752 Ensure the param[0] is written when it should be.
1754 2006-04-04 Jb Evain <jbevain@gmail.com>
1756 * Mono.Cecil/ReflectionHelper.cs:
1757 Remove an unused hack.
1759 * Mono.Cecil/AssemblyInfo.cs: Go 0.4.1
1761 * Mono.Cecil.Metadata/MetadataHeap.cs
1762 Mono.Cecil.Metadata/MetadataStream.cs:
1763 Read #- stream has well.
1765 * Mono.Cecil/ReflectionHelper.cs:
1766 Implement Import stuff for System.Type and SR.*
1768 2006-04-03 Rodrigo B. de Oliveira <rodrigobamboo@gmail.com>
1770 * Mono.Cecil/SecurityDeclarationReader.cs
1771 Mono.Cecil/TypeReferenceCollection.cs
1772 Mono.Cecil/CompactFrameworkCompatibility.cs
1773 Mono.Cecil/AssemblyFactory.cs
1774 Mono.Cecil/AssemblyName.cs
1775 Mono.Cecil/ExternTypeCollection.cs
1776 Mono.Cecil/TypeDefinitionCollection.cs
1777 CodeGen/templates/NamedCollectionImplem.cs
1778 Mono.Cecil.Metadata/CultureUtils.cs
1780 CompactFramework 2.0 support through CF_2_0 compilation symbol.
1782 2006-04-03 Jb Evain <jbevain@gmail.com>
1784 * Mono.Cecil.dll.sources
1785 Mono.Cecil/GenericParameter.cs
1786 Mono.Cecil/ReflectionHelper.cs
1787 Mono.Cecil/FieldDefinition.cs
1788 Mono.Cecil/CustomAttribute.cs
1789 Mono.Cecil/TypeDefinition.cs
1790 Mono.Cecil/IModuleDefinition.cs
1791 Mono.Cecil/ImportContext.cs
1792 Mono.Cecil/AssemblyName.cs
1793 Mono.Cecil/MethodDefinition.cs
1794 Mono.Cecil/EventDefinition.cs
1795 Mono.Cecil/ModuleDefinition.cs
1796 Mono.Cecil/ReflectionWriter.cs
1797 Mono.Cecil/GenericContext.cs
1798 Mono.Cecil/ParameterDefinition.cs
1799 Mono.Cecil/PropertyDefinition.cs
1800 Mono.Cecil.Cil/MethodBody.cs:
1801 Work on generic assemblies manipulation via
1804 2006-03-31 Jb Evain <jbevain@gmail.com>
1806 * Mono.Cecil/AssemblyFlags.cs:
1807 Add a Retargetable flag used on the CF.
1809 2006-03-30 Jb Evain <jbevain@gmail.com>
1811 * Mono.Cecil/SecurityDeclarationReader.cs:
1812 Don't crash if the declaration is empty.
1814 * Mono.Cecil/ParamAttributes.cs:
1815 Update the Optional flag.
1816 Mono.Cecil/ReflectionWriter.cs:
1817 Fix the encoding of nullref.
1818 Fixes #77959. Based on a patch by
1819 Armand Du Plessis < armand@dotnet.org.za>
1821 2006-03-29 Jb Evain <jbevain@gmail.com>
1823 * Mono.Cecil/IHasSecurity.cs
1824 Mono.Cecil/IHasConstant.cs
1825 Mono.Cecil/IHasMarshalSpec.cs:
1826 Mono.Cecil/MethodReturnType.cs
1827 Mono.Cecil/AssemblyDefinition.cs:
1828 Implement IMetadataTokenProvider.
1830 * Mono.Cecil/StructureReader.cs
1831 Mono.Cecil/ReflectionWriter.cs:
1832 Use more the token providers.
1834 2006-03-28 Jb Evain <jbevain@gmail.com>
1836 * Mono.Cecil/ReflectionReader.cs
1837 Mono.Cecil/MarshalDesc.cs
1838 Mono.Cecil/IMarshalSpec.cs
1839 Mono.Cecil/ReflectionWriter.cs:
1840 Fix round-tripping of assemblies using
1843 2006-03-27 Jb Evain <jbevain@gmail.com>
1845 * Mono.Cecil.Metadata/MetadataToken.cs:
1846 Override GetHashCode as we override Equals.
1848 * Mono.Cecil/TableComparers.cs:
1849 Fix the ordering of generic parameters.
1850 This revision roundtrips C5. Yeah!
1852 * Mono.Cecil/ReflectionWriter.cs:
1853 Fix method spec "caching"
1854 Mono.Cecil.Cil/OpCode.cs:
1855 Override ToString ();
1856 Mono.Cecil.Metadata/MetadataToken.cs:
1857 Implement operator ==
1859 * Mono.Cecil/ReflectionWriter.cs
1860 Mono.Cecil/TableComparers.cs:
1861 Better handling of generic tables sorting.
1863 * Mono.Cecil/ReflectionWriter.cs
1864 Mono.Cecil/TableComparers.cs:
1865 Sort generic tables as well.
1867 2006-03-27 Rodrigo B. de Oliveira <rodrigobamboo@gmail.com>
1868 * Mono.Cecil.Metadata/MetadataWriter.cs:
1869 Use CompactFramework compatible version of
1870 System.Convert.ToBase64String.
1872 2006-03-27 Jb Evain <jbevain@gmail.com>
1874 * Mono.Cecil.dll.sources
1875 Mono.Cecil/GenericParameter.cs
1876 Mono.Cecil/ConstraintCollection.cs
1877 Mono.Cecil/IGenericParameter.cs
1878 Mono.Cecil/IConstraintCollection.cs
1880 Add a ConstraintCollection to be used within
1883 * Mono.Cecil/GenericInstanceType.cs:
1884 Correctly return if the instance is a value type
1887 2006-03-25 Jb Evain <jbevain@gmail.com>
1889 * Mono.Cecil/ModuleDefinition.cs:
1890 Support the unreadable security declarations
1891 when converting one to byte [].
1893 * Mono.Cecil/IModuleDefinition.cs
1894 Mono.Cecil/ModuleDefinition.cs
1895 Mono.Cecil/ReflectionWriter.cs:
1896 Add a FullLoad method on a module.
1898 * Mono.Cecil/StructureWriter.cs
1899 Mono.Cecil/ReflectionWriter.cs:
1900 Fix a few bugs in generics type emitting.
1902 * Mono.Cecil.Cil/CodeWriter.cs:
1903 Cache local sig as well.
1905 2006-03-24 Jb Evain <jbevain@gmail.com>
1907 * Mono.Cecil/ReflectionWriter.cs:
1908 Cache method specs as well.
1910 * CodeGen/templates/ImageWriter.cs
1911 Mono.Cecil.Metadata/MetadataWriter.cs
1912 Mono.Cecil.Binary/ImageWriter.cs:
1913 Replace the foreach char pattern by
1916 2006-03-23 Jb Evain <jbevain@gmail.com>
1918 * Mono.Cecil/TypeReferenceCollection.cs
1919 Mono.Cecil/ExternTypeCollection.cs
1920 Mono.Cecil/TypeDefinitionCollection.cs
1921 CodeGen/templates/NamedCollectionImplem.cs
1922 CodeGen/templates/ImageReader.cs:
1923 Ensure type with the same name are added
1926 * Mono.Cecil.Metadata/MetadataWriter.cs:
1927 Ensure every blob signature is unique.
1929 * Mono.Cecil/IModuleDefinition.cs
1930 Mono.Cecil/ModuleDefinition.cs:
1931 Rename method to avoid confusion.
1933 2006-03-22 Jb Evain <jbevain@gmail.com>
1935 * Mono.Cecil.Cil/CodeWriter.cs:
1936 Precisely detect whether we emit fat seh or not.
1938 * Mono.Cecil/ReflectionWriter.cs:
1939 Avoid duplicates in the typespec table.
1941 2006-03-21 Jb Evain <jbevain@gmail.com>
1943 * Mono.Cecil/ReflectionWriter.cs:
1944 Correctly write generic parameters.
1946 * Mono.Cecil/SecurityDeclarationReader.cs
1947 Mono.Cecil/SecurityDeclaration.cs
1948 Mono.Cecil/ReflectionWriter.cs:
1949 Fix for security declarations reading on .net 2.0.
1951 * Mono.Cecil/ReflectionReader.cs
1952 Mono.Cecil/GenericContext.cs:
1953 Fix test case RoundtripTestFixture.boo.
1955 2006-03-20 Jb Evain <jbevain@gmail.com>
1957 * Mono.Cecil.Metadata/MetadataReader.cs:
1958 #Strings heap is utf8, fix #77820.
1960 2006-03-08 Jb Evain <jbevain@gmail.com>
1962 * CodeGen/cecil-gen-tests.rb
1963 CodeGen/templates/Tests.cs:
1964 Start of a very small infrastructure to use tests from
1965 rotor/mono with Cecil.
1967 * Mono.Cecil/IMethod.cs
1968 Mono.Cecil/TypeDefinition.cs
1969 Mono.Cecil/MethodDefinition.cs
1970 Mono.Cecil.Cil/CodeReader.cs
1971 Mono.Cecil.Cil/CodeWriter.cs:
1972 Add support for the very special case ldarg 0.
1973 Patch idea by Vladislav Spivak <spivak@mainsoft.com>
1975 2006-03-07 Jb Evain <jbevain@gmail.com>
1977 * CodeGen/templates/ImageReader.cs
1978 Mono.Cecil/AssemblyFactory.cs
1979 Mono.Cecil/StructureReader.cs
1980 Mono.Cecil.Binary/Image.cs
1981 Mono.Cecil.Binary/ImageReader.cs:
1982 Allow users to get a loaded image using
1983 Image.GetImage as they have no access to
1986 2006-03-06 Jb Evain <jbevain@gmail.com>
1988 * Mono.Cecil.Signatures/SignatureReader.cs:
1989 Fix array reading in custom attributes.
1991 2006-03-06 Joshua Tauberer <tauberer@for.net>
1993 * Mono.Cecil/TypeAttributes.cs: Fixed typo
1994 in value for Abstract.
1996 2006-02-27 Jb Evain <jbevain@gmail.com>
1998 * CodeGen/templates/IndexedCollectionImplem.cs
1999 CodeGen/templates/IIndexedCollection.cs
2000 Mono.Cecil.Cil/InstructionCollection.cs
2001 Mono.Cecil.Cil/IInstructionCollection.cs:
2002 Small API fix, prevent the user from not using
2005 * Mono.Cecil.Cil/CodeReader.cs
2006 Mono.Cecil.Cil/Label.cs:
2009 * Mono.Cecil/ReflectionReader.cs:
2012 2006-02-20 Jb Evain <jbevain@gmail.com>
2014 * Mono.Cecil.Signatures/SignatureWriter.cs:
2015 Fix a bug when a value is null in a custom attribute.
2017 2006-02-20 Sebastien Pouliot <sebastien@ximian.com>
2019 * Mono.Cecil.Metadata/MetadataWriter.cs:
2020 Fix GetStrongNameSignatureSize to handle the ECMA pseudo-key.
2022 2006-02-07 Jb Evain <jbevain@gmail.com>
2024 * Mono.Cecil/AssemblyInfos.cs:
2025 Tag this version 0.3, as users are happy with it.
2027 2006-01-26 Jb Evain <jbevain@gmail.com>
2029 * Mono.Cecil/CustomAttribute.cs:
2030 Fix cloning of non readable attributes.
2032 * Mono.Cecil/ReflectionReader.cs
2033 Mono.Cecil/ReflectionWriter.cs
2034 Mono.Cecil.Signatures/MethodRefSig.cs
2035 Mono.Cecil.Signatures/SignatureWriter.cs
2036 Mono.Cecil.Signatures/MethodDefSig.cs:
2039 * Mono.Cecil/ArrayType.cs
2040 Mono.Cecil/ReferenceType.cs
2041 Mono.Cecil/PointerType.cs:
2042 Fix names of typespecs.
2044 * Mono.Cecil/TypeReferenceCollection.cs
2045 Mono.Cecil/ExternTypeCollection.cs
2046 CodeGen/templates/NamedCollectionImplem.cs:
2047 Allow multiple key by names in type references.
2049 2006-01-25 Jb Evain <jbevain@gmail.com>
2051 * Mono.Cecil/AssemblyFactory.cs:
2052 Don't trap exceptions.
2054 * Mono.Cecil/GenericParameter.cs
2055 Mono.Cecil/IMethod.cs
2056 Mono.Cecil/GenericInstanceType.cs
2057 Mono.Cecil/TypeReference.cs
2058 Mono.Cecil/GenericInstanceMethod.cs
2059 Mono.Cecil/ReflectionReader.cs
2060 Mono.Cecil/TypeDefinition.cs
2061 Mono.Cecil/IGenericArgumentCollection.cs
2062 Mono.Cecil/ITypeReference.cs
2063 Mono.Cecil/IGenericInstance.cs
2064 Mono.Cecil/GenericArgumentCollection.cs
2065 Mono.Cecil/MethodDefinition.cs
2066 Mono.Cecil/MethodReference.cs
2067 Mono.Cecil/ITypeDefinition.cs
2068 Mono.Cecil/IGenericArgumentProvider.cs
2069 Mono.Cecil/ReflectionWriter.cs
2070 Mono.Cecil/GenericContext.cs
2072 Clean the generic api. This is not stable yet.
2074 2006-01-24 Jb Evain <jbevain@gmail.com>
2076 * Mono.Cecil/ArrayType.cs:
2077 Bug reported by Vladislav Spivak (spivak@mainsoft.com).
2078 Fix a bug in array handling.
2079 * Mono.Cecil/ConstructorCollection.cs
2080 CodeGen/templates/IndexedCollectionImplem.cs:
2081 Bug reported by Oleg Varchovsky (olegv@mainsoft.com).
2082 Fix the lookup of constructors.
2084 2006-01-19 Jb Evain <jbevain@gmail.com>
2086 * Mono.Cecil/AssemblyName.cs:
2087 Fix computation of public key token.
2089 2006-01-18 Jb Evain <jbevain@gmail.com>
2091 * Mono.Cecil.Cil/CodeWriter.cs
2092 Mono.Cecil.Metadata/MetadataToken.cs:
2093 Add an use an ToUInt method and use it.
2094 CodeGen/templates/DebugHeader.cs
2095 Mono.Cecil.Binary/DebugHeader.cs:
2096 Fix the size of the debug header.
2098 * Mono.Cecil/ModuleReference.cs
2099 Mono.Cecil/AssemblyName.cs
2100 Mono.Cecil/StructureReader.cs
2101 Mono.Cecil/IMetadataScope.cs:
2102 Make IMetadataScope implement IMetadataTokenProvider.
2103 * Mono.Cecil/ReflectionWriter.cs:
2104 Fix a typo when saving nested type refs.
2106 2006-01-17 Jb Evain <jbevain@gmail.com>
2108 * Mono.Cecil/ArrayType.cs
2109 Mono.Cecil/ArrayDimension.cs
2110 Mono.Cecil/ReflectionWriter.cs:
2113 2006-01-03 Jb Evain <jbevain@gmail.com>
2115 * Mono.Cecil/GenericParameter.cs
2116 Mono.Cecil/ReflectionHelper.cs
2117 Mono.Cecil/ReflectionReader.cs
2118 Mono.Cecil/GenericContext.cs:
2121 2005-12-31 Jb Evain <jbevain@gmail.com>
2123 * Mono.Cecil/ReflectionHelper.cs:
2124 Fix import of type specs.
2126 2005-12-30 Jb Evain <jbevain@gmail.com>
2128 * CodeGen/templates/ImageReader.cs
2129 Mono.Cecil.Metadata/MetadataReader.cs
2130 Mono.Cecil.Binary/Image.cs
2131 Mono.Cecil.Binary/ImageReader.cs:
2132 Add support to assemblies where the metadata is defined
2133 outside of the text section. (c++/cli /safe for instance)
2135 2005-12-23 Jb Evain <jbevain@gmail.com>
2137 * Mono.Cecil/AssemblyInfo.cs:
2138 Version 0.2.2.2 devel.
2140 * Mono.Cecil/AssemblyInfo.cs:
2141 Version 0.2 to be released.
2143 * Mono.Cecil/ReflectionWriter.cs:
2144 IGenericInstance are typespecs as well.
2146 * Mono.Cecil/ArrayType.cs:
2147 Add a single dimension in the default ctor.
2148 * Mono.Cecil/ReflectionReader.cs:
2149 Don't manually add the default dimension as it's done
2150 int the array type ctor.
2151 * Mono.Cecil/ReflectionHelper.cs:
2154 2005-12-22 Jb Evain <jbevain@gmail.com>
2156 * Mono.Cecil/ReflectionWriter:
2157 Write pinvoke infos as well.
2159 * Mono.Cecil/ReflectionReader.cs:
2160 Unsure that primitive value types are viewed as
2163 * CodeGen/templates/Section.cs
2164 CodeGen/templates/ImageReader.cs
2165 Mono.Cecil.Metadata/MetadataReader.cs
2166 Mono.Cecil.Binary/Image.cs
2167 Mono.Cecil.Binary/Section.cs
2168 Mono.Cecil.Binary/ImageReader.cs:
2169 Simplify the way you read binary data whithin
2172 * Mono.Cecil.Cil/CodeReader.cs:
2173 Make helper methods public static.
2174 * Mono.Cecil/ReflectionReader.cs:
2175 Don't try to get the entry point method
2176 if it don't point on a valid method RID.
2178 * CodeGen/templates/NamedCollectionImplem.cs
2179 Mono.Cecil/ExternTypeCollection.cs
2180 Mono.Cecil/TypeDefinitionCollection.cs
2181 Mono.Cecil/TypeReferenceCollection.cs:
2182 Don't add existing values.
2184 * Mono.Cecil/ModuleDefinition.cs:
2185 Protect import from null refs.
2187 2005-12-21 Jb Evain <jbevain@gmail.com>
2189 * Mono.Cecil/StructureWriter.cs:
2190 Don't increment pdb age. Not Cecil's job.
2192 * Mono.Cecil.Cil/ICilWorker.cs
2193 Mono.Cecil.Cil/CilWorker.cs:
2194 Add a new replace method.
2196 2005-12-20 Jb Evain <jbevain@gmail.com>
2198 * Mono.Cecil/StructureWriter.cs:
2199 Ensure every assembly reference is processed.
2201 * Mono.Cecil/ReflectionHelper.cs:
2202 Don't assume the cache is magically loaded.
2203 Aka: most stupid bug of the year.
2205 2005-12-19 Jb Evain <jbevain@gmail.com>
2207 * CodeGen/templates/DebugHeader.cs
2208 Mono.Cecil.Binary/DebugHeader.cs
2209 Mono.Cecil.Binary/DebugStoreType.cs:
2210 New files to store debug header infos.
2211 * Mono.Cecil.dll.sources: updated
2213 CodeGen/cecil-gen.rb
2214 Mono.Cecil/StructureWriter.cs
2215 Mono.Cecil.Binary/IBinaryVisitor.cs
2216 Mono.Cecil.Binary/ImageWriter.cs
2217 Mono.Cecil.Binary/Image.cs
2218 Mono.Cecil.Binary/ImageInitializer.cs
2219 Mono.Cecil.Binary/BaseImageVisitor.cs
2220 Mono.Cecil.Binary/ImageReader.cs
2221 Mono.Cecil.Metadata/MetadataWriter.cs:
2222 Read and write debug header.
2224 * CodeGen/templates/ImageWriter.cs
2225 Mono.Cecil.Binary/ImageWriter.cs:
2226 Revert revision 54409.
2228 2005-12-14 Jb Evain <jbevain@gmail.com>
2230 * Mono.Cecil.Cil/ICilWorker.cs
2231 Mono.Cecil.Cil/CilWorker.cs:
2232 Add a remove method.
2234 * CodeGen/templates/ImageWriter.cs
2235 Mono.Cecil.Binary/ImageWriter.cs:
2236 Don't allocate potential big arrays here.
2238 2005-12-13 Jb Evain <jbevain@gmail.com>
2240 * Mono.Cecil.Metadata/MetadataWriter.cs:
2241 Set the correct version for .net 2 assemblies.
2242 Correctly write embedded resources.
2245 2005-12-03 Jb Evain <jbevain@gmail.com>
2247 * Mono.Cecil/MethodSpecification.cs:
2248 Override the declaring type and the name property to
2249 match the inner method.
2250 * Mono.Cecil/GenericInstanceType.cs:
2251 Correctly set the FullName.
2252 * Mono.Cecil/GenericInstanceMethod.cs:
2255 2005-12-02 Jb Evain <jbevain@gmail.com>
2257 * Mono.Cecil/TypeDefinition.cs:
2258 Fix interface import. Patch by Thomas Gil.
2260 2005-11-24 Jb Evain <jbevain@gmail.com>
2262 * CodeGen/cecil-gen.rb
2263 CodeGen/templates/MetadataTableReader.cs
2264 CodeGen/templates/PEFileHeader.cs
2265 CodeGen/templates/CLIHeader.cs
2266 CodeGen/templates/PEOptionalHeader.cs
2267 CodeGen/templates/Table.cs
2268 CodeGen/templates/MetadataRowReader.cs
2269 CodeGen/templates/OpCodes.cs
2270 CodeGen/templates/Section.cs
2271 CodeGen/templates/ImageReader.cs:
2272 Update the codegen engine so that everyone can run it
2273 without having to install a dependency (eruby).
2275 * Mono.Cecil.Metadata/Utilities.cs: re-codegenerated.
2277 2005-11-23 Jb Evain <jbevain@gmail.com>
2279 * Mono.Cecil/IGenericArgumentProvider.cs
2281 * CodeGen/cecil.xml:
2282 Mirror Martin's change in the codegen engine.
2284 2005-11-23 Martin Baulig <martin@ximian.com>
2286 Generics API changes:
2287 TypeReference and MethodReference now contain a
2288 `GenericArguments' property (of type `GenericArgumentCollection')
2289 and `GenericParameters' is moved into TypeDefinition/MethodDefinition.
2291 * Mono.Cecil/IGenericArgumentProvider.cs: New file.
2292 (IGenericArgumentProvider): New public interface.
2294 * Mono.Cecil/IGenericArgumentCollection.cs
2295 (IGenericArgumentCollection.Container): Changed type from
2296 `IGenericInstance' -> `IGenericArgumentProvider'.
2298 * Mono.Cecil/IGenericInstance.cs
2299 (IGenericInstance.Arguments): Renamed to `GenericArguments'.
2301 * Mono.Cecil/ITypeReference.cs
2302 (ITypeReference): Implement `IGenericArgumentProvider' instead of
2303 `IGenericParameterProvider'.
2305 * Mono.Cecil/ITypeDefinition.cs
2306 (ITypeDefinition): Implement `IGenericParameterProvider'.
2308 * Mono.Cecil/IMethod.cs
2309 (IMethodReference): Implement `IGenericArgumentProvider' instead of
2310 `IGenericParameterProvider'.
2311 (IMethodDefinition): Implement `IGenericParameterProvider'.
2313 * Mono.Cecil/TypeReference.cs
2314 (TypeReference.GenericParameters): Removed.
2315 (TypeReference.GenericArguments): New public property.
2317 * Mono.Cecil/TypeDefinition.cs
2318 (TypeDefinition.GenericParameters): New public property.
2319 (TypeDefinition.OnGenericParameterAdded): If a generic parameter
2320 is added, also add it to the `GenericArguments'.
2322 * Mono.Cecil/MethodReference.cs
2323 (MethodReference.GenericParameters): Removed.
2324 (MethodReference.GenericArguments): New public property.
2326 * Mono.Cecil/MethodDefinition.cs
2327 (MethodDefinition.GenericParameters): New public property.
2328 (MethodDefinition.OnGenericParameterAdded): If a generic parameter
2329 is added, also add it to the `GenericArguments'.
2331 * Mono.Cecil/GenericInstanceType.cs
2332 (GenericInstanceType): Removed the `m_arguments' field; we now
2333 inherit the `GenericArguments' property from `TypeReference'.
2335 * Mono.Cecil/GenericInstanceMethod.cs
2336 (GenericInstanceMethod): Removed the `m_arguments' field; we now
2337 inherit the `GenericArguments' property from `MethodReference'.
2339 * Mono.Cecil/GenericContext.cs
2340 (GenericContext): We now operate on type/method references and not
2342 (GenericContext.Type): Changed type to `TypeReference'.
2343 (GenericContext.Method): Changed type to `MethodReference'.
2345 2005-11-23 Martin Baulig <martin@ximian.com>
2347 * Mono.Cecil.Metadata/TokenType.cs: Added `GenericParam'.
2349 * Mono.Cecil.Metadata/Utilities.cs
2350 (GetMetadataToken): In `case CodedIndex.HasCustomAttribute', add
2351 `TokenType.GenericParam'.
2353 2005-11-22 Jb Evain <jbevain@gmail.com>
2355 * Mono.Cecil/IMethodDefinitionCollection.cs
2356 Mono.Cecil/MethodDefinitionCollection.cs
2357 CodeGen/templates/IndexedCollectionImplem.cs
2358 CodeGen/templates/IIndexedCollection.cs:
2359 Add a new search method.
2360 * CodeGen/templates/NamedCollectionImplem.cs
2361 Mono.Cecil/TypeReferenceCollection.cs
2362 Mono.Cecil/ExternTypeCollection.cs
2363 Mono.Cecil/TypeDefinitionCollection.cs:
2366 2005-11-13 Rodrigo B. de Oliveira <rodrigobamboo@gmail.com>
2367 * Mono.Cecil/ReflectionReader.cs
2368 Fix for NRE when reading assemblies with a field initializer
2369 pointing to a data section
2370 (TestCases/Regression/OddInt64Initializer.dll).
2372 2005-11-11 Sebastien Pouliot <sebastien@ximian.com>
2374 * Mono.Cecil.Metadata/MetadataWriter.cs
2375 Add support for different strongname key size (between 384
2376 and 16384 bits) as now supported in fx 2.0. Default is still
2379 2005-11-10 Rodrigo B. de Oliveira <rodrigobamboo@gmail.com>
2380 * Mono.Cecil/CompactFrameworkCompatibility.cs
2381 Mono.Cecil/SecurityDeclarationReader.cs
2382 Mono.Cecil/TypeReferenceCollection.cs
2383 Mono.Cecil/ReflectionReader.cs
2384 Mono.Cecil/AssemblyFactory.cs
2385 Mono.Cecil/AssemblyName.cs
2386 Mono.Cecil/ExternTypeCollection.cs
2387 Mono.Cecil/ModuleDefinition.cs
2388 Mono.Cecil/TypeDefinitionCollection.cs
2389 CodeGen/templates/NamedCollectionImplem.cs
2390 CodeGen/templates/ImageReader.cs
2391 Mono.Cecil.Metadata/MetadataReader.cs
2392 Mono.Cecil.Metadata/MetadataWriter.cs
2393 Mono.Cecil.Metadata/CultureUtils.cs
2394 Mono.Xml/SecurityParser.cs
2395 Mono.Xml/SmallXmlParser.cs
2396 Mono.Cecil.Signatures/SignatureReader.cs
2397 Mono.Cecil.Binary/ImageReader.cs
2399 Implement support for compiling on the CompactFramework
2401 2005-11-08 Jb Evain <jbevain@gmail.com>
2403 * Mono.Cecil/GenericInstanceType.cs
2404 Mono.Cecil/TypeReference.cs:
2405 Fix a regression with 2.0 assemblies.
2407 2005-11-03 Jb Evain <jbevain@gmail.com>
2409 * Mono.Cecil/CallSite.cs
2410 Mono.Cecil/ReflectionReader.cs
2411 Mono.Cecil/ICallSite.cs
2412 Mono.Cecil.Cil/CodeReader.cs
2413 Mono.Cecil.Cil/CodeWriter.cs
2414 Mono.Cecil.Signatures/SignatureReader.cs
2415 Mono.Cecil.dll.sources:
2416 Implement support for calli opcodes reading.
2418 2005-11-01 Jb Evain <jbevain@gmail.com>
2420 * Mono.Cecil/FunctionPointerType.cs
2421 Mono.Cecil/ReflectionReader.cs
2422 Mono.Cecil.Signatures/SignatureReader.cs:
2423 Work on function pointers.
2425 * Mono.Cecil/AssemblyInfo.cs:
2426 Increase Cecil SVN version.
2428 * Mono.Cecil/ArrayType.cs
2429 Mono.Cecil/MethodSpecification.cs
2430 Mono.Cecil/TypeSpecification.cs
2431 Mono.Cecil/IMethodSpecification.cs
2432 Mono.Cecil/GenericInstanceType.cs
2433 Mono.Cecil/IGenericInstanceType.cs
2434 Mono.Cecil/GenericInstanceMethod.cs
2435 Mono.Cecil/IModifierType.cs
2436 Mono.Cecil/IPinnedType.cs
2437 Mono.Cecil/ReferenceType.cs
2438 Mono.Cecil/IGenericInstanceMethod.cs
2439 Mono.Cecil/PinnedType.cs
2440 Mono.Cecil/PointerType.cs
2441 Mono.Cecil/IPointerType.cs
2442 Mono.Cecil/IReferenceType.cs
2443 Mono.Cecil/IArrayType.cs
2444 Mono.Cecil/ITypeSpecification.cs
2445 Mono.Cecil/Modifiers.cs
2446 Mono.Cecil.dll.sources:
2447 Uniformize the specification model.
2449 2005-10-31 Jb Evain <jbevain@gmail.com>
2455 Mono.Cecil/AssemblyInfo.cs:
2458 * Mono.Cecil/ReflectionReader.cs:
2459 Force value type property on known core types.
2461 2005-10-28 Jb Evain <jbevain@gmail.com>
2463 * Mono.Cecil/TypeReference.cs
2464 Mono.Cecil/ReflectionReader.cs
2465 Mono.Cecil/TypeDefinition.cs
2466 Mono.Cecil/ModuleDefinition.cs
2467 Mono.Cecil/ReflectionWriter.cs:
2470 * Mono.Cecil.Signatures/SignatureWriter.cs:
2471 Correct a bug in strings encoding in custom attributes.
2473 * CodeGen/templates/ImageWriter.cs
2474 Mono.Cecil.Metadata/MetadataWriter.cs
2475 Mono.Cecil/StructureWriter.cs
2476 Mono.Cecil/ReflectionWriter.cs
2477 Mono.Cecil.Binary/ImageWriter.cs:
2478 Implement a big of public key management,
2479 here we reserve space for the strong name
2480 signature if needed.
2482 * Mono.Cecil/StructureWriter.cs
2483 Mono.Cecil/StructureReader.cs:
2484 Disable public key writing until
2487 * Mono.Cecil/GenericParameter.cs
2488 Mono.Cecil/TypeReference.cs
2489 Mono.Cecil/MethodReference.cs:
2490 Work on generics writing api.
2491 * Mono.Cecil/ReflectionReader.cs:
2492 Fix a bug when defining a fresh assembly.
2494 * Mono.Cecil/GenericInstanceType.cs
2495 Mono.Cecil/ReflectionWriter.cs
2496 Mono.Cecil/IGenericParameterProvider.cs
2497 Mono.Cecil.Signatures/Var.cs
2498 Mono.Cecil.Signatures/MVar.cs
2499 Mono.Cecil.Signatures/SignatureReader.cs
2500 Mono.Cecil.Signatures/SignatureWriter.cs
2501 Mono.Cecil.Cil/CodeWriter.cs:
2502 Work on generics writing.
2504 2005-10-27 Jb Evain <jbevain@gmail.com>
2506 * Mono.Cecil.Cil/CodeReader.cs
2507 Mono.Cecil.Cil/CilWorker.cs
2508 Mono.Cecil.Cil/CodeWriter.cs
2509 Mono.Cecil.Cil/OpCode.cs:
2510 Override op == and != on opcodes.
2512 * Mono.Cecil/FieldDefinition.cs
2513 Mono.Cecil/TypeDefinition.cs
2514 Mono.Cecil/MethodDefinition.cs
2515 Mono.Cecil/EventDefinition.cs
2516 Mono.Cecil/PropertyDefinition.cs:
2517 Fix setters working on attributes.
2519 * Mono.Cecil.Cil/CodeWriter.cs:
2520 Compute max stack before writing method.
2522 * Mono.Cecil/GenericContext.cs
2523 Mono.Cecil/ReflectionReader.cs
2524 Mono.Cecil.Signatures/SignatureReader.cs:
2525 Work on generics support.
2528 Mono.Cecil/ISecurityDeclarationCollection.cs
2529 Mono.Cecil/SecurityDeclarationCollection.cs:
2530 Remove the security declaration from the codegen.
2532 2005-10-27 Sebastien Pouliot <sebastien@ximian.com>
2534 * Mono.Cecil\SecurityDeclaration.cs
2535 Copy the permission set when cloning.
2536 * Mono.Cecil\SecurityDeclarationCollection.cs
2537 Ajusted to use an Hashtable, to Union permission sets on
2538 the same action and to set/unset HasSecurity when needed.
2539 * Mono.Cecil\ModuleDefinition.cs:
2540 Added TODO (remainder) for complete 2.0 format support.
2541 * Mono.Cecil\ReflectionWriter.cs:
2542 Move MetadataToken finding outside the loop.
2543 * Mono.Cecil\ISecurityDeclarationCollection.cs:
2546 2005-10-27 Jb Evain <jbevain@gmail.com>
2548 * Mono.Cecil/TypeDefinition.cs
2549 Mono.Cecil/MethodDefinition.cs:
2550 Add generics parameters in visitor path.
2552 * Mono.Cecil/GenericParamAttributes.cs:
2553 Add new constraints flags.
2555 2005-10-22 Jb Evain <jbevain@gmail.com>
2557 * Mono.Cecil/GenericParameter.cs
2558 Mono.Cecil/ReflectionReader.cs
2559 Mono.Cecil/IGenericParameter.cs
2560 Mono.Cecil/AggressiveReflectionReader.cs
2561 Mono.Cecil/GenericContext.cs:
2562 Support generic parameters constraints.
2564 2005-10-21 Jb Evain <jbevain@gmail.com>
2566 * Mono.Cecil/FieldDefinition.cs
2567 Mono.Cecil/CustomAttribute.cs
2568 Mono.Cecil/TypeDefinition.cs
2569 Mono.Cecil/SecurityDeclaration.cs
2570 Mono.Cecil/MethodDefinition.cs
2571 Mono.Cecil/EventDefinition.cs
2572 Mono.Cecil/ParameterDefinition.cs
2573 Mono.Cecil/PropertyDefinition.cs:
2574 Implement ICloneable.
2576 * Mono.Cecil/IAssemblyDefinition.cs:
2577 Mirror changes on asm kind.
2578 * Mono.Cecil/StructureReader.cs:
2579 Fix asm kind detection.
2581 * Mono.Cecil/StructureWriter.cs
2582 Mono.Cecil/ReflectionReader.cs
2583 Mono.Cecil/MethodDefinition.cs
2584 Mono.Cecil/ReflectionWriter.cs:
2586 * Mono.Cecil.Cil/MethodBody.cs:
2589 * CodeGen/templates/MetadataTableReader.cs
2590 Mono.Cecil.Metadata/MetadataTableReader.cs
2591 Mono.Cecil.Metadata/MetadataReader.cs:
2592 Add helpers for reading.
2594 * Mono.Cecil/ReflectionReader.cs
2595 Mono.Cecil/MethodDefinition.cs
2596 Mono.Cecil/AggressiveReflectionReader.cs
2597 Mono.Cecil/GenericContext.cs:
2598 Working on generic parameters reading.
2599 Still have troubles reading a 2.0 corlib.
2601 * Mono.Cecil/IHasMarshalSpec.cs:
2604 * Mono.Cecil/ParameterDefinition.cs
2605 Mono.Cecil.Cil/VariableDefinition.cs:
2608 2005-10-20 Jb Evain <jbevain@gmail.com>
2610 * Mono.Cecil.Cil/CodeReader.cs
2611 Mono.Cecil.Cil/CodeWriter.cs
2612 Mono.Cecil.Cil/ICilWorker.cs
2613 Mono.Cecil.Cil/CilWorker.cs:
2614 ShortInlineI operands are signed.
2615 Spotted by Rodrigo B. de Oliveira.
2617 * CodeGen/templates/OpCodes.cs
2618 Mono.Cecil.Cil/OpCodes.cs:
2621 * Mono.Cecil/StructureWriter.cs
2622 Mono.Cecil/AssemblyDefinition.cs
2623 Mono.Cecil/AssemblyFactory.cs
2624 Mono.Cecil/StructureReader.cs
2625 Mono.Cecil/ReflectionWriter.cs:
2626 Handle the assembly kind in a smoothie way.
2628 2005-10-19 Sebastien Pouliot <sebastien@ximian.com>
2630 * Mono.Cecil/AssemblyDefinition.cs: Added an override for ToString to
2632 * Mono.Cecil/ModuleDefinition.cs: Make SecurityDeclaration works with
2634 * Mono.Cecil/ReflectionReader.cs: Modified BuildSecurityDeclaration
2635 to use the new SecurityDeclarationReader (supporting both formats).
2636 * Mono.Cecil/SecurityAction.cs: Removed actions that were "cutted" out
2638 * Mono.Cecil/SecurityDeclarationReader.cs: New. Handle both the 1.x
2639 and 2.0 formats for reading declarative security.
2641 2005-10-18 Jb Evain <jbevain@gmail.com>
2643 * Mono.Cecil/GenericParameter.cs:
2644 A little change before the fix.
2646 * Mono.Cecil/ReflectionHelper.cs
2647 Mono.Cecil/MethodDefinition.cs
2648 Mono.Cecil.Cil/MethodBody.cs:
2649 Implement method cloning.
2651 * Mono.Cecil/ModuleReference.cs
2652 Mono.Cecil/FieldDefinition.cs
2653 Mono.Cecil/TypeReference.cs
2654 Mono.Cecil/ReflectionReader.cs
2655 Mono.Cecil/TypeDefinition.cs
2656 Mono.Cecil/EventDefinition.cs
2657 Mono.Cecil/ModuleDefinition.cs
2658 Mono.Cecil/FieldReference.cs
2659 Mono.Cecil/ReflectionWriter.cs
2660 Mono.Cecil/PropertyDefinition.cs
2661 Mono.Cecil/AssemblyFactory.cs:
2664 * Mono.Cecil.Cil/CodeReader.cs:
2665 Fix variables names.
2668 Fix generic parameters,
2670 constructor changes (with S.Type and SR.*Info)
2672 2005-10-14 Jb Evain <jbevain@gmail.com>
2674 Work on generics support.
2676 * CodeGen/cecil.xml: new collections, coded indexes, opcodes.
2678 * Mono.Cecil/IGenericParameterCollection.cs
2679 Mono.Cecil/GenericParameterCollection.cs
2680 Mono.Cecil/IGenericArgumentCollection.cs
2681 Mono.Cecil/GenericArgumentCollection.cs:
2682 Added new collections.
2684 * Mono.Cecil.Metadata/Utilities.cs: updated.
2685 * Mono.Cecil.Metadata/TokenType.cs: added MethodSpec.
2687 * Mono.Cecil/IGenericParameter.cs
2688 Mono.Cecil/GenericParameter.cs
2689 Mono.Cecil/IGenericParameterConstraints.cs
2690 Mono.Cecil/GenericParameterConstraints.cs
2691 Mono.Cecil/IGenericParameterProvider.cs
2692 Mono.Cecil/IGenericInstance.cs
2693 Mono.Cecil/IGenericInstanceType.cs
2694 Mono.Cecil/GenericInstanceType.cs
2695 Mono.Cecil/IGenericInstanceMethod.cs
2696 Mono.Cecil/GenericInstanceMethod.cs:
2697 Generics API elements.
2699 * Mono.Cecil/IMethod.cs
2700 Mono.Cecil/MethodReference.cs
2701 Mono.Cecil/ITypeReference.cs
2702 Mono.Cecil/TypeReference.cs:
2703 Implement IGenericParameterProvider
2705 * Mono.Cecil/ReflectionReader.cs
2706 Mono.Cecil/IReflectionVisitor.cs
2707 Mono.Cecil/BaseReflectionVisitor.cs
2708 Mono.Cecil/StructureReader.cs
2709 Mono.Cecil/AggressiveReflectionReader.cs
2710 Mono.Cecil/MemberReference.cs:
2711 Support for the new generics elements.
2713 * Mono.Cecil.Signatures/Var.cs
2714 Mono.Cecil.Signatures/MVar.cs
2715 Mono.Cecil.Signatures/GenericInstSignature.cs
2716 Mono.Cecil.Signatures/GenericInst.cs:
2719 * Mono.Cecil.Signatures/SignatureReader.cs
2720 Mono.Cecil.Signatures/GenericInstSignature.cs
2721 Mono.Cecil.Signatures/MethodDefSig.cs
2722 Mono.Cecil.Signatures/GenericInst.cs
2723 Mono.Cecil.Signatures/MethodSpec.cs
2724 Mono.Cecil/MethodCallingConvention.cs
2725 Mono.Cecil.Cil/CodeReader.cs:
2726 Added support for generic signatures.
2728 * Mono.Cecil.Cil/OpCodes.cs:
2729 Add consrained. opcode.
2731 * Mono.Cecil.dll.sources:
2734 Known problems: !!parameters
2736 2005-10-13 Jb Evain <jbevain@gmail.com>
2738 * Mono.Cecil/ReflectionHelper.cs
2739 Mono.Cecil/FieldDefinition.cs
2740 Mono.Cecil/CustomAttribute.cs
2741 Mono.Cecil/MethodReturnType.cs
2742 Mono.Cecil/TypeDefinition.cs
2743 Mono.Cecil/SecurityDeclaration.cs
2744 Mono.Cecil/MethodDefinition.cs
2745 Mono.Cecil/EventDefinition.cs
2746 Mono.Cecil/ModuleDefinition.cs
2747 Mono.Cecil/ParameterDefinition.cs
2748 Mono.Cecil/IMethodReturnType.cs
2749 Mono.Cecil/PropertyDefinition.cs
2750 Mono.Cecil.Cil/MethodBody.cs:
2752 * Mono.Cecil/ITypeParameterType.cs
2753 Mono.Cecil/TypeParameterType.cs:
2754 Correct the interface.
2756 2005-10-12 Jb Evain <jbevain@gmail.com>
2758 * Mono.Cecil/EventDefinition.cs
2759 Mono.Cecil/TypeDefinition.cs
2760 Mono.Cecil/ModuleDefinition.cs
2761 Mono.Cecil/ReflectionWriter.cs
2762 Mono.Cecil/PropertyDefinition.cs:
2765 2005-09-16 Martin Baulig <martin@ximian.com>
2767 Added generics support to Cecil.
2769 * Mono.Cecil/IGenericInstType.cs: New file.
2770 * Mono.Cecil/ITypeParameterType.cs: New file.
2771 * Mono.Cecil/IMethodTypeParameterType.cs: New file.
2773 * Mono.Cecil.Metadata/ElementType.cs
2774 (ElementType): Added `Var', `MVar' and `GenericInst'.
2776 * Mono.Cecil.Metadata/Utilities.cs
2777 (Utilities.GetMetadataToken): .NET 2.0 also uses TypeDef's in the
2780 * Mono.Cecil/GenericInstType.cs: New file.
2781 * Mono.Cecil/MethodTypeParameterType.cs: New file.
2782 * Mono.Cecil/TypeParameterType.cs: New file.
2784 * Mono.Cecil.Signatures/Var.cs: New file.
2785 * Mono.Cecil.Signatures/MVar.cs: New file.
2786 * Mono.Cecil.Signatures/GenericInst.cs: New file.
2787 * Mono.Cecil.Signatures/GenericInstSignature.cs: New file.
2789 * Mono.Cecil/ReflectionReader.cs
2790 (ReflectionReader.GetTypeRefFromSig): Add the new types.
2792 * Mono.Cecil.Signatures/SignatureReader.cs
2793 (SignatureReader.ReadType): Add the new types.
2795 2005-10-06 Jb Evain <jbevain@gmail.com>
2797 * Mono.Cecil/ReflectionHelper.cs
2798 Mono.Cecil/ModuleDefinition.cs:
2799 Fix a bug in type importing.
2801 2005-10-06 Jb Evain <jbevain@gmail.com>
2803 * Hopefully, this is the last API change before the release of Cecil 0.1.
2804 Mono.Cecil.Implem has been moved to Mono.Cecil. The interfaces where
2805 very convenient for a reading API, it was far less convenient for a
2806 modification and writing one. The modification API still needs some work,
2807 but this should be easier this way.
2809 2005-09-27 Jb Evain <jbevain@gmail.com>
2811 * Mono.Cecil.Metadata/MetadataReader.cs:
2812 Fix resources reading.
2814 * Mono.Cecil.Implem/StructureWriter.cs:
2815 Correctly set the offset of resources in the manifest.
2816 * Mono.Cecil.Implem/StructureFactories.cs:
2817 Use correct overrides when creating assembly references.
2818 * Mono.Cecil.Implem/ReflectionFactories:
2819 Correctly create type references.
2821 2005-09-06 Jb Evain <jbevain@gmail.com>
2823 * Mono.Cecil/IReflectionFactories.cs
2824 Mono.Cecil.Implem/ReflectionFactories.cs:
2825 Allow the creation of reference types for methods
2826 parameters and return types.
2827 * Mono.Cecil.Cil/ICilWorker.cs
2828 Mono.Cecil.Implem/CilWorker.cs
2829 Mono.Cecil.Implem/CodeReader.cs
2830 Mono.Cecil.Implem/CodeWriter.cs:
2831 Global fix on the handling of parameters in instructions.
2832 * Mono.Cecil.Implem/AssemblyName.cs:
2833 Correcty write the version of an assembly fullname.
2834 Spotted by Bruno Cabral.
2835 * Mono.Cecil.Implem/TypeDefinition.cs:
2836 Set the declaring type of a nested type on add.
2837 * Mono.Cecil.Implem/CustomAttribute.cs
2838 Mono.Cecil.Implem/ReflectionReader.cs
2839 Mono.Cecil.Implem/ReflectionWriter.cs
2840 Mono.Cecil.Implem/AggressiveReflectionReader.cs
2841 Mono.Cecil.Signatures/CustomAttrib.cs
2842 Mono.Cecil.Signatures/SignatureReader.cs:
2843 Global fix on custom attribute handling. Some
2844 custom attribute (containing enums) blobs can not be
2847 2005-09-04 Jb Evain <jbevain@gmail.com>
2849 * Mono.Cecil.Implem/Instruction.cs:
2850 Add the setter for IInstruction::OpCode.
2852 2005-09-02 Jb Evain <jbevain@gmail.com>
2854 * Mono.Cecil/ICustomAttribute.cs
2855 Mono.Cecil.Implem/ReflectionFactories.cs
2856 Mono.Cecil.Implem/CustomAttribute.cs
2857 Mono.Cecil.Implem/ReflectionWriter.cs
2858 Mono.Cecil.Signatures/SignatureWriter.cs:
2859 Prepare the work on custom attributes.
2860 * Mono.Cecil.Cil/IInstruction.cs:
2861 Let users modify the content of an instruction.
2862 * Mono.Cecil.Implem/StructureReader.cs:
2863 Do not try to read 2.0 assemblies.
2865 2005-08-28 Jb Evain <jbevain@gmail.com>
2867 * Mono.Cecil.Metadata/MetadataWriter.cs:
2868 Write the fields initial value back.
2869 As of this revision, a round tripped mcs
2872 * Mono.Cecil.Implem/ReflectionWriter.cs:
2873 Emit things in proper order.
2874 Mono.Cecil.Implem/CodeReader.cs
2875 Mono.Cecil.Implem/CodeWriter.cs:
2876 Correct bug with InlineVar opcodes.
2877 Emit fat body if maxstack is set.
2879 * Mono.Cecil.Implem/CodeWriter.cs:
2881 Mono.Cecil.Metadata/MetadataWriter.cs:
2882 Allow one empty string in the userstring heap.
2884 * Mono.Cecil.Implem/ReflectionReader.cs
2885 Mono.Cecil.Implem/ReflectionWriter.cs:
2886 Strings constant are unicode.
2888 * Mono.Cecil/LoadingType.cs
2889 Mono.Cecil/AssemblyFactory.cs
2890 CodeGen/templates/IndexedCollectionImplem.cs
2891 CodeGen/templates/LzIndexedCollectionImplem.cs
2893 Mono.Cecil.Implem/InterfaceCollection.cs
2894 Mono.Cecil.Implem/ILazyLoadable.cs
2895 Mono.Cecil.Implem/ExternTypeCollection.cs
2896 Mono.Cecil.Implem/SecurityDeclarationCollection.cs
2897 Mono.Cecil.Implem/ReflectionHelper.cs
2898 Mono.Cecil.Implem/OverrideCollection.cs
2899 Mono.Cecil.Implem/EventDefinitionCollection.cs
2900 Mono.Cecil.Implem/FieldDefinitionCollection.cs
2901 Mono.Cecil.Implem/PropertyDefinitionCollection.cs
2902 Mono.Cecil.Implem/CustomAttributeCollection.cs
2903 Mono.Cecil.Implem/MethodDefinition.cs
2904 Mono.Cecil.Implem/EventDefinition.cs
2905 Mono.Cecil.Implem/FieldDefinition.cs
2906 Mono.Cecil.Implem/ModuleDefinition.cs
2907 Mono.Cecil.Implem/ReflectionController.cs
2908 Mono.Cecil.Implem/TypeReference.cs
2909 Mono.Cecil.Implem/ReflectionReader.cs
2910 Mono.Cecil.Implem/ReflectionWriter.cs
2911 Mono.Cecil.Implem/AssemblyDefinition.cs
2912 Mono.Cecil.Implem/TypeDefinition.cs
2913 Mono.Cecil.Implem/AggressiveReflectionReader.cs
2914 Mono.Cecil.Implem/MethodDefinitionCollection.cs
2915 Mono.Cecil.Implem/LazyReflectionReader.cs
2916 Mono.Cecil.Implem/ParameterDefinition.cs
2917 Mono.Cecil.Implem/PropertyDefinition.cs
2918 Mono.Cecil.Implem/ConstructorCollection.cs
2919 Mono.Cecil.Signatures/SignatureWriter.cs:
2920 Get rid of the complexity introduced by the
2921 internal lazy loading.
2923 * Mono.Cecil.Implem/EventDefinition.cs
2924 Mono.Cecil.Implem/PropertyDefinition.cs:
2925 Fix the behavior of .ToString ().
2927 2005-08-27 Jb Evain <jbevain@gmail.com>
2929 * Mono.Cecil.Implem/ReflectionWriter.cs:
2930 Write back custom attributes of modules and assemblies
2931 as well as their security declaration.
2932 * Mono.Cecil.Implem/CodeWriter.cs:
2933 Fix branches computation.
2934 Mono.Cecil.Signatures/SignatureReader.cs:
2935 Disable custom attribute reading cache.
2937 * CodeGen/templates/ImageWriter.cs
2938 Mono.Cecil.Binary/ImageWriter.cs:
2939 Compute relocations.
2940 * Mono.Cecil.Implem/ReflectionFactories.cs:
2943 * Mono.Cecil.Implem/TablesComparer.cs
2944 Mono.Cecil.Implem/ReflectionWriter.cs:
2945 Sort all tables that need to be sorted.
2947 * Mono.Cecil.Implem/CodeReader.cs:
2948 Oops. Add fat exception handlers to the method body.
2950 * CodeGen/templates/ImageWriter.cs
2951 Mono.Cecil.Implem/StructureWriter.cs
2952 Mono.Cecil.Implem/ReflectionWriter.cs
2953 Mono.Cecil.Implem/TypeDefinition.cs
2954 Mono.Cecil.Binary/ImageWriter.cs:
2955 Correct a few bugs: relocations now works.
2956 Encode enums in custom attributes.
2957 Compute memberrefs tokens before visitings types.
2959 * Mono.Cecil.Implem/FieldDefinition.cs:
2960 Correct a bug that causes null ref due to
2962 * Mono.Cecil.Signatures/SignatureWriter.cs:
2963 Implement a very little more custom attributes
2966 2005-08-26 Jb Evain <jbevain@gmail.com>
2968 * Mono.Cecil/IMemberReferenceCollection.cs
2969 Mono.Cecil/IReflectionVisitor.cs
2970 Mono.Cecil/IReflectionFactories.cs
2971 Mono.Cecil/BaseReflectionVisitor.cs
2972 Mono.Cecil/IModuleDefinition.cs
2974 Mono.Cecil.Implem/ReflectionFactories.cs
2975 Mono.Cecil.Implem/ReflectionHelper.cs
2976 Mono.Cecil.Implem/ModuleDefinition.cs
2977 Mono.Cecil.Implem/MemberReferenceCollection.cs
2978 Mono.Cecil.Implem/ReflectionReader.cs
2979 Mono.Cecil.Implem/ReflectionWriter.cs
2980 Mono.Cecil.Implem/ParameterDefinition.cs:
2981 Handle member references nicely.
2983 * Mono.Cecil/ICustomAttributeProvider.cs
2984 Mono.Cecil/IModuleDefinitionCollection.cs
2985 Mono.Cecil/IReflectionStructureFactories.cs
2986 Mono.Cecil/IInterfaceCollection.cs
2987 Mono.Cecil/IMethod.cs
2988 Mono.Cecil/IReflectionFactories.cs
2989 Mono.Cecil/INestedTypeCollection.cs
2990 Mono.Cecil/ITypeReferenceCollection.cs
2991 Mono.Cecil/IExternTypeCollection.cs
2992 Mono.Cecil/IAssemblyDefinition.cs
2993 Mono.Cecil/ITypeDefinition.cs
2994 Mono.Cecil/ICustomAttribute.cs
2995 Mono.Cecil/IArrayDimensionCollection.cs
2996 Mono.Cecil/TypeFactory.cs
2997 Mono.Cecil/IConstructorCollection.cs
2998 Mono.Cecil/IHasSecurity.cs
2999 Mono.Cecil/IMethodDefinitionCollection.cs
3000 Mono.Cecil/IPropertyDefinitionCollection.cs
3001 Mono.Cecil/IAssemblyNameReferenceCollection.cs
3002 Mono.Cecil/IModuleReferenceCollection.cs
3003 Mono.Cecil/IArrayType.cs
3004 Mono.Cecil/ISecurityDeclarationCollection.cs
3005 Mono.Cecil/IModuleDefinition.cs
3006 Mono.Cecil/IResourceCollection.cs
3007 Mono.Cecil/IParameterDefinitionCollection.cs
3008 Mono.Cecil/IEventDefinitionCollection.cs
3009 Mono.Cecil/ITypeDefinitionCollection.cs
3010 Mono.Cecil/IFieldDefinitionCollection.cs
3011 Mono.Cecil/ICustomAttributeCollection.cs
3012 Mono.Cecil/ISecurityDeclaration.cs
3013 Mono.Cecil/IOverrideCollection.cs
3014 Mono.Cecil/ITypeReference.cs
3015 Mono.Cecil.Cil/IExceptionHandlerCollection.cs
3016 Mono.Cecil.Cil/IVariableDefinitionCollection.cs
3017 Mono.Cecil.Cil/IInstructionCollection.cs
3018 Mono.Cecil.Cil/IMethodBody.cs
3019 CodeGen/cecil-gen-types.rb
3020 CodeGen/templates/ImageWriter.cs
3021 CodeGen/templates/IndexedCollectionImplem.cs
3022 CodeGen/templates/NamedCollectionImplem.cs
3023 CodeGen/templates/IIndexedCollection.cs
3024 CodeGen/templates/LzIndexedCollectionImplem.cs
3025 CodeGen/templates/INamedCollection.cs
3026 CodeGen/templates/LzNamedCollectionImplem.cs
3027 Mono.Cecil.Implem/InterfaceCollection.cs
3028 Mono.Cecil.Implem/AssemblyLinkedResource.cs
3029 Mono.Cecil.Implem/ModuleReferenceCollection.cs
3030 Mono.Cecil.Implem/ExternTypeCollection.cs
3031 Mono.Cecil.Implem/SecurityDeclarationCollection.cs
3032 Mono.Cecil.Implem/ReflectionFactories.cs
3033 Mono.Cecil.Implem/ReflectionHelper.cs
3034 Mono.Cecil.Implem/OverrideCollection.cs
3035 Mono.Cecil.Implem/ArrayDimensionCollection.cs
3036 Mono.Cecil.Implem/EmbeddedResource.cs
3037 Mono.Cecil.Implem/CilWorker.cs
3038 Mono.Cecil.Implem/ParameterDefinitionCollection.cs
3039 Mono.Cecil.Implem/EventDefinitionCollection.cs
3040 Mono.Cecil.Implem/FieldDefinitionCollection.cs
3041 Mono.Cecil.Implem/PropertyDefinitionCollection.cs
3042 Mono.Cecil.Implem/ModuleDefinitionCollection.cs
3043 Mono.Cecil.Implem/CustomAttributeCollection.cs
3044 Mono.Cecil.Implem/VariableDefinitionCollection.cs
3045 Mono.Cecil.Implem/TypeReferenceCollection.cs
3046 Mono.Cecil.Implem/MemberDefinition.cs
3047 Mono.Cecil.Implem/StructureReader.cs
3048 Mono.Cecil.Implem/FunctionPointerType.cs
3049 Mono.Cecil.Implem/MethodDefinition.cs
3050 Mono.Cecil.Implem/EventDefinition.cs
3051 Mono.Cecil.Implem/FieldDefinition.cs
3052 Mono.Cecil.Implem/InstructionCollection.cs
3053 Mono.Cecil.Implem/VariableDefinition.cs
3054 Mono.Cecil.Implem/CustomAttribute.cs
3055 Mono.Cecil.Implem/ModuleDefinition.cs
3056 Mono.Cecil.Implem/MethodReference.cs
3057 Mono.Cecil.Implem/TypeReference.cs
3058 Mono.Cecil.Implem/StructureFactories.cs
3059 Mono.Cecil.Implem/TypeDefinitionCollection.cs
3060 Mono.Cecil.Implem/AssemblyNameReferenceCollection.cs
3061 Mono.Cecil.Implem/ReflectionReader.cs
3062 Mono.Cecil.Implem/MethodReturnType.cs
3063 Mono.Cecil.Implem/MemberReference.cs
3064 Mono.Cecil.Implem/ReflectionWriter.cs
3065 Mono.Cecil.Implem/Resource.cs
3066 Mono.Cecil.Implem/AssemblyDefinition.cs
3067 Mono.Cecil.Implem/TypeDefinition.cs
3068 Mono.Cecil.Implem/AggressiveReflectionReader.cs
3069 Mono.Cecil.Implem/CodeReader.cs
3070 Mono.Cecil.Implem/FieldReference.cs
3071 Mono.Cecil.Implem/MethodDefinitionCollection.cs
3072 Mono.Cecil.Implem/LazyReflectionReader.cs
3073 Mono.Cecil.Implem/LinkedResource.cs
3074 Mono.Cecil.Implem/ParameterDefinition.cs
3075 Mono.Cecil.Implem/PropertyDefinition.cs
3076 Mono.Cecil.Implem/MethodBody.cs
3077 Mono.Cecil.Implem/NestedTypeCollection.cs
3078 Mono.Cecil.Implem/ConstructorCollection.cs
3079 Mono.Cecil.Implem/ResourceCollection.cs
3080 Mono.Cecil.Implem/ExceptionHandlerCollection.cs
3081 Mono.Cecil.Binary/ImageWriter.cs
3082 Mono.Cecil.Binary/ImageReader.cs:
3083 Fix the writing API before the API freeze. Few things
3084 are not implemented, see todos.
3086 2005-08-20 Jb Evain <jbevain@gmail.com>
3088 * Mono.Cecil/ITypeDefinition.cs
3089 Mono.Cecil/IModuleDefinition.cs
3090 Mono.Cecil/ITypeReference.cs
3091 Mono.Cecil.Implem/ReflectionHelper.cs
3092 Mono.Cecil.Implem/ModuleDefinition.cs
3093 Mono.Cecil.Implem/TypeReference.cs
3094 Mono.Cecil.Implem/ReflectionReader.cs
3095 Mono.Cecil.Implem/ReflectionWriter.cs
3096 Mono.Cecil.Implem/TypeDefinition.cs:
3097 Add way to know if a type reference is a
3098 value type or not. This hack saved my life.
3100 * Mono.Cecil.Implem/CodeWriter.cs:
3101 Fix typespec emitting.
3103 * Mono.Cecil/IReflectionVisitor.cs
3104 Mono.Cecil/IMethod.cs
3105 Mono.Cecil/BaseReflectionVisitor.cs
3106 Mono.Cecil/ITypeDefinition.cs
3107 Mono.Cecil/IConstructorCollection.cs
3109 Mono.Cecil.Implem/MethodDefinition.cs
3110 Mono.Cecil.Implem/ReflectionReader.cs
3111 Mono.Cecil.Implem/ReflectionWriter.cs
3112 Mono.Cecil.Implem/TypeDefinition.cs
3113 Mono.Cecil.Implem/ConstructorCollection.cs:
3114 Support constructors decently.
3116 * CodeGen/templates/Utilities.cs
3117 Mono.Cecil.Metadata/Utilities.cs:
3118 Return a null token if the rid of a md token
3119 is 0. Fix the crash when Mono try to read
3120 assemblies emitted by Cecil.
3122 2005-08-19 Jb Evain <jbevain@gmail.com>
3124 * Mono.Cecil.Implem/ReflectionWriter.cs:
3125 Set the RVA of a method only if it can
3127 * Mono.Cecil.Signatures/SignatureReader.cs:
3128 Remove debugging stuff.
3130 * Mono.Cecil.Implem/ReflectionReader.cs
3131 Mono.Cecil.Signatures/SignatureReader.cs:
3132 Fix custom marshaller reading.
3134 * CodeGen/templates/NamedCollectionImplem.cs
3135 CodeGen/templates/LzNamedCollectionImplem.cs
3136 Mono.Cecil.Implem/ExternTypeCollection.cs
3137 Mono.Cecil.Implem/TypeReferenceCollection.cs
3138 Mono.Cecil.Implem/TypeDefinitionCollection.cs
3139 Mono.Cecil.Implem/ReflectionReader.cs
3140 Mono.Cecil.Implem/ReflectionWriter.cs
3141 Mono.Cecil.Implem/TablesComparer.cs
3142 Mono.Cecil.Implem/Constants.cs
3143 Mono.Cecil.Signatures/SignatureWriter.cs:
3144 Correct bugs in type* tables generations.
3146 * Mono.Cecil/IModuleDefinitionCollection.cs
3147 Mono.Cecil/IInterfaceCollection.cs
3148 Mono.Cecil/INestedTypeCollection.cs
3149 Mono.Cecil/ITypeReferenceCollection.cs
3150 Mono.Cecil/IExternTypeCollection.cs
3151 Mono.Cecil/IArrayDimensionCollection.cs
3152 Mono.Cecil/IMethodDefinitionCollection.cs
3153 Mono.Cecil/IPropertyDefinitionCollection.cs
3154 Mono.Cecil/IAssemblyNameReferenceCollection.cs
3155 Mono.Cecil/IModuleReferenceCollection.cs
3156 Mono.Cecil/ISecurityDeclarationCollection.cs
3157 Mono.Cecil/IResourceCollection.cs
3158 Mono.Cecil/IParameterDefinitionCollection.cs
3159 Mono.Cecil/IEventDefinitionCollection.cs
3160 Mono.Cecil/ITypeDefinitionCollection.cs
3161 Mono.Cecil/IFieldDefinitionCollection.cs
3162 Mono.Cecil/ICustomAttributeCollection.cs
3163 Mono.Cecil/IOverrideCollection.cs
3164 Mono.Cecil.Cil/IExceptionHandlerCollection.cs
3165 Mono.Cecil.Cil/IVariableDefinitionCollection.cs
3166 Mono.Cecil.Cil/IInstructionCollection.cs
3167 CodeGen/templates/IIndexedCollection.cs
3168 CodeGen/templates/INamedCollection.cs
3169 Mono.Cecil.Implem/ReflectionWriter.cs
3170 Mono.Cecil.Binary/SubSystem.cs
3171 Mono.Cecil.Signatures/SignatureWriter.cs:
3172 On going change to the writing api. Not setter allowed on
3173 collections. Work on custom attribute encoding. Remove
3174 the Flags on Subsystem.
3176 * Mono.Cecil.dll.sources
3177 Mono.Cecil.Implem/ReflectionHelper.cs
3178 Mono.Cecil.Implem/TypeReference.cs
3179 Mono.Cecil.Implem/ReflectionReader.cs
3180 Mono.Cecil.Implem/ReflectionWriter.cs
3181 Mono.Cecil.Implem/TypeDefinition.cs
3182 Mono.Cecil.Implem/TablesComparer.cs
3183 Mono.Cecil.Signatures/SignatureReader.cs:
3185 Stop to prefix typeref by the scope.
3186 Cecil will have buggy behaviour if it have to handle
3187 two typeref with the same namespace+name, but for the
3188 moment, let it like that.
3190 * Mono.Cecil/INestedTypeCollection.cs
3191 Mono.Cecil/IModuleReference.cs
3192 Mono.Cecil/ITypeReferenceCollection.cs
3193 Mono.Cecil/IAssemblyName.cs
3194 Mono.Cecil/IExternTypeCollection.cs
3195 Mono.Cecil/IMetadataScope.cs
3196 Mono.Cecil/IModuleDefinition.cs
3197 Mono.Cecil/IResourceCollection.cs
3198 Mono.Cecil/ITypeDefinitionCollection.cs
3199 CodeGen/templates/NamedCollectionImplem.cs
3200 CodeGen/templates/INamedCollection.cs
3201 CodeGen/templates/LzNamedCollectionImplem.cs
3203 Mono.Cecil.Metadata/RowCollection.cs
3204 Mono.Cecil.Metadata/MetadataWriter.cs
3205 Mono.Cecil.Metadata/MetadataToken.cs
3206 Mono.Cecil.Implem/TablesComparer.cs
3207 Mono.Cecil.Implem/ExternTypeCollection.cs
3208 Mono.Cecil.Implem/ReflectionHelper.cs
3209 Mono.Cecil.Implem/TypeReferenceCollection.cs
3210 Mono.Cecil.Implem/StructureReader.cs
3211 Mono.Cecil.Implem/StructureWriter.cs
3212 Mono.Cecil.Implem/ModuleDefinition.cs
3213 Mono.Cecil.Implem/TypeReference.cs
3214 Mono.Cecil.Implem/TypeDefinitionCollection.cs
3215 Mono.Cecil.Implem/ReflectionReader.cs
3216 Mono.Cecil.Implem/ReflectionWriter.cs
3217 Mono.Cecil.Implem/TypeDefinition.cs
3218 Mono.Cecil.Implem/CodeReader.cs
3219 Mono.Cecil.Implem/CodeWriter.cs
3220 Mono.Cecil.Implem/Constants.cs
3221 Mono.Cecil.Implem/NestedTypeCollection.cs
3222 Mono.Cecil.Implem/ResourceCollection.cs
3223 Mono.Cecil.Signatures/SignatureReader.cs
3224 Mono.Cecil.Signatures/SignatureWriter.cs:
3225 Correct some part of the API.
3226 Correct tons of bugs in the writing layer.
3228 2005-08-17 Jb Evain <jbevain@gmail.com>
3230 * Mono.Cecil/IField.cs
3232 Mono.Cecil.Metadata/MetadataReader.cs
3233 Mono.Cecil.Metadata/MetadataWriter.cs
3234 Mono.Cecil.Implem/ReflectionHelper.cs
3235 Mono.Cecil.Implem/StructureReader.cs
3236 Mono.Cecil.Implem/FieldDefinition.cs
3237 Mono.Cecil.Implem/BaseReflectionReader.cs
3238 Mono.Cecil.Implem/ReflectionReader.cs
3239 Mono.Cecil.Implem/ReflectionWriter.cs
3240 Mono.Cecil.Implem/TypeDefinition.cs
3241 Mono.Cecil.Implem/AggressiveReflectionReader.cs
3242 Mono.Cecil.Implem/CodeReader.cs
3243 Mono.Cecil.Implem/IDetailReader.cs
3244 Mono.Cecil.Implem/CodeWriter.cs
3245 Mono.Cecil.Implem/LazyReflectionReader.cs
3246 Mono.Cecil.Signatures/SignatureWriter.cs:
3247 Work on the working layer. Implement field initial
3250 2005-08-16 Jb Evain <jbevain@gmail.com>
3252 * Mono.Cecil.Implem/ReflectionWriter.cs
3253 Mono.Cecil.Implem/CodeWriter.cs
3254 Mono.Cecil.Signatures/SignatureReader.cs:
3255 Implement local var sig writing.
3257 * Mono.Cecil.Implem/ArrayType.cs:
3259 Mono.Cecil.Implem/ParameterDefinition.cs:
3260 Correct a bug in module obtention.
3261 Mono.Cecil.Signatures/SignatureReader.cs:
3262 Correct a bug in arrays's signature reading.
3264 * Mono.Cecil.dll.sources
3265 Mono.Cecil/IReflectionVisitor.cs
3266 Mono.Cecil/IModuleDefinitionCollection.cs
3267 Mono.Cecil/IInterfaceCollection.cs
3268 Mono.Cecil/IProperty.cs
3269 Mono.Cecil/BaseReflectionVisitor.cs
3270 Mono.Cecil/INestedTypeCollection.cs
3271 Mono.Cecil/ITypeReferenceCollection.cs
3272 Mono.Cecil/IParameter.cs
3273 Mono.Cecil/IExternTypeCollection.cs
3274 Mono.Cecil/IField.cs
3275 Mono.Cecil/IArrayDimensionCollection.cs
3276 Mono.Cecil/IMethodDefinitionCollection.cs
3277 Mono.Cecil/IPropertyDefinitionCollection.cs
3278 Mono.Cecil/IAssemblyNameReferenceCollection.cs
3279 Mono.Cecil/IModuleReferenceCollection.cs
3280 Mono.Cecil/IHasConstant.cs
3281 Mono.Cecil/ISecurityDeclarationCollection.cs
3282 Mono.Cecil/IMetadataTokenProvider.cs
3283 Mono.Cecil/IModuleDefinition.cs
3284 Mono.Cecil/BaseStructureVisitor.cs
3285 Mono.Cecil/IResourceCollection.cs
3286 Mono.Cecil/IParameterDefinitionCollection.cs
3287 Mono.Cecil/IEventDefinitionCollection.cs
3288 Mono.Cecil/ITypeDefinitionCollection.cs
3289 Mono.Cecil/IFieldDefinitionCollection.cs
3290 Mono.Cecil/ICustomAttributeCollection.cs
3291 Mono.Cecil/IOverrideCollection.cs
3292 Mono.Cecil.Cil/IExceptionHandlerCollection.cs
3293 Mono.Cecil.Cil/IVariableDefinitionCollection.cs
3294 Mono.Cecil.Cil/IInstructionCollection.cs
3295 CodeGen/cecil-gen.rb
3296 CodeGen/cecil-gen-types.rb
3297 CodeGen/templates/IndexedCollectionImplem.cs
3298 CodeGen/templates/NamedCollectionImplem.cs
3299 CodeGen/templates/IIndexedCollection.cs
3300 CodeGen/templates/LzIndexedCollectionImplem.cs
3301 CodeGen/templates/INamedCollection.cs
3302 CodeGen/templates/LzNamedCollectionImplem.cs
3304 Mono.Cecil.Metadata/MetadataRowWriter.cs
3305 Mono.Cecil.Metadata/MetadataWriter.cs
3306 Mono.Cecil.Implem/InterfaceCollection.cs
3307 Mono.Cecil.Implem/ModuleReferenceCollection.cs
3308 Mono.Cecil.Implem/ExternTypeCollection.cs
3309 Mono.Cecil.Implem/SecurityDeclarationCollection.cs
3310 Mono.Cecil.Implem/OverrideCollection.cs
3311 Mono.Cecil.Implem/ParameterDefinitionCollection.cs
3312 Mono.Cecil.Implem/EventDefinitionCollection.cs
3313 Mono.Cecil.Implem/FieldDefinitionCollection.cs
3314 Mono.Cecil.Implem/PropertyDefinitionCollection.cs
3315 Mono.Cecil.Implem/ModuleDefinitionCollection.cs
3316 Mono.Cecil.Implem/CustomAttributeCollection.cs
3317 Mono.Cecil.Implem/VariableDefinitionCollection.cs
3318 Mono.Cecil.Implem/TypeReferenceCollection.cs
3319 Mono.Cecil.Implem/StructureReader.cs
3320 Mono.Cecil.Implem/MethodDefinition.cs
3321 Mono.Cecil.Implem/EventDefinition.cs
3322 Mono.Cecil.Implem/FieldDefinition.cs
3323 Mono.Cecil.Implem/InstructionCollection.cs
3324 Mono.Cecil.Implem/StructureWriter.cs
3325 Mono.Cecil.Implem/ModuleDefinition.cs
3326 Mono.Cecil.Implem/MethodReference.cs
3327 Mono.Cecil.Implem/TypeReference.cs
3328 Mono.Cecil.Implem/TypeDefinitionCollection.cs
3329 Mono.Cecil.Implem/AssemblyNameReferenceCollection.cs
3330 Mono.Cecil.Implem/ReflectionReader.cs
3331 Mono.Cecil.Implem/MethodReturnType.cs
3332 Mono.Cecil.Implem/ReflectionWriter.cs
3333 Mono.Cecil.Implem/AssemblyDefinition.cs
3334 Mono.Cecil.Implem/TypeDefinition.cs
3335 Mono.Cecil.Implem/AggressiveReflectionReader.cs
3336 Mono.Cecil.Implem/MethodDefinitionCollection.cs
3337 Mono.Cecil.Implem/CodeWriter.cs
3338 Mono.Cecil.Implem/LazyReflectionReader.cs
3339 Mono.Cecil.Implem/ParameterDefinition.cs
3340 Mono.Cecil.Implem/PropertyDefinition.cs
3341 Mono.Cecil.Implem/NestedTypeCollection.cs
3342 Mono.Cecil.Implem/ResourceCollection.cs
3343 Mono.Cecil.Implem/ExceptionHandlerCollection.cs
3344 Mono.Cecil.Signatures/SignatureReader.cs
3345 Mono.Cecil.Signatures/SignatureWriter.cs:
3346 Working on the writing layer.
3347 Begin to fix brokens part of the API.
3349 2005-08-15 Jb Evain <jbevain@gmail.com>
3351 * Mono.Cecil/ITypeDefinition.cs
3352 CodeGen/templates/MetadataTableReader.cs
3353 CodeGen/templates/PEFileHeader.cs
3354 CodeGen/templates/ImageWriter.cs
3355 CodeGen/templates/CLIHeader.cs
3356 CodeGen/templates/PEOptionalHeader.cs
3357 CodeGen/templates/MetadataTableWriter.cs
3358 CodeGen/templates/Table.cs
3359 CodeGen/templates/MetadataRowReader.cs
3360 CodeGen/templates/BaseMetadataVisitor.cs
3361 CodeGen/templates/Section.cs
3362 CodeGen/templates/MetadataRowWriter.cs
3363 CodeGen/templates/ImageReader.cs
3364 CodeGen/templates/IMetadataVisitor.cs
3365 Mono.Cecil.Metadata/Assembly.cs
3366 Mono.Cecil.Metadata/PropertyMap.cs
3367 Mono.Cecil.Metadata/InterfaceImpl.cs
3368 Mono.Cecil.Metadata/MetadataInitializer.cs
3369 Mono.Cecil.Metadata/Constant.cs
3370 Mono.Cecil.Metadata/MethodSpec.cs
3371 Mono.Cecil.Metadata/BaseMetadataVisitor.cs
3372 Mono.Cecil.Metadata/DeclSecurity.cs
3373 Mono.Cecil.Metadata/TypeDef.cs
3374 Mono.Cecil.Metadata/MethodImpl.cs
3375 Mono.Cecil.Metadata/GenericParamConstraint.cs
3376 Mono.Cecil.Metadata/NestedClass.cs
3377 Mono.Cecil.Metadata/MetadataTableReader.cs
3378 Mono.Cecil.Metadata/AssemblyRefProcessor.cs
3379 Mono.Cecil.Metadata/AssemblyRef.cs
3380 Mono.Cecil.Metadata/AssemblyRefOS.cs
3381 Mono.Cecil.Metadata/Method.cs
3382 Mono.Cecil.Metadata/RowCollection.cs
3383 Mono.Cecil.Metadata/MetadataTableWriter.cs
3384 Mono.Cecil.Metadata/StringsHeap.cs
3385 Mono.Cecil.Metadata/MetadataRowReader.cs
3386 Mono.Cecil.Metadata/ExportedType.cs
3387 Mono.Cecil.Metadata/CustomAttribute.cs
3388 Mono.Cecil.Metadata/Param.cs
3389 Mono.Cecil.Metadata/MetadataReader.cs
3390 Mono.Cecil.Metadata/ClassLayout.cs
3391 Mono.Cecil.Metadata/MetadataRowWriter.cs
3392 Mono.Cecil.Metadata/BlobHeap.cs
3393 Mono.Cecil.Metadata/MetadataWriter.cs
3394 Mono.Cecil.Metadata/AssemblyOS.cs
3395 Mono.Cecil.Metadata/ModuleRef.cs
3396 Mono.Cecil.Metadata/MetadataRoot.cs
3397 Mono.Cecil.Metadata/UserStringsHeap.cs
3398 Mono.Cecil.Metadata/FieldMarshal.cs
3399 Mono.Cecil.Metadata/GenericParam.cs
3400 Mono.Cecil.Metadata/ImplMap.cs
3401 Mono.Cecil.Metadata/TableCollection.cs
3402 Mono.Cecil.Metadata/TablesHeap.cs
3403 Mono.Cecil.Metadata/MetadataStreamCollection.cs
3404 Mono.Cecil.Metadata/ManifestResource.cs
3405 Mono.Cecil.Metadata/TypeRef.cs
3406 Mono.Cecil.Metadata/AssemblyProcessor.cs
3407 Mono.Cecil.Metadata/EventMap.cs
3408 Mono.Cecil.Metadata/File.cs
3409 Mono.Cecil.Metadata/Event.cs
3410 Mono.Cecil.Metadata/FieldLayout.cs
3411 Mono.Cecil.Metadata/Field.cs
3412 Mono.Cecil.Metadata/Property.cs
3413 Mono.Cecil.Metadata/Module.cs
3414 Mono.Cecil.Metadata/GuidHeap.cs
3415 Mono.Cecil.Metadata/MethodSemantics.cs
3416 Mono.Cecil.Metadata/StandAloneSig.cs
3417 Mono.Cecil.Metadata/MetadataStream.cs
3418 Mono.Cecil.Metadata/FieldRVA.cs
3419 Mono.Cecil.Metadata/TypeSpec.cs
3420 Mono.Cecil.Metadata/MemberRef.cs
3421 Mono.Cecil.Metadata/IMetadataVisitor.cs
3422 Mono.Cecil.Implem/TypeDefinition.cs
3423 Mono.Cecil.Signatures/MethodRefSig.cs
3424 Mono.Cecil.Signatures/SignatureReader.cs
3425 Mono.Cecil.Signatures/FieldSig.cs
3426 Mono.Cecil.Signatures/PropertySig.cs
3427 Mono.Cecil.Signatures/ISignatureVisitor.cs
3428 Mono.Cecil.Signatures/SignatureWriter.cs
3429 Mono.Cecil.Signatures/MethodDefSig.cs
3430 Mono.Cecil.Signatures/LocalVarSig.cs
3431 Mono.Cecil.Binary/PEFileHeader.cs
3432 Mono.Cecil.Binary/IBinaryVisitor.cs
3433 Mono.Cecil.Binary/ImageWriter.cs
3434 Mono.Cecil.Binary/CLIHeader.cs
3435 Mono.Cecil.Binary/SectionCollection.cs
3436 Mono.Cecil.Binary/Image.cs
3437 Mono.Cecil.Binary/PEOptionalHeader.cs
3438 Mono.Cecil.Binary/ImageInitializer.cs
3439 Mono.Cecil.Binary/Imports.cs
3440 Mono.Cecil.Binary/BaseImageVisitor.cs
3441 Mono.Cecil.Binary/DOSHeader.cs
3442 Mono.Cecil.Binary/Section.cs
3443 Mono.Cecil.Binary/ImageReader.cs:
3444 Apply the new visitor model to the rest of Cecil.
3446 * Mono.Cecil/IReflectionVisitor.cs
3447 Mono.Cecil/BaseReflectionVisitor.cs
3448 Mono.Cecil/IReflectionStructureVisitor.cs
3449 Mono.Cecil/BaseStructureVisitor.cs
3450 Mono.Cecil.Cil/BaseCodeVisitor.cs
3451 Mono.Cecil.Cil/ICodeVisitor.cs
3452 CodeGen/cecil-gen.rb
3453 CodeGen/cecil-gen-types.rb
3454 CodeGen/templates/IndexedCollectionImplem.cs
3455 CodeGen/templates/NamedCollectionImplem.cs
3456 CodeGen/templates/LzIndexedCollectionImplem.cs
3457 CodeGen/templates/LzNamedCollectionImplem.cs
3459 Mono.Cecil.Implem/InterfaceCollection.cs
3460 Mono.Cecil.Implem/AssemblyLinkedResource.cs
3461 Mono.Cecil.Implem/ModuleReferenceCollection.cs
3462 Mono.Cecil.Implem/AssemblyName.cs
3463 Mono.Cecil.Implem/Instruction.cs
3464 Mono.Cecil.Implem/ExternTypeCollection.cs
3465 Mono.Cecil.Implem/MarshalDesc.cs
3466 Mono.Cecil.Implem/SecurityDeclarationCollection.cs
3467 Mono.Cecil.Implem/OverrideCollection.cs
3468 Mono.Cecil.Implem/ExceptionHandler.cs
3469 Mono.Cecil.Implem/EmbeddedResource.cs
3470 Mono.Cecil.Implem/ModuleReference.cs
3471 Mono.Cecil.Implem/ParameterDefinitionCollection.cs
3472 Mono.Cecil.Implem/EventDefinitionCollection.cs
3473 Mono.Cecil.Implem/FieldDefinitionCollection.cs
3474 Mono.Cecil.Implem/PropertyDefinitionCollection.cs
3475 Mono.Cecil.Implem/ModuleDefinitionCollection.cs
3476 Mono.Cecil.Implem/CustomAttributeCollection.cs
3477 Mono.Cecil.Implem/VariableDefinitionCollection.cs
3478 Mono.Cecil.Implem/TypeReferenceCollection.cs
3479 Mono.Cecil.Implem/StructureReader.cs
3480 Mono.Cecil.Implem/MethodDefinition.cs
3481 Mono.Cecil.Implem/EventDefinition.cs
3482 Mono.Cecil.Implem/FieldDefinition.cs
3483 Mono.Cecil.Implem/InstructionCollection.cs
3484 Mono.Cecil.Implem/StructureWriter.cs
3485 Mono.Cecil.Implem/ModuleDefinition.cs
3486 Mono.Cecil.Implem/CustomAttribute.cs
3487 Mono.Cecil.Implem/VariableDefinition.cs
3488 Mono.Cecil.Implem/TypeReference.cs
3489 Mono.Cecil.Implem/TypeDefinitionCollection.cs
3490 Mono.Cecil.Implem/AssemblyNameReferenceCollection.cs
3491 Mono.Cecil.Implem/ReflectionReader.cs
3492 Mono.Cecil.Implem/ReflectionWriter.cs
3493 Mono.Cecil.Implem/PInvokeInfo.cs
3494 Mono.Cecil.Implem/AssemblyDefinition.cs
3495 Mono.Cecil.Implem/TypeDefinition.cs
3496 Mono.Cecil.Implem/CodeReader.cs
3497 Mono.Cecil.Implem/AggressiveReflectionReader.cs
3498 Mono.Cecil.Implem/MethodDefinitionCollection.cs
3499 Mono.Cecil.Implem/CodeWriter.cs
3500 Mono.Cecil.Implem/SecurityDeclaration.cs
3501 Mono.Cecil.Implem/LazyReflectionReader.cs
3502 Mono.Cecil.Implem/LinkedResource.cs
3503 Mono.Cecil.Implem/ParameterDefinition.cs
3504 Mono.Cecil.Implem/PropertyDefinition.cs
3505 Mono.Cecil.Implem/MethodBody.cs
3506 Mono.Cecil.Implem/NestedTypeCollection.cs
3507 Mono.Cecil.Implem/ResourceCollection.cs
3508 Mono.Cecil.Implem/ExceptionHandlerCollection.cs:
3509 BIG changes in the visitor object model. Last one
3510 was causing ambiguous calls, and does not provides
3511 differences between an interface and a typedef for
3512 instance. This is corrected by suffixing the visit
3513 method by the name of what it is visiting, and by
3514 configuring some collection to stop the propagation
3517 * Mono.Cecil/ITypeDefinition.cs
3518 Mono.Cecil/IArrayType.cs
3519 CodeGen/templates/Utilities.cs
3520 Mono.Cecil.Metadata/Utilities.cs
3521 Mono.Cecil.Implem/ArrayType.cs
3522 Mono.Cecil.Implem/TypeReference.cs
3523 Mono.Cecil.Implem/ReflectionWriter.cs
3524 Mono.Cecil.Implem/TypeDefinition.cs
3525 Mono.Cecil.Implem/CodeWriter.cs
3526 Mono.Cecil.Implem/Constants.cs
3527 Mono.Cecil.Signatures/MarshalSig.cs:
3528 Work on the writing layer goes on.
3530 2005-08-14 Jb Evain <jbevain@gmail.com>
3532 * Mono.Cecil/NativeType.cs
3533 Mono.Cecil.Signatures/MarshalSig.cs
3534 Mono.Cecil.Signatures/SignatureWriter.cs
3535 Mono.Cecil.Signatures/Signature.cs:
3536 Work on signature writing.
3537 Mono.Cecil.Implem/MethodDefinition.cs
3538 Mono.Cecil.Implem/TypeDefinition.cs:
3539 Correct bugs in setting the hasThis field.
3541 * CodeGen/templates/ImageWriter.cs
3542 Mono.Cecil.Binary/templates/ImageWriter.cs
3543 Mono.Cecil/AssemblyKind.cs:
3544 Make assemblies executable on win32.
3545 Mono.Cecil.Implem/TypeDefinition.cs:
3546 Mark new fields as loaded.
3547 Mono.Cecil.Implem/ReflectionWriter.cs:
3548 Correct the style to patch provided by
3549 Sebastien Ros <s.ros@evaluant.com>
3551 2005-08-13 Jb Evain <jbevain@gmail.com>
3553 * Mono.Cecil/IMethod.cs
3554 Mono.Cecil/ITypeDefinition.cs
3555 Mono.Cecil/IModuleDefinition.cs
3556 Mono.Cecil.Cil/OpCode.cs
3557 Mono.Cecil.Cil/ICilWorker.cs
3558 CodeGen/templates/ImageReader.cs
3559 Mono.Cecil.Metadata/MetadataReader.cs
3560 Mono.Cecil.Metadata/MetadataWriter.cs
3561 Mono.Cecil.Metadata/MetadataRoot.cs
3562 Mono.Cecil.Implem/ReflectionHelper.cs
3563 Mono.Cecil.Implem/CilWorker.cs
3564 Mono.Cecil.Implem/StructureReader.cs
3565 Mono.Cecil.Implem/MethodDefinition.cs
3566 Mono.Cecil.Implem/StructureWriter.cs
3567 Mono.Cecil.Implem/ModuleDefinition.cs
3568 Mono.Cecil.Implem/MethodReference.cs
3569 Mono.Cecil.Implem/ReflectionReader.cs
3570 Mono.Cecil.Implem/ReflectionWriter.cs
3571 Mono.Cecil.Implem/TypeDefinition.cs
3572 Mono.Cecil.Implem/CodeReader.cs
3573 Mono.Cecil.Implem/CodeWriter.cs
3574 Mono.Cecil.Implem/Constants.cs
3575 Mono.Cecil.Implem/ParameterDefinition.cs
3576 Mono.Cecil.Implem/MethodBody.cs
3577 Mono.Cecil.Binary/ImageReader.cs
3578 Mono.Cecil.Binary/MemoryBinaryWriter.cs
3579 Mono.Cecil.Signatures/SignatureReader.cs
3580 Mono.Cecil.Signatures/SignatureWriter.cs:
3581 On going work on the writing layer.
3583 * Mono.Cecil.Signatures/SignatureReader.cs:
3584 Fix a bug when reading chars inside a custom
3585 attribute signature.
3587 2005-08-12 Jb Evain <jbevain@gmail.com>
3589 * Mono.Cecil/AssemblyFactory.cs
3590 CodeGen/templates/ImageWriter.cs
3591 CodeGen/templates/MetadataTableWriter.cs
3592 CodeGen/templates/MetadataRowWriter.cs
3593 Mono.Cecil.Metadata/MetadataTableWriter.cs
3594 Mono.Cecil.Metadata/MetadataRowWriter.cs
3595 Mono.Cecil.Metadata/MetadataWriter.cs
3596 Mono.Cecil.Implem/StructureWriter.cs
3597 Mono.Cecil.Binary/ImageWriter.cs
3598 Mono.Cecil.Binary/MemoryBinaryWriter.cs:
3599 Use a custom binary writer instead of the old one.
3601 * Mono.Cecil/IMethod.cs
3602 Mono.Cecil.Cil/BaseCodeVisitor.cs
3603 Mono.Cecil.Cil/MethodHeader.cs
3604 Mono.Cecil.Cil/ICodeVisitor.cs
3605 Mono.Cecil.Implem/Instruction.cs
3606 Mono.Cecil.Implem/MethodDefinition.cs
3607 Mono.Cecil.Implem/FieldDefinition.cs
3608 Mono.Cecil.Implem/ReflectionWriter.cs
3609 Mono.Cecil.Implem/CodeReader.cs
3610 Mono.Cecil.Implem/CodeWriter.cs
3611 Mono.Cecil.Implem/MethodBody.cs:
3612 Ongoing work on the writing layer.
3614 * CodeGen/templates/Utilities.cs
3615 CodeGen/templates/NamedCollectionImplem.cs
3616 CodeGen/templates/MetadataRowWriter.cs
3617 CodeGen/templates/LzNamedCollectionImplem.cs
3619 Mono.Cecil/IMethod.cs
3620 Mono.Cecil/IAssemblyName.cs
3621 Mono.Cecil/IModuleDefinition.cs
3622 Mono.Cecil/AssemblyFactory.cs
3623 Mono.Cecil.Metadata/MetadataRowWriter.cs
3624 Mono.Cecil.Metadata/Utilities.cs
3625 Mono.Cecil.Implem/ReflectionHelper.cs
3626 Mono.Cecil.Implem/StructureReader.cs
3627 Mono.Cecil.Implem/MethodDefinition.cs
3628 Mono.Cecil.Implem/EventDefinition.cs
3629 Mono.Cecil.Implem/FieldDefinition.cs
3630 Mono.Cecil.Implem/StructureWriter.cs
3631 Mono.Cecil.Implem/ModuleDefinition.cs
3632 Mono.Cecil.Implem/MethodReference.cs
3633 Mono.Cecil.Implem/TypeDefinitionCollection.cs
3634 Mono.Cecil.Implem/ReflectionReader.cs
3635 Mono.Cecil.Implem/ReflectionWriter.cs
3636 Mono.Cecil.Implem/TypeDefinition.cs
3637 Mono.Cecil.Implem/AggressiveReflectionReader.cs
3638 Mono.Cecil.Implem/Constants.cs
3639 Mono.Cecil.Implem/ParameterDefinition.cs
3640 Mono.Cecil.Implem/PropertyDefinition.cs
3641 Mono.Cecil.Signatures/SignatureWriter.cs:
3642 Ongoing work on the writing layer.
3643 Some fixes to the reading layer as well.
3645 2005-08-11 Jb Evain <jbevain@gmail.com>
3647 * Mono.Cecil.Signatures/SignatureReader.cs:
3648 Read Array signatures correctly.
3650 * Mono.Cecil/IMethodSignature.cs:
3651 Remove the setted for the return type.
3652 * Mono.Cecil.Implem/CilWorker.cs:
3653 Fix the build. Me idiot!
3654 * Mono.Cecil.Implem/Constants.cs:
3655 Remove unexisting type Variant.
3656 * Mono.Cecil.Implem/ReflectionHelper.cs:
3657 Complete the helper.
3659 2005-08-10 Jb Evain <jbevain@gmail.com>
3661 * Mono.Cecil.Cil/IMethodBody.cs
3662 Mono.Cecil.Cil/ICilEmitter.cs
3663 Mono.Cecil.Cil/ICilWorker.cs
3664 Mono.Cecil.Implem/CilWorker.cs
3665 Mono.Cecil.Implem/ReflectionWriter.cs
3666 Mono.Cecil.Implem/MethodBody.cs
3667 Mono.Cecil.Implem/CilEmitter.cs
3668 Mono.Cecil.Signatures/SignatureReader.cs
3669 Mono.Cecil.Signatures/SignatureWriter.cs:
3670 Prepare the api for the cil emitting.
3672 * CodeGen/templates/Utilities.cs
3673 CodeGen/templates/MetadataRowReader.cs
3674 CodeGen/templates/MetadataRowWriter.cs
3675 Mono.Cecil.Metadata/Utilities.cs
3676 Mono.Cecil.Metadata/MetadataRowReader.cs
3677 Mono.Cecil.Metadata/MetadataRowWriter.cs:
3678 Fix the build on .net, i was using a sugar
3679 syntax for delegates that csc does not understand.
3680 Remove the coded index cache from the static class
3681 Utilities, and add one per row visitor.
3683 * Mono.Cecil/IMethodReturnType.cs
3684 Mono.Cecil.Implem/MethodReturnType.cs
3685 Mono.Cecil.Implem/ReflectionReader.cs
3686 Mono.Cecil.Implem/ParameterDefinition.cs:
3687 Make IMethodReturn type inherits IHasMarshalSpec so
3688 that users can read marshaling info for return types,
3691 * CodeGen/templates/ImageWriter.cs
3692 Mono.Cecil.Binary/ImageWriter.cs
3693 Mono.Cecil.Metadata/MetadataWriter.cs
3694 Mono.Cecil.Implem/ReflectionWriter.cs:
3695 Cecil now emits assemblies understood by the .net clr.
3697 2005-08-09 Jb Evain <jbevain@gmail.com>
3699 * Mono.Cecil/AssemblyKind.cs
3700 CodeGen/templates/ImageWriter.cs
3701 CodeGen/templates/ImageReader.cs
3702 Mono.Cecil.Metadata/MetadataWriter.cs
3703 Mono.Cecil.Binary/ImageWriter.cs
3704 Mono.Cecil.Binary/ImageInitializer.cs
3705 Mono.Cecil.Binary/ImageReader.cs:
3706 Lots of little fixes. Now dumpbin is coherent
3707 compared with an assembly emitted with csc or mcs
3708 but still not yet compatible with .net.
3710 * Mono.Cecil.Signatures/SignatureReader.cs:
3711 Fix an array out of range while trying to read
3712 fixed arrays signatures
3714 * CodeGen/templates/ImageWriter.cs
3715 Mono.Cecil.Metadata/MetadataReader.cs
3716 Mono.Cecil.Metadata/MetadataWriter.cs
3717 Mono.Cecil.Implem/AssemblyName.cs
3718 Mono.Cecil.Implem/StructureReader.cs
3719 Mono.Cecil.Implem/ReflectionWriter.cs
3720 Mono.Cecil.Binary/ImageCharacteristics.cs
3721 Mono.Cecil.Binary/ImageWriter.cs
3722 Mono.Cecil.Binary/Image.cs:
3723 Cecil now emits assemblies that are understood
3724 by Mono and Cecil itself. Still have troubles
3727 2005-08-08 Jb Evain <jbevain@gmail.com>
3729 * CodeGen/cecil-gen.rb
3730 CodeGen/templates/MetadataTableReader.cs
3731 CodeGen/templates/ImageWriter.cs
3732 CodeGen/templates/MetadataTableWriter.cs
3733 CodeGen/templates/BaseMetadataVisitor.cs
3734 CodeGen/templates/MetadataRowReader.cs
3735 CodeGen/templates/MetadataRowWriter.cs
3737 Mono.Cecil.Metadata/MetadataInitializer.cs
3738 Mono.Cecil.Metadata/BaseMetadataVisitor.cs
3739 Mono.Cecil.Metadata/MetadataTableReader.cs
3740 Mono.Cecil.Metadata/MetadataTableWriter.cs
3741 Mono.Cecil.Metadata/MetadataRowReader.cs
3742 Mono.Cecil.Metadata/MetadataRowWriter.cs
3743 Mono.Cecil.Metadata/MetadataWriter.cs
3744 Mono.Cecil.Binary/ImageWriter.cs
3745 Mono.Cecil.Binary/CLIHeader.cs
3746 Mono.Cecil.Binary/ImageInitializer.cs:
3747 The writing layer almost works.
3749 * Mono.Cecil/AssemblyKind.cs
3750 Mono.Cecil/TargetRuntime.cs
3751 Mono.Cecil.dll.sources:
3752 Add thoses enumes to control assembly writing.
3753 * Mono.Cecil/AssemblyFactory.cs
3754 Mono.Cecil/IReflectionVisitor.cs
3755 Mono.Cecil/BaseReflectionVisitor.cs
3756 Mono.Cecil/IAssemblyDefinition.cs
3757 Mono.Cecil/IReflectionStructureVisitor.cs
3758 Mono.Cecil/BaseStructureVisitor.cs
3759 CodeGen/templates/ImageWriter.cs
3760 CodeGen/templates/MetadataTableWriter.cs
3761 CodeGen/templates/MetadataRowWriter.cs
3762 CodeGen/templates/LzNamedCollectionImplem.cs
3763 Mono.Cecil.Metadata/MetadataInitializer.cs
3764 Mono.Cecil.Metadata/MetadataTableWriter.cs
3765 Mono.Cecil.Metadata/MetadataRowWriter.cs
3766 Mono.Cecil.Metadata/MetadataWriter.cs
3767 Mono.Cecil.Metadata/MetadataStreamCollection.cs
3768 Mono.Cecil.Implem/AssemblyName.cs
3769 Mono.Cecil.Implem/StructureWriter.cs
3770 Mono.Cecil.Implem/ModuleDefinition.cs
3771 Mono.Cecil.Implem/TypeDefinitionCollection.cs
3772 Mono.Cecil.Implem/ReflectionWriter.cs
3773 Mono.Cecil.Implem/AssemblyDefinition.cs
3774 Mono.Cecil.Binary/ImageWriter.cs
3775 Mono.Cecil.Binary/ImageInitializer.cs
3776 Mono.Cecil.Binary/Imports.cs:
3777 Things are now plugged. SaveAssembly will now emits
3778 a binary file. A broken file, but heh, at least it does.
3780 2005-08-07 Jb Evain <jbevain@gmail.com>
3782 * CodeGen/templates/ImageReader.cs
3783 CodeGen/templates/ImageWriter.cs
3784 CodeGen/templates/IMetadataVisitor.cs
3785 Mono.Cecil.Binary/ImageReader.cs
3786 Mono.Cecil.Binary/ImageWriter.cs
3787 Mono.Cecil.Metadata/IMetadataVisitor.cs
3788 Mono.Cecil.Metadata/BaseMetadataVisitor.cs
3789 Mono.Cecil.Metadata/MetadataReader.cs
3790 Mono.Cecil.Metadata/MetadataWriter.cs
3791 Mono.Cecil.Metadata/MetadataStreamCollection.cs:
3792 Simplify IMetadataVisitor.
3793 Work on the writing layer, closer to have something testable
3797 CodeGen/templates/ImageWriter.cs
3798 Mono.Cecil.Metadata/MetadataWriter.cs
3799 Mono.Cecil.Binary/PEOptionalHeader.cs
3800 Mono.Cecil.Binary/ImageWriter.cs
3801 Mono.Cecil.Binary/Imports.cs:
3802 don't stop don't stop come ON!
3804 * CodeGen/templates/ImageWriter.cs
3805 CodeGen/templates/ImageReader.cs
3806 CodeGen/templates/Section.cs
3807 Mono.Cecil.Binary/Image.cs
3808 Mono.Cecil.Binary/ImageReader.cs
3809 Mono.Cecil.Binary/ImageInitializer.cs
3810 Mono.Cecil.Binary/ImageWriter.cs
3811 Mono.Cecil.Binary/Section.cs
3812 Mono.Cecil.Metadata/MetadataReader.cs
3813 Mono.Cecil.Metadata/MetadataWriter.cs
3814 Mono.Cecil.Implem/StructureReader.cs
3815 Mono.Cecil.Implem/StructureWriter.cs
3816 Mono.Cecil.Implem/CodeWriter.cs:
3817 Some writing layer love.
3819 * CodeGen/templates/ImageWriter.cs
3820 CodeGen/templates/ImageReader.cs
3821 Mono.Cecil.Binary/Imports.cs
3822 Mono.Cecil.Binary/ImageReader.cs
3823 Mono.Cecil.Binary/ImageInitializer.cs
3824 Mono.Cecil.Binary/ImageWriter.cs:
3825 Read an write correctly the Hint/Name table
3826 at the end of the .text section.
3828 * CodeGen/templates/ImageWriter.cs
3829 Mono.Cecil.Metadata/MetadataWriter.cs
3830 Mono.Cecil.Binary/ImageWriter.cs
3831 Mono.Cecil.Binary/ImageInitializer.cs:
3832 More writing layer stuff.
3834 2005-08-06 Jb Evain <jbevain@gmail.com>
3836 * CodeGen/templates/ImageWriter.cs
3837 CodeGen/templates/MetadataTableWriter.cs
3838 Mono.Cecil.Metadata/MetadataInitializer.cs
3839 Mono.Cecil.Metadata/MetadataTableWriter.cs
3840 Mono.Cecil.Metadata/StringsHeap.cs
3841 Mono.Cecil.Metadata/BlobHeap.cs
3842 Mono.Cecil.Metadata/MetadataWriter.cs
3843 Mono.Cecil.Metadata/UserStringsHeap.cs
3844 Mono.Cecil.Metadata/TableCollection.cs
3845 Mono.Cecil.Metadata/TablesHeap.cs
3846 Mono.Cecil.Metadata/MetadataHeap.cs
3847 Mono.Cecil.Metadata/GuidHeap.cs
3848 Mono.Cecil.Metadata/MetadataStream.cs
3849 Mono.Cecil.Implem/StructureWriter.cs
3850 Mono.Cecil.Implem/ReflectionWriter.cs
3851 Mono.Cecil.Implem/CodeWriter.cs
3852 Mono.Cecil.Binary/ImageWriter.cs
3853 Mono.Cecil.Binary/ImageInitializer.cs:
3854 Playing lego with bricks from the writing layer.
3856 * Mono.Cecil.dll.sources:
3858 * CodeGen/templates/CLIHeader.cs
3859 CodeGen/templates/PEOptionalHeader.cs
3862 Mono.Cecil.Binary/CLIHeader.cs
3863 Mono.Cecil.Binary/PEOptionalHeader.cs:
3864 Mono.Cecil.Binary/PEFileHeader.cs
3865 On going work on the writing layer
3867 * CodeGen/templates/ImageWriter.cs
3868 CodeGen/templates/ImageReader.cs
3869 Mono.Cecil.Binary/BaseImageVisitor.cs
3870 Mono.Cecil.Binary/ImageReader.cs
3871 Mono.Cecil.Binary/ImageInitializer.cs
3872 Mono.Cecil.Binary/ImageWriter.cs
3873 Mono.Cecil.Metadata/BaseMetadataVisitor.cs
3874 Mono.Cecil.Metadata/MetadataReader.cs
3875 Mono.Cecil.Metadata/MetadataInitializer.cs
3876 Mono.Cecil.Metadata/MetadataWriter.cs
3877 Mono.Cecil.Metadata/MetadataStream.cs
3878 Mono.Cecil.Implem/ReflectionWriter.cs
3879 Mono.Cecil.Implem/CodeWriter.cs:
3880 Add helpers visitor.
3881 On going work on the writing layer.
3883 * CodeGen/templates/Utilities.cs
3884 CodeGen/templates/MetadataRowReader.cs
3885 CodeGen/templates/MetadataRowWriter.cs
3886 Mono.Cecil.Metadata/StringsHeap.cs
3887 Mono.Cecil.Metadata/MetadataRowReader.cs
3888 Mono.Cecil.Metadata/MetadataRowWriter.cs
3889 Mono.Cecil.Metadata/MetadataReader.cs
3890 Mono.Cecil.Metadata/Utilities.cs
3891 Mono.Cecil.Metadata/BlobHeap.cs
3892 Mono.Cecil.Metadata/MetadataWriter.cs
3893 Mono.Cecil.Metadata/MetadataHeap.cd
3894 Mono.Cecil.Metadata/GuidHeap.cs:
3895 On going work on the writing layer.
3897 * CodeGen/templates/MetadataTableWriter.cs
3898 Mono.Cecil.Metadata/MetadataTableWriter.cs
3899 Mono.Cecil.Metadata/MetadataWriter.cs:
3900 On going work on the writing layer.
3901 * Mono.Cecil.Implem/StructureWriter.cs:
3902 Correctly override methods
3903 * CodeGen/templates/MetadataRowWriter.cs
3904 Mono.Cecil.Metadata/MetadataRowWriter.cs
3905 Mono.Cecil.Implem/ReflectionWriter.cs:
3908 * Mono.Cecil/IResource.cs
3909 Mono.Cecil.Implem/AssemblyLinkedResource.cs
3910 Mono.Cecil.Implem/EmbeddedResource.cs
3911 Mono.Cecil.Implem/LinkedResource.cs
3912 Mono.Cecil.Implem/Resource.cs:
3913 Rename field Attributes to Flags for the sake of consistency.
3914 * Mono.Cecil.Metadata/MetadataWriter.cs
3915 Mono.Cecil.Implem/ReflectionWriter.cs
3916 Mono.Cecil.Implem/StructureWriter.cs:
3917 On going work on the writing layer.
3918 * Mono.Cecil.Implem/StructureReader.cs:
3921 * Mono.Cecil/IAssemblyName.cs
3922 Mono.Cecil.Implem/AssemblyName.cs
3923 Mono.Cecil.Implem/StructureReader.cs:
3924 Add an AssemblyFlag property to an IAssemblyNameReference,
3925 implement it, and read it.
3927 2005-08-04 Jb Evain <jbevain@gmail.com>
3929 * Mono.Cecil.Implem/ReflectionReader.cs:
3930 set a correct name to nameless parameters
3932 * Mono.Cecil.Signatures/SignatureReader.cs:
3933 don't crash on null custom attributes
3935 2005-08-03 Jb Evain <jbevain@gmail.com>
3937 * CodeGen/templates/OpCodes.cs
3938 Mono.Cecil.Cil/OpCodes.cs
3939 Mono.Cecil.Cil/OpCode.cs:
3940 Revert modifications to reduce code. OpCodes::.ctors were
3943 * Mono.Cecil.Implem/ReflectionReader.cs:
3944 Make sure parameters are read even if there is no
3945 corresponding Param row. Thanks Cesar for the hint.
3947 * Mono.Cecil.Metadata/MetadataWriter.cs
3948 Mono.Cecil.Metadata/UserStringsHeap.cs
3949 Mono.Cecil.Metadata/GuidHeap.cs
3950 Mono.Cecil.Implem/CodeReader.cs:
3951 On going work on the writing layer
3953 * CodeGen/cecil-gen.rb
3954 CodeGen/cecil-gen-sources.rb
3956 * *.*: set svn:eol-style to native
3958 * Mono.Cecil/BaseStructureVisitor.cs
3959 Mono.Cecil/BaseReflectionVisitor.cs
3960 Mono.Cecil.Implem/BaseReflectionReader.cs:
3961 Add empty visitors for the sake of simplicity
3962 * Mono.Cecil.Implem/StructureReader.cs
3963 Mono.Cecil.Implem/ReflectionReader.cs:
3964 Inherit new visitors
3966 2005-08-03 Jb Evain <jbevain@gmail.com>
3968 * Mono.Cecil.Implem/ReflectionReader.cs
3969 Mono.Cecil.Implem/AggressiveReflectionReader.cs
3970 Mono.Cecil.Implem/LazyReflectionReader.cs
3971 Mono.Cecil.Implem/CodeReader.cs:
3972 Modify and add helpers to avoid lots of casts.
3973 Correct a bug in custom attributes attribution.
3975 2005-08-02 Jb Evain <jbevain@gmail.com>
3977 * Mono.Cecil.Signatures/TypeSpec.cs:
3978 Don't restrain the SigType
3979 * Mono.Cecil.Implem/AggressiveReflectionReader.cs:
3980 Set PInvokeInfos on the correct method
3982 2005-07-30 Jb Evain <jbevain@gmail.com>
3984 * CodeGen/cecil-gen.rb
3985 CodeGen/cecil-gen-sources.rb:
3986 make them executable
3987 * CodeGen/cecil-gen-types: style
3988 * CodeGen/templates/ImageWriter.cs
3989 Mono.Cecil.Binary/ImageWriter.cs:
3990 Prelimimary work on assembly writing
3992 2005-07-29 Jb Evain <jbevain@gmail.com>
3994 * CodeGen/cecil-gen-types.rb
3995 CodeGen/templates/MetadataTableWriter.cs
3996 CodeGen/templates/MetadataRowWriter.cs
3997 Mono.Cecil/AssemblyFactory.cs
3998 Mono.Cecil.Metadata/MetadataTableWriter.cs
3999 Mono.Cecil.Metadata/MetadataRowWriter.cs
4000 Mono.Cecil.Implem/StructureWriter.cs
4001 Mono.Cecil.Implem/ReflectionWriter.cs:
4002 Preliminary work on assembly writing
4004 2005-07-28 Jb Evain <jbevain@gmail.com>
4006 * Mono.Cecil/AssemblyFactory.cs
4007 Mono.Cecil.Implem/StructureWriter.cs
4008 Preliminary work on assembly writing
4010 * Mono.Cecil/IMetadataTokenProvider.cs
4011 Mono.Cecil/IMember.cs
4012 Mono.Cecil/IParameter.cs:
4013 Add a MetadataToken property on searchable items
4014 * Mono.Cecil.Metadata/MetadataToken.cs:
4015 Add a factory method to create token from row number
4016 * Mono.Cecil.Implem/TypeReference.cs
4017 Mono.Cecil.Implem/MemberReference.cs
4018 Mono.Cecil.Implem/ParameterDefinition.cs:
4019 Implement the token property
4020 * Mono.Cecil.Implem/ReflectionReader.cs
4021 Mono.Cecil.Implem/AggressiveReflectionReader.cs
4022 Mono.Cecil.Implem/LazyReflectionReader.cs:
4023 Set the token property on reading
4024 * Mono.Cecil/IModuleDefinition.cs
4025 Mono.Cecil.Implem/ModuleDefinition.cs
4026 Mono.Cecil.Implem/ReflectionReader.cs:
4027 Add methods to lookup items from their tokens
4029 2005-07-27 Jb Evain <jbevain@gmail.com>
4031 * CodeGen/templates/OpCodes.cs
4032 Mono.Cecil.Cil/OpCodes.cs
4033 Mono.Cecil.Cil/OpCode.cs:
4034 Changes to reduce the size of the cache ctor
4036 2005-07-22 Raja R Harinath <rharinath@novell.com>
4038 * Makefile (MCS): Allow compiler to be overriden.
4040 2005-07-21 Todd Berman <tberman@off.net>
4042 * configure: Add a small stub configure (stolen from mcs) to set the
4044 * mono-cecil.pc.in: Add a mono-cecil.pc.in to allow for installation
4045 according to the new "Libraries with Unstable API" Wiki documentation.
4046 * Makefile: Add an install an a mono-cecil.pc target to allow for
4047 installation and creation of the pc file.
4049 2005-07-14 Jb Evain <jbevain@gmail.com>
4051 * CodeGen/templates/ImageReader.cs
4052 Mono.Cecil.Binary/IBinaryVisitor.cs
4053 Mono.Cecil.Binary/Image.cs
4054 Mono.Cecil.Binary/ImageInitializer.cs
4055 Mono.Cecil.Binary/Imports.cs
4056 Mono.Cecil.Binary/ImageReader.cs:
4059 2005-07-14 Jb Evain <jbevain@gmail.com>
4061 * CodeGen/cecil-gen.rb:
4062 make codegen works on ruby 1.8.2
4063 * CodeGen/templates/*.cs
4064 Mono.Cecil.Metadata/*.cs:
4067 2005-07-13 Jb Evain <jbevain@gmail.com>
4069 * Mono.Cecil.Implem/VariableDefinition.cs:
4072 2005-07-13 Jb Evain <jbevain@gmail.com>
4074 * Mono.Cecil.dll.sources: regenerated
4075 * Mono.Cecil.Signatures/SignatureReader.cs:
4076 Fix compilation warnings
4077 * Mono.Cecil/IArrayType.cs
4078 Mono.Cecil.Implem/ArrayType.cs:
4079 Add Rank helper property
4080 * Mono.Cecil/ITypeDefinition.cs
4081 Mono.Cecil.Implem/TypeDefinition.cs:
4082 Add Constructors helper property
4084 2005-07-11 Jb Evain <jbevain@gmail.com>
4086 * Mono.Cecil/IMethod.cs
4087 Mono.Cecil.Implem/Instruction.cs
4088 Mono.Cecil.Implem/ExceptionHandler.cs
4089 Mono.Cecil.Implem/MethodDefinition.cs
4090 Mono.Cecil.Implem/Label.cs
4091 Mono.Cecil.Implem/CodeReader.cs
4092 Mono.Cecil.Implem/MethodBody.cs
4093 Mono.Cecil.Implem/CilEmitter.cs
4094 Mono.Cecil.Cil/ILabel.cs
4095 Mono.Cecil.Cil/IInstruction.cs
4096 Mono.Cecil.Cil/IExceptionHandler.cs
4097 Mono.Cecil.Cil/IMethodBody.cs
4098 Mono.Cecil.Cil/ICilEmitter.cs:
4099 Preliminary changes on the instruction model before
4102 2005-07-08 Jb Evain <jbevain@gmail.com>
4104 * Every generated files: use \n instead of \r\n
4106 2005-07-07 Jb Evain <jbevain@gmail.com>
4108 * *.*: use Mono coding conventions
4109 * Mono.Xml/*.*: update Mono.Xml from corlib
4110 * Mono.Cecil.Metadata/CultureUtils.cs:
4111 Ensure that Cecil works under Mono
4113 2005-07-02 Jb Evain <jbevain@gmail.com>
4115 * Mono.Cecil/IMethod.cs
4116 Mono.Cecil/IProperty.cs
4117 Mono.Cecil/IEvent.cs
4118 Mono.Cecil/IField.cs
4119 Mono.Cecil/ITypeDefinition.cs
4120 Mono.Cecil.Implem/MethodDefinition.cs
4121 Mono.Cecil.Implem/PropertyDefinition.cs
4122 Mono.Cecil.Implem/EventDefinition.cs
4123 Mono.Cecil.Implem/FieldDefinition.cs
4124 Mono.Cecil.Implem/TypeDefinition.cs:
4125 Add some funky sugar attributes,
4128 2005-07-01 Jb Evain <jbevain@gmail.com>
4130 * CodeGen/cecil-gen.rb,
4131 CodeGen/templates/MetadataTableWriter.cs,
4132 CodeGen/templates/MetadataRowWriter.cs,
4133 Mono.Cecil.Metadata/MetadataTableWriter.cs,
4134 Mono.Cecil.Metadata/MetadataRowWriter.cs,
4135 Mono.Cecil.Metadata/MetadataWriter.cs:
4136 Add metadata writing visitors
4137 * Mono.Cecil.Metadata/CultureUtils.cs:
4138 Be sure to use every possible culture infos.
4139 * Mono.Cecil.Cil/IVariable.cs,
4140 Mono.Cecil.Implem/VariableDefinition.cs,
4141 Mono.Cecil.Implem/CodeReader.cs,
4142 Mono.Cecil.Implem/CilEmitter.cs:
4143 Add an index property to local variables
4144 * Mono.Cecil.Metadata/MetadataReader.cs,
4145 Mono.Cecil.Metadata/MetadataRowReader.cs,
4146 CodeGen/templates/MetadataRowReader.cs,
4147 Mono.Cecil.Metadata/TablesHeap.cs:
4149 * Mono.Cecil.Implem/StructureWriter.cs,
4150 Mono.Cecil.Implem/ReflectionController.cs,
4151 Mono.Cecil.Implem/ReflectionWriter.cs:
4152 Assemble writing classes
4154 2005-06-28 Jb Evain <jbevain@gmail.com>
4156 * Mono.Cecil.Implem/ReflectionReader.cs: style
4157 * Mono.Cecil.Implem/LazyReflectionReader.cs:
4158 read the last property as well.
4160 2005-06-21 Jb Evain <jbevain@gmail.com>
4162 * Mono.Cecil.Implem/ReflectionReader.cs: Correct a bug that prevents
4163 assemblies to be readed if they have an entrypoint. Suggestion by
4165 * Mono.Cecil.Implem/CodeReader.cs: Use sbyte not to lose negatives
4166 offsets. Suggestion by Vladislav Spivak
4167 * CodeGen/cecil.xml,
4168 Mono.Cecil.Cil/OpCodes.cs,
4169 Mono.Cecil.Cil/StackBehaviour.cs: Add an PopAll enumeration value
4170 for StackBehaviour, and set the StackBehaviourPop property for
4171 leave and leave.s opcodes to it. Suggested by Vladislav Spivak
4173 2005-06-12 Jb Evain <jbevain@gmail.com>
4175 * Mono.Cecil.Implem/TypeDefinition.cs: Set the declaring type
4176 to this when defining a nested type.
4178 2005-06-07 Jb Evain <jbevain@gmail.com>
4180 * Mono.Cecil.dll.sources,
4181 * CodeGen/cecil.xml,
4182 * Mono.Cecil/IReflectionVisitor.cs,
4183 * Mono.Cecil/INestedTypeCollection.cs,
4184 * Mono.Cecil/ITypeDefinition,
4185 * Mono.Cecil.Implem/ReflectionReader.cs,
4186 * Mono.Cecil.Implem/ReflectionWriter.cs,
4187 * Mono.Cecil.Implem/TypeDefinition.cs,
4188 * Mono.Cecil.Implem/NestedTypeCollection:
4189 Add a collection of nested types for type definition
4191 * Mono.Cecil.Implem/ModuleDefinition.cs: simplify type creation
4193 2005-06-07 Jb Evain <jbevain@gmail.com>
4195 * ChangeLog: Cecil has now ChangeLogs. Let use them.