1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
// Licensed to the .NET Foundation under one or more agreements.
// The .NET Foundation licenses this file to you under the MIT license.
// See the LICENSE file in the project root for more information.
// Note: If you add a new ctor overloads you need to update ParameterInfo.RawDefaultValue
namespace System.Runtime.CompilerServices
{
[AttributeUsage(AttributeTargets.Field | AttributeTargets.Parameter, Inherited = false)]
public sealed class DecimalConstantAttribute : Attribute
{
private decimal _dec;
[CLSCompliant(false)]
public DecimalConstantAttribute(
byte scale,
byte sign,
uint hi,
uint mid,
uint low
)
{
_dec = new decimal((int)low, (int)mid, (int)hi, (sign != 0), scale);
}
public DecimalConstantAttribute(
byte scale,
byte sign,
int hi,
int mid,
int low
)
{
_dec = new decimal(low, mid, hi, (sign != 0), scale);
}
public decimal Value => _dec;
}
}
|