[Mono-docs-list] new monodocer generics support uses invalid paths on win32

Nathan Walp faceprint at faceprint.com
Wed Oct 18 12:39:49 EDT 2006


Hi all,

On Win32, the < and > characters are invalid in file and directory 
names.  Unfortunately, this means that monodocer attemps to look at and 
use invalid file names on windows.  In DoUpdateAssembly, when it 
assembles a filename using GetTypeFileName(), it can create names that 
have < and > in them, and when it takes that filename and goes to create 
a System.IO.FileInfo, an ArgumentException is thrown due to the invalid 
path characters.

For now I'm using a hacked copy of monodocer that catches that 
exception, and ignores the type.  I'm not sure what the "correct" fix 
for this is.

Here's an example assembly that causes it to try and use < and >:

using System;
using System.Collections;
using System.Collections.Generic;

namespace Bar {
	public class Foo : IEnumerable<int>
	{
		public IEnumerator<int> GetEnumerator()
		{
			for(int i=0; i<42; i++)
			{
				yield return i;
			}
		}

		IEnumerator IEnumerable.GetEnumerator()
		{
			return GetEnumerator();
		}
	}
}


More information about the Mono-docs-list mailing list