Skip to content
This repository has been archived by the owner on Sep 14, 2018. It is now read-only.

Feature symbols

tmat edited this page Dec 31, 2011 · 12 revisions

Feature Symbols

Feature Symbols (named FEATURE_{feature name}, all caps) are compilation symbols that are defined if the target platform supports a particular feature. The symbols are defined in Solutions\Common.proj file, which is included by all .csproj files that contribute to IronRuby, IronPython and the DLR build.

The following symbols are currently used:

FEATURE_ASSEMBLY_RESOLVE

Runtime assembly resolution (System.AppDomain.AssemblyResolve event).

FEATURE_BASIC_CONSOLE

Basic Console features like Console.WriteLine, Console.ReadLine.

FEATURE_CODEDOM

FEATURE_COM

FEATURE_CONFIGURATION

Configuration files (System.Configuration).

FEATURE_CORE_DLR

The platform contains Core DLR types: statement trees and dynamic sites.

FEATURE_CRYPTOGRAPHY

FEATURE_CUSTOM_TYPE_DESCRIPTOR

System.ComponentModel.ICustomTypeDescriptor interface.

FEATURE_DBNULL

DBNull type.

FEATURE_ENCODING

Full encoding support (code pages, by name lookup).

FEATURE_FILESYSTEM

Full file system (Directory, File, Path, FileStream, etc.)

FEATURE_FULL_CONSOLE

Full Console APIs including stdin, stdout, stderr streams, colors, etc.

FEATURE_METADATA_READER

DLR metadata reader available.

FEATURE_NUMERICS

System.Numerics namespace (BigInteger, Complex types).

FEATURE_PDBEMIT

Ability to emit PDB files.

FEATURE_PROCESS

Processes and AppDomains.

FEATURE_REFEMIT

Reflection.Emit.

FEATURE_REMOTING

Remoting (MarshalByRefObject).

FEATURE_SERIALIZATION

Serialization - Serializable attribute, ISerializable interface.

FEATURE_STACK_TRACE

System.Diagnostics.StackTrace, System.Diagnostics.StackFrame.

FEATURE_SYNC_SOCKETS

System.Net.Sockets.

FEATURE_TASKS

System.Tasks.

FEATURE_THREAD

Threads, ThreadAbortException.

FEATURE_TYPE_EQUIVALENCE

System.Type.IsEquivalent()

FEATURE_TYPECONVERTER

System.ComponentModel.TypeConverter and TypeConverterAttribute types.

FEATURE_WPF