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
- XmlSigningNodeWriter.cs
- NullableDoubleSumAggregationOperator.cs
- CustomError.cs
- AuthenticationManager.cs
- Normalization.cs
- XPathSelectionIterator.cs
- Helper.cs
- StylusPointDescription.cs
- OLEDB_Enum.cs
- DynamicEntity.cs
- ReservationNotFoundException.cs
- ArrangedElement.cs
- ScaleTransform3D.cs
- OneOfTypeConst.cs
- CookieProtection.cs
- DnsElement.cs
- RewritingValidator.cs
- CodeConditionStatement.cs
- Int32Rect.cs
- WindowsAltTab.cs
- CollectionEditVerbManager.cs
- DragSelectionMessageFilter.cs
- ping.cs
- ListViewSelectEventArgs.cs
- BamlLocalizer.cs
- ViewManager.cs
- milexports.cs
- SchemaRegistration.cs
- RowBinding.cs
- RuntimeArgumentHandle.cs
- PassportAuthenticationEventArgs.cs
- SerializeAbsoluteContext.cs
- Form.cs
- TemplatePartAttribute.cs
- Size.cs
- SqlDataSourceCommandEventArgs.cs
- CompressEmulationStream.cs
- RichTextBox.cs
- MetabaseReader.cs
- CryptoApi.cs
- DataSourceHelper.cs
- Point4DValueSerializer.cs
- FlowLayoutSettings.cs
- DataServiceRequest.cs
- HostSecurityManager.cs
- FtpRequestCacheValidator.cs
- SystemMulticastIPAddressInformation.cs
- DateTimeOffset.cs
- XpsColorContext.cs
- DataGridViewRowsRemovedEventArgs.cs
- GlyphCollection.cs
- UdpMessageProperty.cs
- TraceSwitch.cs
- TypeElementCollection.cs
- PageThemeParser.cs
- xmlsaver.cs
- PenCursorManager.cs
- RijndaelCryptoServiceProvider.cs
- COSERVERINFO.cs
- SqlConnection.cs
- FixedDSBuilder.cs
- Expander.cs
- SapiRecoContext.cs
- SQLDateTimeStorage.cs
- SharedPersonalizationStateInfo.cs
- BufferModesCollection.cs
- ContextMenu.cs
- ManagedWndProcTracker.cs
- ForEachAction.cs
- XmlSchemaInferenceException.cs
- CacheHelper.cs
- NameValueCollection.cs
- TextWriter.cs
- ExtenderProviderService.cs
- CacheForPrimitiveTypes.cs
- ItemCollection.cs
- DataGridViewRowsRemovedEventArgs.cs
- RuleCache.cs
- ClearTypeHintValidation.cs
- _TLSstream.cs
- GPStream.cs
- PagesChangedEventArgs.cs
- HttpAsyncResult.cs
- XPathNodeList.cs
- FragmentQuery.cs
- KeyNotFoundException.cs
- HtmlInputCheckBox.cs
- EntryWrittenEventArgs.cs
- CommandManager.cs
- FileVersionInfo.cs
- ChannelManager.cs
- Condition.cs
- EventWaitHandle.cs
- Span.cs
- SerializationSectionGroup.cs
- DataGridCellClipboardEventArgs.cs
- CatalogPart.cs
- VisualTreeUtils.cs
- TypedReference.cs
- TraceListeners.cs