Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / ndp / clr / src / BCL / System / Reflection / Emit / ModuleBuilderData.cs / 5 / ModuleBuilderData.cs
// ==++==
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
// ==--==
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
namespace System.Reflection.Emit {
using System;
using System.Reflection;
using System.IO;
using System.Globalization;
// This is a package private class. This class hold all of the managed
// data member for ModuleBuilder. Note that what ever data members added to
// this class cannot be accessed from the EE.
[Serializable()]
internal class ModuleBuilderData
{
internal ModuleBuilderData(ModuleBuilder module, String strModuleName, String strFileName)
{
Init(module, strModuleName, strFileName);
}
internal virtual void Init(ModuleBuilder module, String strModuleName, String strFileName)
{
m_fGlobalBeenCreated = false;
m_fHasGlobal = false;
m_globalTypeBuilder = new TypeBuilder(module);
m_module = module;
m_strModuleName = strModuleName;
m_tkFile = 0;
m_isSaved = false;
m_embeddedRes = null;
m_strResourceFileName = null;
m_resourceBytes = null;
if (strFileName == null)
{
// fake a transient module file name
m_strFileName = strModuleName;
m_isTransient = true;
}
else
{
String strExtension = Path.GetExtension(strFileName);
if (strExtension == null || strExtension == String.Empty)
{
// This is required by our loader. It cannot load module file that does not have file extension.
throw new ArgumentException(String.Format(CultureInfo.CurrentCulture, Environment.GetResourceString("Argument_NoModuleFileExtension"), strFileName));
}
m_strFileName = strFileName;
m_isTransient = false;
}
m_module.InternalSetModuleProps(m_strModuleName);
}
internal virtual bool IsTransient()
{
return m_isTransient;
}
internal String m_strModuleName; // scope name (can be different from file name)
internal String m_strFileName;
internal bool m_fGlobalBeenCreated;
internal bool m_fHasGlobal;
[NonSerialized] internal TypeBuilder m_globalTypeBuilder;
[NonSerialized] internal ModuleBuilder m_module;
internal int m_tkFile; // this is the file token for this module builder
internal bool m_isSaved;
[NonSerialized] internal ResWriterData m_embeddedRes;
internal const String MULTI_BYTE_VALUE_CLASS = "$ArrayType$";
internal bool m_isTransient;
internal String m_strResourceFileName;
internal byte[] m_resourceBytes;
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// ==++==
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
// ==--==
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
namespace System.Reflection.Emit {
using System;
using System.Reflection;
using System.IO;
using System.Globalization;
// This is a package private class. This class hold all of the managed
// data member for ModuleBuilder. Note that what ever data members added to
// this class cannot be accessed from the EE.
[Serializable()]
internal class ModuleBuilderData
{
internal ModuleBuilderData(ModuleBuilder module, String strModuleName, String strFileName)
{
Init(module, strModuleName, strFileName);
}
internal virtual void Init(ModuleBuilder module, String strModuleName, String strFileName)
{
m_fGlobalBeenCreated = false;
m_fHasGlobal = false;
m_globalTypeBuilder = new TypeBuilder(module);
m_module = module;
m_strModuleName = strModuleName;
m_tkFile = 0;
m_isSaved = false;
m_embeddedRes = null;
m_strResourceFileName = null;
m_resourceBytes = null;
if (strFileName == null)
{
// fake a transient module file name
m_strFileName = strModuleName;
m_isTransient = true;
}
else
{
String strExtension = Path.GetExtension(strFileName);
if (strExtension == null || strExtension == String.Empty)
{
// This is required by our loader. It cannot load module file that does not have file extension.
throw new ArgumentException(String.Format(CultureInfo.CurrentCulture, Environment.GetResourceString("Argument_NoModuleFileExtension"), strFileName));
}
m_strFileName = strFileName;
m_isTransient = false;
}
m_module.InternalSetModuleProps(m_strModuleName);
}
internal virtual bool IsTransient()
{
return m_isTransient;
}
internal String m_strModuleName; // scope name (can be different from file name)
internal String m_strFileName;
internal bool m_fGlobalBeenCreated;
internal bool m_fHasGlobal;
[NonSerialized] internal TypeBuilder m_globalTypeBuilder;
[NonSerialized] internal ModuleBuilder m_module;
internal int m_tkFile; // this is the file token for this module builder
internal bool m_isSaved;
[NonSerialized] internal ResWriterData m_embeddedRes;
internal const String MULTI_BYTE_VALUE_CLASS = "$ArrayType$";
internal bool m_isTransient;
internal String m_strResourceFileName;
internal byte[] m_resourceBytes;
}
}
// 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
- EventMappingSettings.cs
- GridViewItemAutomationPeer.cs
- AxParameterData.cs
- DoneReceivingAsyncResult.cs
- DataMemberListEditor.cs
- FixedSOMGroup.cs
- AssemblyBuilder.cs
- UniqueConstraint.cs
- SystemColors.cs
- RoutedEventArgs.cs
- EpmContentSerializerBase.cs
- SendingRequestEventArgs.cs
- AuthenticatingEventArgs.cs
- ActiveXHelper.cs
- SettingsContext.cs
- DecimalStorage.cs
- FlowDocumentScrollViewer.cs
- MimeMapping.cs
- relpropertyhelper.cs
- ISCIIEncoding.cs
- FreezableOperations.cs
- UpdateRecord.cs
- ToolBarButtonClickEvent.cs
- MouseGestureConverter.cs
- SpeechSeg.cs
- AssemblyNameProxy.cs
- ScopedKnownTypes.cs
- WebConfigurationManager.cs
- TreeNodeStyleCollection.cs
- EtwProvider.cs
- OperandQuery.cs
- DefaultAssemblyResolver.cs
- XmlAutoDetectWriter.cs
- Tablet.cs
- RealProxy.cs
- ViewSimplifier.cs
- WindowsFormsHostPropertyMap.cs
- SharedStream.cs
- Setter.cs
- TextMessageEncodingBindingElement.cs
- DynamicFilterExpression.cs
- ProxySimple.cs
- DataList.cs
- _AutoWebProxyScriptWrapper.cs
- _Win32.cs
- ZipFileInfo.cs
- NavigationService.cs
- SiteMapSection.cs
- SQLString.cs
- Compensation.cs
- DataGridViewAccessibleObject.cs
- ObjectQuery_EntitySqlExtensions.cs
- ActivityStateQuery.cs
- XmlUtilWriter.cs
- CompilerTypeWithParams.cs
- ProjectionCamera.cs
- WindowsButton.cs
- XmlILConstructAnalyzer.cs
- ScriptBehaviorDescriptor.cs
- WrapperSecurityCommunicationObject.cs
- HttpCookieCollection.cs
- GridViewDeletedEventArgs.cs
- CompModSwitches.cs
- CreateUserErrorEventArgs.cs
- HyperLinkStyle.cs
- ImmutableObjectAttribute.cs
- DataGridViewImageColumn.cs
- ToggleProviderWrapper.cs
- PropertyMapper.cs
- ColumnWidthChangedEvent.cs
- SQLDecimal.cs
- ConfigsHelper.cs
- X509WindowsSecurityToken.cs
- PairComparer.cs
- OutputCacheSection.cs
- TreeNode.cs
- Tablet.cs
- Queue.cs
- WebResourceAttribute.cs
- QilInvokeLateBound.cs
- FormsAuthentication.cs
- CodeGroup.cs
- ObjectFactoryCodeDomTreeGenerator.cs
- SQLByteStorage.cs
- ToolStripActionList.cs
- Unit.cs
- AttachedPropertyBrowsableForChildrenAttribute.cs
- ArgumentException.cs
- ProcessProtocolHandler.cs
- ManifestResourceInfo.cs
- SchemaImporter.cs
- NavigationWindowAutomationPeer.cs
- HiddenFieldPageStatePersister.cs
- PseudoWebRequest.cs
- StateManagedCollection.cs
- ByteStream.cs
- FileDialogCustomPlacesCollection.cs
- DesignerActionVerbItem.cs
- MetabaseSettingsIis7.cs
- XmlSchemaValidationException.cs