Eiffel for .NET Metadata Consumer


The Eiffel for .NET Metadata Consumer tool (emdc) is used to consume .NET assemblies without the use of an Eiffel compiler or a Eiffel Configuration File (ecf). The tool can be used to fully or partially consume, remove or list assemblies.

The tool is useful for initializing new assembly caches before the Eiffel compiler gets a chance to consume the assemblies itself. It is used in build scripts to build assemblies caches with the miniumum assembly references possible, and is used as a debugging aid.


In 5.7 it was introduced that assemblies can be "partially" consumed (also referred to as consuming in info-only mode.) Being partially consumed there is enough information for the Eiffel compiler, and related tools, to know about about their contained types. Partially consumed assemblies are then fully consumed once a containing class in referenced in an Eiffel for .NET project. To it's full effect partially consuming assemblies dramatically increase compilation performance, especailly in .NET fraworks 2.0+, because only those assemblies that are used are fully consumed.

The list assembly cache option (/l) can be grouped with the verbose option (/v) to display an assembly's consumed status.

Command-line Options

To view the help information please use the /? switch.


This tool was developed and maintained by Paulb.

Location: https://svn.eiffel.com/eiffelstudio/trunk/Src/dotnet/consumer

For customizing the consumer balloon tips, see MDC_InformationTips.


This tool is not distributed with any Eiffel Software products, so you will need to compile it using EiffelStudio.

To compile, use the consumer.ecf configuration file and the emdc target. Note: the emdc target targets .NET 2.0 so please ensure you have it installed.

Change Log

  • Added more information to verbose listing of an assembly cache.
  • Change version number to match the compiler.

- Paulb Paulb 11:04, 16 January 2007 (CEST)

  • Initial Entry.

- Paulb Paulb 21:08, 14 September 2006 (CEST)