Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / clr / src / BCL / System / Currency.cs / 1305376 / Currency.cs
// ==++==
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
// ==--==
namespace System {
using System;
using System.Globalization;
using System.Runtime.CompilerServices;
using System.Runtime.Versioning;
#if !FEATURE_CORECLR
[System.Runtime.ForceTokenStabilization]
#endif //!FEATURE_CORECLR
[Serializable]
internal struct Currency
{
internal long m_value;
// Constructs a Currency from a Decimal value.
//
#if !FEATURE_CORECLR
[System.Runtime.ForceTokenStabilization]
#endif //!FEATURE_CORECLR
public Currency(Decimal value) {
m_value = Decimal.ToCurrency(value).m_value;
}
// Constructs a Currency from a long value without scaling. The
// ignored parameter exists only to distinguish this constructor
// from the constructor that takes a long. Used only in the System
// package, especially in Variant.
internal Currency(long value, int ignored) {
m_value = value;
}
// Creates a Currency from an OLE Automation Currency. This method
// applies no scaling to the Currency value, essentially doing a bitwise
// copy.
//
public static Currency FromOACurrency(long cy){
return new Currency(cy, 0);
}
//Creates an OLE Automation Currency from a Currency instance. This
// method applies no scaling to the Currency value, essentially doing
// a bitwise copy.
//
public long ToOACurrency() {
return m_value;
}
// Converts a Currency to a Decimal.
//
[System.Security.SecuritySafeCritical] // auto-generated
public static Decimal ToDecimal(Currency c)
{
Decimal result = new Decimal ();
FCallToDecimal (ref result, c);
return result;
}
[System.Security.SecurityCritical] // auto-generated
[ResourceExposure(ResourceScope.None)]
[MethodImplAttribute(MethodImplOptions.InternalCall)]
private static extern void FCallToDecimal(ref Decimal result,Currency c);
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// ==++==
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
// ==--==
namespace System {
using System;
using System.Globalization;
using System.Runtime.CompilerServices;
using System.Runtime.Versioning;
#if !FEATURE_CORECLR
[System.Runtime.ForceTokenStabilization]
#endif //!FEATURE_CORECLR
[Serializable]
internal struct Currency
{
internal long m_value;
// Constructs a Currency from a Decimal value.
//
#if !FEATURE_CORECLR
[System.Runtime.ForceTokenStabilization]
#endif //!FEATURE_CORECLR
public Currency(Decimal value) {
m_value = Decimal.ToCurrency(value).m_value;
}
// Constructs a Currency from a long value without scaling. The
// ignored parameter exists only to distinguish this constructor
// from the constructor that takes a long. Used only in the System
// package, especially in Variant.
internal Currency(long value, int ignored) {
m_value = value;
}
// Creates a Currency from an OLE Automation Currency. This method
// applies no scaling to the Currency value, essentially doing a bitwise
// copy.
//
public static Currency FromOACurrency(long cy){
return new Currency(cy, 0);
}
//Creates an OLE Automation Currency from a Currency instance. This
// method applies no scaling to the Currency value, essentially doing
// a bitwise copy.
//
public long ToOACurrency() {
return m_value;
}
// Converts a Currency to a Decimal.
//
[System.Security.SecuritySafeCritical] // auto-generated
public static Decimal ToDecimal(Currency c)
{
Decimal result = new Decimal ();
FCallToDecimal (ref result, c);
return result;
}
[System.Security.SecurityCritical] // auto-generated
[ResourceExposure(ResourceScope.None)]
[MethodImplAttribute(MethodImplOptions.InternalCall)]
private static extern void FCallToDecimal(ref Decimal result,Currency c);
}
}
// 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
- ExtensionSimplifierMarkupObject.cs
- PageStatePersister.cs
- PagedDataSource.cs
- TrackingMemoryStreamFactory.cs
- ZipArchive.cs
- RemotingAttributes.cs
- LazyTextWriterCreator.cs
- SoapElementAttribute.cs
- BuildDependencySet.cs
- TcpChannelListener.cs
- IncrementalReadDecoders.cs
- SqlConnection.cs
- RowToParametersTransformer.cs
- CanonicalizationDriver.cs
- SwitchElementsCollection.cs
- SchemaTableColumn.cs
- HttpInputStream.cs
- OleDbConnectionFactory.cs
- SolidBrush.cs
- SectionVisual.cs
- rsa.cs
- IUnknownConstantAttribute.cs
- FormViewCommandEventArgs.cs
- PersonalizableTypeEntry.cs
- ExceptionRoutedEventArgs.cs
- Vector3DCollectionConverter.cs
- FileUtil.cs
- LinkButton.cs
- LogLogRecordEnumerator.cs
- PeerCollaboration.cs
- CalendarSelectionChangedEventArgs.cs
- AlternateViewCollection.cs
- NotSupportedException.cs
- BorderGapMaskConverter.cs
- System.Data_BID.cs
- WebConfigurationFileMap.cs
- MappedMetaModel.cs
- LicenseProviderAttribute.cs
- DataGridViewDataErrorEventArgs.cs
- VisualBasicSettingsHandler.cs
- MethodToken.cs
- X509WindowsSecurityToken.cs
- ColorAnimation.cs
- DataGridViewButtonColumn.cs
- StrongNameKeyPair.cs
- DbConnectionStringCommon.cs
- ManagementScope.cs
- DataGridViewAutoSizeModeEventArgs.cs
- PrefixHandle.cs
- _AcceptOverlappedAsyncResult.cs
- MarshalDirectiveException.cs
- ListenDesigner.cs
- ArrayConverter.cs
- PathFigureCollection.cs
- XmlNullResolver.cs
- XmlSortKeyAccumulator.cs
- FontTypeConverter.cs
- MatrixAnimationUsingKeyFrames.cs
- StateWorkerRequest.cs
- ApplicationContext.cs
- SqlCommandSet.cs
- CloudCollection.cs
- DropAnimation.xaml.cs
- HScrollBar.cs
- Compiler.cs
- EDesignUtil.cs
- WsrmTraceRecord.cs
- ConsumerConnectionPoint.cs
- DbDataSourceEnumerator.cs
- WebPartEventArgs.cs
- AuthenticationConfig.cs
- TextEndOfParagraph.cs
- CookielessData.cs
- WebHostScriptMappingsInstallComponent.cs
- MediaElementAutomationPeer.cs
- Rotation3DAnimation.cs
- DesignerOptionService.cs
- ToolboxDataAttribute.cs
- autovalidator.cs
- StoreAnnotationsMap.cs
- PolyQuadraticBezierSegment.cs
- ValueOfAction.cs
- TraceListeners.cs
- DataGridViewButtonCell.cs
- CodeGeneratorOptions.cs
- OracleColumn.cs
- CanonicalFormWriter.cs
- EncryptedKeyHashIdentifierClause.cs
- RSAOAEPKeyExchangeFormatter.cs
- PageParser.cs
- SharedUtils.cs
- CanExecuteRoutedEventArgs.cs
- RubberbandSelector.cs
- UriTemplateVariablePathSegment.cs
- CodeAssignStatement.cs
- Keyboard.cs
- GenerateDerivedKeyRequest.cs
- XmlSchemaObjectCollection.cs
- ControlUtil.cs
- ObjectStateFormatter.cs