Almost completely new design.
authorJonathan Pryor <jpryor@novell.com>
Sun, 8 Dec 2002 23:14:33 +0000 (23:14 -0000)
committerJonathan Pryor <jpryor@novell.com>
Sun, 8 Dec 2002 23:14:33 +0000 (23:14 -0000)
commit31414ded0af33b0593ef29aa8a3fdc80e5e26b3f
tree11de03b21cb506f7a70d41994ed3a61c7c5a711f
parent4ce4d96183232433bff3a549f4c58ff992e14afb
Almost completely new design.

Instead of having a single type, a TypeDisplayer, responsible for taking in a
System.Type object and spitting out its contents to the screen, we instead
have two policies, finders and formatters, which split up the previous work.

The finders build up an internal tree of nodes for display.

The formatters format each node for output to a display device.

Doing this, I'm hoping to allow a GUI front-end to be created, which would be
impossible to do under the previous arrangement.

See the new file DESIGN for more information.

svn path=/trunk/mcs/; revision=9457
40 files changed:
mcs/tools/type-reflector/CSharpNodeFormatter.cs [new file with mode: 0644]
mcs/tools/type-reflector/CSharpTypeDisplayer.cs [deleted file]
mcs/tools/type-reflector/ConsoleOutput.cs
mcs/tools/type-reflector/DESIGN [new file with mode: 0644]
mcs/tools/type-reflector/DefaultNodeFormatter.cs [new file with mode: 0644]
mcs/tools/type-reflector/ExplicitNodeFinder.cs [new file with mode: 0644]
mcs/tools/type-reflector/ExplicitTypeDisplayer.cs [deleted file]
mcs/tools/type-reflector/Factories.cs [new file with mode: 0644]
mcs/tools/type-reflector/GroupingNodeFinder.cs [new file with mode: 0644]
mcs/tools/type-reflector/INodeFinder.cs [new file with mode: 0644]
mcs/tools/type-reflector/INodeFormatter.cs [new file with mode: 0644]
mcs/tools/type-reflector/IndentingTypeDisplayer.cs [deleted file]
mcs/tools/type-reflector/LICENSE [new file with mode: 0644]
mcs/tools/type-reflector/LanguageNodeFormatter.cs [new file with mode: 0644]
mcs/tools/type-reflector/Makefile
mcs/tools/type-reflector/Node.cs [new file with mode: 0644]
mcs/tools/type-reflector/NodeFinder.cs [new file with mode: 0644]
mcs/tools/type-reflector/NodeFormatter.cs [new file with mode: 0644]
mcs/tools/type-reflector/NodeGrouper.cs [new file with mode: 0644]
mcs/tools/type-reflector/NodeInfo.cs [new file with mode: 0644]
mcs/tools/type-reflector/NodeTypes.cs [new file with mode: 0644]
mcs/tools/type-reflector/README
mcs/tools/type-reflector/ReflectionNodeFinder.cs [new file with mode: 0644]
mcs/tools/type-reflector/ReflectionTypeDisplayer.cs [deleted file]
mcs/tools/type-reflector/TestTypes.cs
mcs/tools/type-reflector/TypeDisplayer.cs [deleted file]
mcs/tools/type-reflector/TypeDisplayerFactory.cs [deleted file]
mcs/tools/type-reflector/TypeFactory.cs [new file with mode: 0644]
mcs/tools/type-reflector/TypeReflectorOptions.cs
mcs/tools/type-reflector/displayers/TypeDisplayer.cs [deleted file]
mcs/tools/type-reflector/finders/ExplicitNodeFinder.cs [new file with mode: 0644]
mcs/tools/type-reflector/finders/GroupingNodeFinder.cs [new file with mode: 0644]
mcs/tools/type-reflector/finders/INodeFinder.cs [new file with mode: 0644]
mcs/tools/type-reflector/finders/NodeFinder.cs [new file with mode: 0644]
mcs/tools/type-reflector/finders/ReflectionNodeFinder.cs [new file with mode: 0644]
mcs/tools/type-reflector/formatters/CSharpNodeFormatter.cs [new file with mode: 0644]
mcs/tools/type-reflector/formatters/DefaultNodeFormatter.cs [new file with mode: 0644]
mcs/tools/type-reflector/formatters/INodeFormatter.cs [new file with mode: 0644]
mcs/tools/type-reflector/formatters/LanguageNodeFormatter.cs [new file with mode: 0644]
mcs/tools/type-reflector/formatters/NodeFormatter.cs [new file with mode: 0644]