Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Core / System / Runtime / CompilerServices / DynamicAttribute.cs / 1305376 / DynamicAttribute.cs
// ==++==
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
// ==--==
using System.Collections.Generic;
namespace System.Runtime.CompilerServices
{
///
/// Indicates that the use of on a member is meant to be treated as a dynamically dispatched type.
///
[AttributeUsage(AttributeTargets.Field | AttributeTargets.Parameter | AttributeTargets.Property | AttributeTargets.ReturnValue | AttributeTargets.Class | AttributeTargets.Struct)]
public sealed class DynamicAttribute : Attribute
{
private readonly bool[] _transformFlags;
///
/// Initializes a new instance of the class.
///
///
/// When used in an attribute specification, the default constructor is semantically
/// equivalent to DynamicAttribute({ true }) , and can be considered
/// a shorthand for that expression. It should therefore only be used on an element
/// of type .
///
public DynamicAttribute()
{
this._transformFlags = new bool[] { true };
}
///
/// Initializes a new instance of the class.
///
/// Specifies, in a prefix traversal of a type's
/// construction, which occurrences are meant to
/// be treated as a dynamically dispatched type.
///
/// This constructor is meant to be used on types that are built on an underlying
/// occurrence of that is meant to be treated dynamically.
/// For instance, if C is a generic type with two type parameters, then a
/// use of the constructed typeC< , >
/// might be intended to treat the first type argument dynamically and the second
/// normally, in which case the appropriate attribute specification should
/// use a transformFlags value of { false, true, false } .
///
public DynamicAttribute(bool[] transformFlags)
{
if (transformFlags == null)
{
throw new ArgumentNullException("transformFlags");
}
this._transformFlags = transformFlags;
}
///
/// Specifies, in a prefix traversal of a type's
/// construction, which occurrences are meant to
/// be treated as a dynamically dispatched type.
///
public IList TransformFlags
{
get
{
return Array.AsReadOnly(this._transformFlags);
}
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- DbConnectionClosed.cs
- LabelLiteral.cs
- RelationshipConverter.cs
- FlowDocumentReader.cs
- RegistryExceptionHelper.cs
- WinFormsUtils.cs
- _NTAuthentication.cs
- MediaTimeline.cs
- DataViewSettingCollection.cs
- SchemaImporter.cs
- SpecialNameAttribute.cs
- DataGridViewBand.cs
- XmlEventCache.cs
- IgnoreSectionHandler.cs
- ContractUtils.cs
- DrawListViewItemEventArgs.cs
- ScriptManager.cs
- XmlCharacterData.cs
- CursorConverter.cs
- ListView.cs
- Assembly.cs
- Rect3DValueSerializer.cs
- SecurityRuntime.cs
- DelegatingTypeDescriptionProvider.cs
- ConfigurationStrings.cs
- PropertyIDSet.cs
- PageCatalogPart.cs
- QueryCacheEntry.cs
- EastAsianLunisolarCalendar.cs
- FixedSOMPageElement.cs
- CacheRequest.cs
- BamlLocalizationDictionary.cs
- Predicate.cs
- InvariantComparer.cs
- Durable.cs
- TemplateColumn.cs
- CompilationSection.cs
- Errors.cs
- AssemblyUtil.cs
- fixedPageContentExtractor.cs
- Point3DValueSerializer.cs
- ImageDrawing.cs
- XmlDataFileEditor.cs
- sapiproxy.cs
- TypeUtil.cs
- WebPartCancelEventArgs.cs
- LabelLiteral.cs
- BmpBitmapEncoder.cs
- ProviderIncompatibleException.cs
- AssociationSetMetadata.cs
- TimeManager.cs
- TreeIterators.cs
- ModifierKeysConverter.cs
- BezierSegment.cs
- Trigger.cs
- ServerValidateEventArgs.cs
- BrowserCapabilitiesFactoryBase.cs
- TextEditorLists.cs
- SetterTriggerConditionValueConverter.cs
- SqlDataReader.cs
- RevocationPoint.cs
- DbDeleteCommandTree.cs
- HistoryEventArgs.cs
- BehaviorDragDropEventArgs.cs
- ActivityExecutionContextCollection.cs
- InOutArgument.cs
- EditorZone.cs
- UrlMappingsModule.cs
- FileSecurity.cs
- LinqDataView.cs
- WebZone.cs
- Span.cs
- DependencyObjectPropertyDescriptor.cs
- DataSourceProvider.cs
- ExtendedPropertyInfo.cs
- SpecialNameAttribute.cs
- FileUtil.cs
- Base64Encoding.cs
- UTF32Encoding.cs
- DataSetMappper.cs
- SelectionItemPatternIdentifiers.cs
- ReaderWriterLockWrapper.cs
- TdsValueSetter.cs
- SqlVersion.cs
- CommonServiceBehaviorElement.cs
- DocumentViewer.cs
- QualifiedId.cs
- SchemaSetCompiler.cs
- ObjectListItem.cs
- EntryIndex.cs
- RelationshipDetailsRow.cs
- ComponentRenameEvent.cs
- SQLMoney.cs
- AdCreatedEventArgs.cs
- BigInt.cs
- MailDefinition.cs
- PinnedBufferMemoryStream.cs
- SmtpMail.cs
- ListenerElementsCollection.cs
- Maps.cs