186 instantiations of Value
System.Private.Windows.Core (74)
System\Value.cs (74)
107public static implicit operator Value(byte value) => new(value); 109public static implicit operator Value(byte? value) => new(value); 133public static implicit operator Value(sbyte value) => new(value); 135public static implicit operator Value(sbyte? value) => new(value); 159public static implicit operator Value(bool value) => new(value); 161public static implicit operator Value(bool? value) => new(value); 185public static implicit operator Value(char value) => new(value); 187public static implicit operator Value(char? value) => new(value); 211public static implicit operator Value(short value) => new(value); 213public static implicit operator Value(short? value) => new(value); 237public static implicit operator Value(int value) => new(value); 239public static implicit operator Value(int? value) => new(value); 263public static implicit operator Value(long value) => new(value); 265public static implicit operator Value(long? value) => new(value); 289public static implicit operator Value(ushort value) => new(value); 291public static implicit operator Value(ushort? value) => new(value); 315public static implicit operator Value(uint value) => new(value); 317public static implicit operator Value(uint? value) => new(value); 341public static implicit operator Value(ulong value) => new(value); 343public static implicit operator Value(ulong? value) => new(value); 367public static implicit operator Value(float value) => new(value); 369public static implicit operator Value(float? value) => new(value); 393public static implicit operator Value(double value) => new(value); 395public static implicit operator Value(double? value) => new(value); 419public static implicit operator Value(Size value) => new(value); 421public static implicit operator Value(Size? value) => new(value); 445public static implicit operator Value(Point value) => new(value); 447public static implicit operator Value(Point? value) => new(value); 474this = new(value.Value); 478public static implicit operator Value(Color value) => new(value); 480public static implicit operator Value(Color? value) => new(value); 513this = new(value.Value); 517public static implicit operator Value(DateTimeOffset value) => new(value); 519public static implicit operator Value(DateTimeOffset? value) => new(value); 543public static implicit operator Value(DateTime value) => new(value); 545public static implicit operator Value(DateTime? value) => new(value); 566public static implicit operator Value(ArraySegment<byte> value) => new(value); 585public static implicit operator Value(ArraySegment<char> value) => new(value); 590public static implicit operator Value(decimal value) => new(value); 592public static implicit operator Value(decimal? value) => value.HasValue ? new(value.Value) : new(value); 605return new(Unsafe.As<T, bool>(ref Unsafe.AsRef(in value))); 607return new(Unsafe.As<T, byte>(ref Unsafe.AsRef(in value))); 609return new(Unsafe.As<T, sbyte>(ref Unsafe.AsRef(in value))); 611return new(Unsafe.As<T, char>(ref Unsafe.AsRef(in value))); 613return new(Unsafe.As<T, short>(ref Unsafe.AsRef(in value))); 615return new(Unsafe.As<T, int>(ref Unsafe.AsRef(in value))); 617return new(Unsafe.As<T, long>(ref Unsafe.AsRef(in value))); 619return new(Unsafe.As<T, ushort>(ref Unsafe.AsRef(in value))); 621return new(Unsafe.As<T, uint>(ref Unsafe.AsRef(in value))); 623return new(Unsafe.As<T, ulong>(ref Unsafe.AsRef(in value))); 625return new(Unsafe.As<T, float>(ref Unsafe.AsRef(in value))); 627return new(Unsafe.As<T, double>(ref Unsafe.AsRef(in value))); 629return new(Unsafe.As<T, DateTime>(ref Unsafe.AsRef(in value))); 631return new(Unsafe.As<T, DateTimeOffset>(ref Unsafe.AsRef(in value))); 633return new(Unsafe.As<T, Color>(ref Unsafe.AsRef(in value))); 636return new(Unsafe.As<T, bool?>(ref Unsafe.AsRef(in value))); 638return new(Unsafe.As<T, byte?>(ref Unsafe.AsRef(in value))); 640return new(Unsafe.As<T, sbyte?>(ref Unsafe.AsRef(in value))); 642return new(Unsafe.As<T, char?>(ref Unsafe.AsRef(in value))); 644return new(Unsafe.As<T, short?>(ref Unsafe.AsRef(in value))); 646return new(Unsafe.As<T, int?>(ref Unsafe.AsRef(in value))); 648return new(Unsafe.As<T, long?>(ref Unsafe.AsRef(in value))); 650return new(Unsafe.As<T, ushort?>(ref Unsafe.AsRef(in value))); 652return new(Unsafe.As<T, uint?>(ref Unsafe.AsRef(in value))); 654return new(Unsafe.As<T, ulong?>(ref Unsafe.AsRef(in value))); 656return new(Unsafe.As<T, float?>(ref Unsafe.AsRef(in value))); 658return new(Unsafe.As<T, double?>(ref Unsafe.AsRef(in value))); 660return new(Unsafe.As<T, DateTime?>(ref Unsafe.AsRef(in value))); 662return new(Unsafe.As<T, DateTimeOffset?>(ref Unsafe.AsRef(in value))); 665return new(Unsafe.As<T, ArraySegment<byte>>(ref Unsafe.AsRef(in value))); 667return new(Unsafe.As<T, ArraySegment<char>>(ref Unsafe.AsRef(in value))); 672return new Value(StraightCastFlag<T>.Instance, Unsafe.As<T, ulong>(ref value)); 675return new Value(value);
System.Private.Windows.Core.Tests (111)
System\Value\StoringBoolean.cs (7)
71value = new(@bool); 93value = new(source); 110Value value = new(source); 124Value value = new(o); 134value = new(o); 163Value value = new(@bool); 169value = new(n);
System\Value\StoringByte.cs (7)
57Value value = new(@byte); 71Value value = new(source); 87Value value = new(source); 101Value value = new(o); 111value = new(o); 134Value value = new(@byte); 140value = new(n);
System\Value\StoringChar.cs (7)
57Value value = new(@char); 71Value value = new(source); 87Value value = new(source); 101Value value = new(o); 111value = new(o); 134Value value = new(@char); 140value = new(n);
System\Value\StoringDateTime.cs (5)
34Value value = new(@DateTime); 48Value value = new(source); 64Value value = new(source); 86Value value = new(@DateTime); 92value = new(n);
System\Value\StoringDateTimeOffset.cs (5)
34Value value = new(@DateTimeOffset); 48Value value = new(source); 64Value value = new(source); 86Value value = new(@DateTimeOffset); 92value = new(n);
System\Value\StoringDecimal.cs (5)
32Value value = new(@decimal); 46Value value = new(source); 62Value value = new(source); 84Value value = new(@decimal); 90value = new(n);
System\Value\StoringDouble.cs (7)
61Value value = new(@double); 75Value value = new(source); 91Value value = new(source); 105Value value = new(o); 115value = new(o); 138Value value = new(@double); 144value = new(n);
System\Value\StoringEnum.cs (8)
54Value value = new(day); 58value = new((DayOfWeek?)day); 80value = new(@enum); 85value = new((ByteEnum?)@enum); 109value = new(@enum); 114value = new((ShortEnum?)@enum); 138value = new(@enum); 143value = new((LongEnum?)@enum);
System\Value\StoringFloat.cs (7)
61Value value = new(@float); 75Value value = new(source); 91Value value = new(source); 105Value value = new(o); 115value = new(o); 138Value value = new(@float); 144value = new(n);
System\Value\StoringInt.cs (7)
58Value value = new(@int); 72Value value = new(source); 88Value value = new(source); 101Value value = new(o); 111value = new(o); 134Value value = new(@int); 140value = new(n);
System\Value\StoringLong.cs (7)
58Value value = new(@long); 72Value value = new(source); 88Value value = new(source); 102Value value = new(o); 112value = new(o); 135Value value = new(@long); 141value = new(n);
System\Value\StoringNull.cs (2)
11Value nullValue = new((object?)null); 14Value nullFastValue = new((object?)null);
System\Value\StoringObject.cs (4)
12Value value = new(a); 25Value value = new(b); 37value = new(a); 45Value value = new(a);
System\Value\StoringSByte.cs (5)
58Value value = new(@sbyte); 72Value value = new(source); 88Value value = new(source); 110Value value = new(@sbyte); 116value = new(n);
System\Value\StoringShort.cs (7)
58Value value = new(@short); 72Value value = new(source); 88Value value = new(source); 102Value value = new(o); 112value = new(o); 135Value value = new(@short); 141value = new(n);
System\Value\StoringUInt.cs (7)
57Value value = new(@uint); 71Value value = new(source); 87Value value = new(source); 101Value value = new(o); 111value = new(o); 134Value value = new(@uint); 140value = new(n);
System\Value\StoringUlong.cs (7)
57Value value = new(@ulong); 71Value value = new(source); 87Value value = new(source); 101Value value = new(o); 111value = new(o); 134Value value = new(@ulong); 140value = new(n);
System\Value\StoringUShort.cs (7)
57Value value = new(@ushort); 71Value value = new(source); 87Value value = new(source); 101Value value = new(o); 111value = new(o); 134Value value = new(@ushort); 140value = new(n);
System.Windows.Forms (1)
System\Windows\Forms\PropertyStore.cs (1)
143_values[key] = new(value);
332 references to Value
System.Private.Windows.Core (94)
System\Value.cs (81)
25/// Creates a new <see cref="Value"/> with the given <see langword="object"/>. To avoid boxing enums, use the 35/// The <see cref="System.Type"/> of the value stored in this <see cref="Value"/>. 107public static implicit operator Value(byte value) => new(value); 108public static explicit operator byte(in Value value) => value.GetValue<byte>(); 109public static implicit operator Value(byte? value) => new(value); 110public static explicit operator byte?(in Value value) => value.GetValue<byte?>(); 133public static implicit operator Value(sbyte value) => new(value); 134public static explicit operator sbyte(in Value value) => value.GetValue<sbyte>(); 135public static implicit operator Value(sbyte? value) => new(value); 136public static explicit operator sbyte?(in Value value) => value.GetValue<sbyte?>(); 159public static implicit operator Value(bool value) => new(value); 160public static explicit operator bool(in Value value) => value.GetValue<bool>(); 161public static implicit operator Value(bool? value) => new(value); 162public static explicit operator bool?(in Value value) => value.GetValue<bool?>(); 185public static implicit operator Value(char value) => new(value); 186public static explicit operator char(in Value value) => value.GetValue<char>(); 187public static implicit operator Value(char? value) => new(value); 188public static explicit operator char?(in Value value) => value.GetValue<char?>(); 211public static implicit operator Value(short value) => new(value); 212public static explicit operator short(in Value value) => value.GetValue<short>(); 213public static implicit operator Value(short? value) => new(value); 214public static explicit operator short?(in Value value) => value.GetValue<short?>(); 237public static implicit operator Value(int value) => new(value); 238public static explicit operator int(in Value value) => value.GetValue<int>(); 239public static implicit operator Value(int? value) => new(value); 240public static explicit operator int?(in Value value) => value.GetValue<int?>(); 263public static implicit operator Value(long value) => new(value); 264public static explicit operator long(in Value value) => value.GetValue<long>(); 265public static implicit operator Value(long? value) => new(value); 266public static explicit operator long?(in Value value) => value.GetValue<long?>(); 289public static implicit operator Value(ushort value) => new(value); 290public static explicit operator ushort(in Value value) => value.GetValue<ushort>(); 291public static implicit operator Value(ushort? value) => new(value); 292public static explicit operator ushort?(in Value value) => value.GetValue<ushort?>(); 315public static implicit operator Value(uint value) => new(value); 316public static explicit operator uint(in Value value) => value.GetValue<uint>(); 317public static implicit operator Value(uint? value) => new(value); 318public static explicit operator uint?(in Value value) => value.GetValue<uint?>(); 341public static implicit operator Value(ulong value) => new(value); 342public static explicit operator ulong(in Value value) => value.GetValue<ulong>(); 343public static implicit operator Value(ulong? value) => new(value); 344public static explicit operator ulong?(in Value value) => value.GetValue<ulong?>(); 367public static implicit operator Value(float value) => new(value); 368public static explicit operator float(in Value value) => value.GetValue<float>(); 369public static implicit operator Value(float? value) => new(value); 370public static explicit operator float?(in Value value) => value.GetValue<float?>(); 393public static implicit operator Value(double value) => new(value); 394public static explicit operator double(in Value value) => value.GetValue<double>(); 395public static implicit operator Value(double? value) => new(value); 396public static explicit operator double?(in Value value) => value.GetValue<double?>(); 419public static implicit operator Value(Size value) => new(value); 420public static explicit operator Size(in Value value) => value.GetValue<Size>(); 421public static implicit operator Value(Size? value) => new(value); 422public static explicit operator Size?(in Value value) => value.GetValue<Size?>(); 445public static implicit operator Value(Point value) => new(value); 446public static explicit operator Point(in Value value) => value.GetValue<Point>(); 447public static implicit operator Value(Point? value) => new(value); 448public static explicit operator Point?(in Value value) => value.GetValue<Point?>(); 478public static implicit operator Value(Color value) => new(value); 479public static explicit operator Color(in Value value) => value.GetValue<Color>(); 480public static implicit operator Value(Color? value) => new(value); 481public static explicit operator Color?(in Value value) => value.GetValue<Color?>(); 517public static implicit operator Value(DateTimeOffset value) => new(value); 518public static explicit operator DateTimeOffset(in Value value) => value.GetValue<DateTimeOffset>(); 519public static implicit operator Value(DateTimeOffset? value) => new(value); 520public static explicit operator DateTimeOffset?(in Value value) => value.GetValue<DateTimeOffset?>(); 543public static implicit operator Value(DateTime value) => new(value); 544public static explicit operator DateTime(in Value value) => value.GetValue<DateTime>(); 545public static implicit operator Value(DateTime? value) => new(value); 546public static explicit operator DateTime?(in Value value) => value.GetValue<DateTime?>(); 566public static implicit operator Value(ArraySegment<byte> value) => new(value); 567public static explicit operator ArraySegment<byte>(in Value value) => value.GetValue<ArraySegment<byte>>(); 585public static implicit operator Value(ArraySegment<char> value) => new(value); 586public static explicit operator ArraySegment<char>(in Value value) => value.GetValue<ArraySegment<char>>(); 590public static implicit operator Value(decimal value) => new(value); 591public static explicit operator decimal(in Value value) => value.GetValue<decimal>(); 592public static implicit operator Value(decimal? value) => value.HasValue ? new(value.Value) : new(value); 593public static explicit operator decimal?(in Value value) => value.GetValue<decimal?>(); 599/// Creates a new <see cref="Value"/> with the given value. This method can always be used and avoids boxing enums. 601public static Value Create<T>(T value) 687/// Tries to get the value stored in this <see cref="Value"/> as the given type. Returns <see langword="true"/> if
System\Value.PackedColorFlag.cs (1)
14public override Color To(in Value value)
System\Value.PackedDateTimeOffsetFlag.cs (1)
12public override DateTimeOffset To(in Value value) => value._union.PackedDateTimeOffset.Extract();
System\Value.StraightCastFlag.cs (1)
18public override T To(in Value value) => Unsafe.As<Union, T>(ref Unsafe.AsRef(in value._union));
System\Value.TypeFlag.cs (6)
11/// A flag that represents the <see cref="System.Type"/> of a <see cref="Union"/> in a <see cref="Value"/>. 12/// Also provides the functionality to convert any <see cref="Value"/> to an <see langword="object"/> that 24/// Converts the given <see cref="Value"/> to an <see langword="object"/>. 26public abstract object ToObject(in Value value); 40public override object ToObject(in Value value) => To(value)!; 41public abstract T To(in Value value);
System\Value.Union.cs (2)
12/// Data union for the <see cref="Value"/> type. 17/// <see cref="Value"/> type.
System\Value.UtcDateTimeOffsetFlag.cs (1)
12public override DateTimeOffset To(in Value value) => new(new DateTime(value._union.Ticks, DateTimeKind.Utc));
Windows\Win32\Foundation\PWSTR.cs (1)
30char* p = Value;
System.Private.Windows.Core.Tests (228)
System\Value\Creation.cs (25)
13Value.Create((byte)default); 15Value.Create((sbyte)default); 17Value.Create((char)default); 19Value.Create((double)default); 21Value.Create((short)default); 23Value.Create((int)default); 25Value.Create((long)default); 27Value.Create((ushort)default); 29Value.Create((uint)default); 31Value.Create((ulong)default); 33Value.Create((float)default); 35Value.Create((double)default); 38Value.Create((bool?)default); 40Value.Create((byte?)default); 42Value.Create((sbyte?)default); 44Value.Create((char?)default); 46Value.Create((double?)default); 48Value.Create((short?)default); 50Value.Create((int?)default); 52Value.Create((long?)default); 54Value.Create((ushort?)default); 56Value.Create((uint?)default); 58Value.Create((ulong?)default); 60Value.Create((float?)default); 62Value.Create((double?)default);
System\Value\MemoryWatch.cs (31)
20Value.Create((bool)default).GetValue<bool>(); 21Value.Create((byte)default).GetValue<byte>(); 22Value.Create((sbyte)default).GetValue<sbyte>(); 23Value.Create((char)default).GetValue<char>(); 24Value.Create((double)default).GetValue<double>(); 25Value.Create((short)default).GetValue<short>(); 26Value.Create((int)default).GetValue<int>(); 27Value.Create((long)default).GetValue<long>(); 28Value.Create((ushort)default).GetValue<ushort>(); 29Value.Create((uint)default).GetValue<uint>(); 30Value.Create((ulong)default).GetValue<ulong>(); 31Value.Create((float)default).GetValue<float>(); 32Value.Create((double)default).GetValue<double>(); 33Value.Create((DateTime)default).GetValue<DateTime>(); 34Value.Create((DateTimeOffset)default).GetValue<DateTimeOffset>(); 36Value.Create((bool?)default).GetValue<bool?>(); 37Value.Create((byte?)default).GetValue<byte?>(); 38Value.Create((sbyte?)default).GetValue<sbyte?>(); 39Value.Create((char?)default).GetValue<char?>(); 40Value.Create((double?)default).GetValue<double?>(); 41Value.Create((short?)default).GetValue<short?>(); 42Value.Create((int?)default).GetValue<int?>(); 43Value.Create((long?)default).GetValue<long?>(); 44Value.Create((ushort?)default).GetValue<ushort?>(); 45Value.Create((uint?)default).GetValue<uint?>(); 46Value.Create((ulong?)default).GetValue<ulong?>(); 47Value.Create((float?)default).GetValue<float?>(); 48Value.Create((double?)default).GetValue<double?>(); 49Value.Create((DateTime?)default).GetValue<DateTime?>(); 50Value.Create((DateTimeOffset?)default).GetValue<DateTimeOffset?>(); 52Value value = default;
System\Value\StoringArrays.cs (12)
12Value value; 14value = Value.Create(b); 26Value value; 28value = Value.Create(b); 40Value value; 43value = Value.Create(segment); 50value = Value.Create(segment); 57value = Value.Create(segment); 68Value value; 71value = Value.Create(segment); 78value = Value.Create(segment); 85value = Value.Create(segment);
System\Value\StoringBoolean.cs (10)
18Value value; 41Value value; 44value = Value.Create(@bool); 54value = Value.Create(source); 65Value value; 87Value value; 110Value value = new(source); 124Value value = new(o); 147Value value; 163Value value = new(@bool);
System\Value\StoringByte.cs (10)
19Value value = @byte; 33Value value; 36value = Value.Create(@byte); 46value = Value.Create(source); 57Value value = new(@byte); 71Value value = new(source); 87Value value = new(source); 101Value value = new(o); 124Value value = source; 134Value value = new(@byte);
System\Value\StoringChar.cs (10)
19Value value = @char; 33Value value; 36value = Value.Create(@char); 46value = Value.Create(source); 57Value value = new(@char); 71Value value = new(source); 87Value value = new(source); 101Value value = new(o); 124Value value = source; 134Value value = new(@char);
System\Value\StoringDateTime.cs (6)
20Value value = @DateTime; 34Value value = new(@DateTime); 48Value value = new(source); 64Value value = new(source); 76Value value = source; 86Value value = new(@DateTime);
System\Value\StoringDateTimeOffset.cs (6)
20Value value = @DateTimeOffset; 34Value value = new(@DateTimeOffset); 48Value value = new(source); 64Value value = new(source); 76Value value = source; 86Value value = new(@DateTimeOffset);
System\Value\StoringDecimal.cs (6)
18Value value = (decimal)42.0; 32Value value = new(@decimal); 46Value value = new(source); 62Value value = new(source); 74Value value = source; 84Value value = new(@decimal);
System\Value\StoringDouble.cs (10)
23Value value = @double; 37Value value; 40value = Value.Create(@double); 50value = Value.Create(source); 61Value value = new(@double); 75Value value = new(source); 91Value value = new(source); 105Value value = new(o); 128Value value = source; 138Value value = new(@double);
System\Value\StoringEnum.cs (18)
17Value value = Value.Create(day); 30Value value = Value.Create(day); 41Value value = Value.Create(day); 45value = Value.Create((DayOfWeek?)day); 54Value value = new(day); 68Value value = Value.Create(@enum); 73value = Value.Create((ByteEnum?)@enum); 97Value value = Value.Create(@enum); 102value = Value.Create((ShortEnum?)@enum); 126Value value = Value.Create(@enum); 131value = Value.Create((LongEnum?)@enum); 154return Value.Create(day).GetValue<DayOfWeek>();
System\Value\StoringFloat.cs (10)
23Value value = @float; 37Value value; 40value = Value.Create(@float); 50value = Value.Create(source); 61Value value = new(@float); 75Value value = new(source); 91Value value = new(source); 105Value value = new(o); 128Value value = source; 138Value value = new(@float);
System\Value\StoringInt.cs (10)
20Value value = @int; 34Value value; 37value = Value.Create(@int); 47value = Value.Create(source); 58Value value = new(@int); 72Value value = new(source); 88Value value = new(source); 101Value value = new(o); 124Value value = source; 134Value value = new(@int);
System\Value\StoringLong.cs (10)
20Value value = @long; 34Value value; 37value = Value.Create(@long); 47value = Value.Create(source); 58Value value = new(@long); 72Value value = new(source); 88Value value = new(source); 102Value value = new(o); 125Value value = source; 135Value value = new(@long);
System\Value\StoringNull.cs (2)
11Value nullValue = new((object?)null); 14Value nullFastValue = new((object?)null);
System\Value\StoringObject.cs (3)
12Value value = new(a); 25Value value = new(b); 45Value value = new(a);
System\Value\StoringSByte.cs (9)
20Value value = @sbyte; 34Value value; 37value = Value.Create(@sbyte); 47value = Value.Create(source); 58Value value = new(@sbyte); 72Value value = new(source); 88Value value = new(source); 100Value value = source; 110Value value = new(@sbyte);
System\Value\StoringShort.cs (10)
20Value value = @short; 34Value value; 37value = Value.Create(@short); 47value = Value.Create(source); 58Value value = new(@short); 72Value value = new(source); 88Value value = new(source); 102Value value = new(o); 125Value value = source; 135Value value = new(@short);
System\Value\StoringUInt.cs (10)
19Value value = @uint; 33Value value; 36value = Value.Create(@uint); 46value = Value.Create(source); 57Value value = new(@uint); 71Value value = new(source); 87Value value = new(source); 101Value value = new(o); 124Value value = source; 134Value value = new(@uint);
System\Value\StoringUlong.cs (10)
19Value value = @ulong; 33Value value; 36value = Value.Create(@ulong); 46value = Value.Create(source); 57Value value = new(@ulong); 71Value value = new(source); 87Value value = new(source); 101Value value = new(o); 124Value value = source; 134Value value = new(@ulong);
System\Value\StoringUShort.cs (10)
19Value value = @ushort; 33Value value; 36value = Value.Create(@ushort); 46value = Value.Create(source); 57Value value = new(@ushort); 71Value value = new(source); 87Value value = new(source); 101Value value = new(o); 124Value value = source; 134Value value = new(@ushort);
System.Windows.Forms (10)
System\Windows\Forms\PropertyStore.cs (10)
21private readonly Dictionary<int, Value> _values = []; 43if (_values.TryGetValue(key, out Value foundValue)) 59if (_values.TryGetValue(key, out Value foundValue)) 72if (_values.TryGetValue(key, out Value foundValue)) 87if (_values.TryGetValue(key, out Value foundValue)) 112if (_values.TryGetValue(key, out Value foundValue)) 161bool found = _values.TryGetValue(key, out Value foundValue); 211_values[key] = Value.Create(value); 222if (_values.TryGetValue(key, out Value foundValue) && foundValue.Type == typeof(StrongBox<T>)) 229_values[key] = Value.Create(new StrongBox<T>(value));