Class Value (3.23.0)

public sealed class Value : IMessage<Value>, IEquatable<Value>, IDeepCloneable<Value>, IBufferMessage, IMessage

Value represents a dynamically typed value which can be either null, a number, a string, a boolean, a recursive struct value, or a list of values. A producer of value is expected to set one of these variants. Absence of any variant indicates an error.

The JSON representation for Value is JSON value.

Inheritance

object > Value

Namespace

Google.Protobuf.WellKnownTypes

Assembly

Google.Protobuf.dll

Constructors

Value()

public Value()

Value(Value)

public Value(Value other)
Parameter
NameDescription
otherValue

Fields

BoolValueFieldNumber

public const int BoolValueFieldNumber = 4

Field number for the "bool_value" field.

Field Value
TypeDescription
int

ListValueFieldNumber

public const int ListValueFieldNumber = 6

Field number for the "list_value" field.

Field Value
TypeDescription
int

NullValueFieldNumber

public const int NullValueFieldNumber = 1

Field number for the "null_value" field.

Field Value
TypeDescription
int

NumberValueFieldNumber

public const int NumberValueFieldNumber = 2

Field number for the "number_value" field.

Field Value
TypeDescription
int

StringValueFieldNumber

public const int StringValueFieldNumber = 3

Field number for the "string_value" field.

Field Value
TypeDescription
int

StructValueFieldNumber

public const int StructValueFieldNumber = 5

Field number for the "struct_value" field.

Field Value
TypeDescription
int

Properties

BoolValue

public bool BoolValue { get; set; }

Represents a boolean value.

Property Value
TypeDescription
bool

Descriptor

public static MessageDescriptor Descriptor { get; }
Property Value
TypeDescription
MessageDescriptor

HasBoolValue

public bool HasBoolValue { get; }

Gets whether the "bool_value" field is set

Property Value
TypeDescription
bool

HasNullValue

public bool HasNullValue { get; }

Gets whether the "null_value" field is set

Property Value
TypeDescription
bool

HasNumberValue

public bool HasNumberValue { get; }

Gets whether the "number_value" field is set

Property Value
TypeDescription
bool

HasStringValue

public bool HasStringValue { get; }

Gets whether the "string_value" field is set

Property Value
TypeDescription
bool

KindCase

public Value.KindOneofCase KindCase { get; }
Property Value
TypeDescription
ValueKindOneofCase

ListValue

public ListValue ListValue { get; set; }

Represents a repeated Value.

Property Value
TypeDescription
ListValue

NullValue

public NullValue NullValue { get; set; }

Represents a null value.

Property Value
TypeDescription
NullValue

NumberValue

public double NumberValue { get; set; }

Represents a double value.

Property Value
TypeDescription
double

Parser

public static MessageParser<Value> Parser { get; }
Property Value
TypeDescription
MessageParserValue

StringValue

public string StringValue { get; set; }

Represents a string value.

Property Value
TypeDescription
string

StructValue

public Struct StructValue { get; set; }

Represents a structured value.

Property Value
TypeDescription
Struct

Methods

CalculateSize()

public int CalculateSize()

Calculates the size of this message in Protocol Buffer wire format, in bytes.

Returns
TypeDescription
int

The number of bytes required to write this message to a coded output stream.

ClearBoolValue()

public void ClearBoolValue()

Clears the value of the oneof if it's currently set to "bool_value"

ClearKind()

public void ClearKind()

ClearNullValue()

public void ClearNullValue()

Clears the value of the oneof if it's currently set to "null_value"

ClearNumberValue()

public void ClearNumberValue()

Clears the value of the oneof if it's currently set to "number_value"

ClearStringValue()

public void ClearStringValue()

Clears the value of the oneof if it's currently set to "string_value"

Clone()

public Value Clone()

Creates a deep clone of this object.

Returns
TypeDescription
Value

A deep clone of this object.

Equals(Value)

public bool Equals(Value other)
Parameter
NameDescription
otherValue
Returns
TypeDescription
bool

Equals(object)

public override bool Equals(object other)
Parameter
NameDescription
otherobject
Returns
TypeDescription
bool
Overrides

ForBool(bool)

public static Value ForBool(bool value)

Convenience method to create a Value message with a Boolean value.

Parameter
NameDescription
valuebool

Value to set for the BoolValue property.

Returns
TypeDescription
Value

A newly-created Value message with the given value.

ForList(params Value[])

public static Value ForList(params Value[] values)

Convenience method to create a Value message with an initial list of values.

Parameter
NameDescription
valuesValue
Returns
TypeDescription
Value

A newly-created Value message an initial list value.

Remarks

The values provided are not cloned; the references are copied directly.

ForNull()

public static Value ForNull()

Convenience method to create a Value message with a null initial value.

Returns
TypeDescription
Value

A newly-created Value message a null initial value.

ForNumber(double)

public static Value ForNumber(double value)

Convenience method to create a Value message with a number value.

Parameter
NameDescription
valuedouble

Value to set for the NumberValue property.

Returns
TypeDescription
Value

A newly-created Value message with the given value.

ForString(string)

public static Value ForString(string value)

Convenience method to create a Value message with a string value.

Parameter
NameDescription
valuestring

Value to set for the StringValue property.

Returns
TypeDescription
Value

A newly-created Value message with the given value.

ForStruct(Struct)

public static Value ForStruct(Struct value)

Convenience method to create a Value message with an initial struct value

Parameter
NameDescription
valueStruct
Returns
TypeDescription
Value

A newly-created Value message an initial struct value.

Remarks

The value provided is not cloned; the reference is copied directly.

GetHashCode()

public override int GetHashCode()
Returns
TypeDescription
int
Overrides

MergeFrom(CodedInputStream)

public void MergeFrom(CodedInputStream input)

Merges the data from the specified coded input stream with the current message.

Parameter
NameDescription
inputCodedInputStream
Remarks

See the user guide for precise merge semantics.

MergeFrom(Value)

public void MergeFrom(Value other)

Merges the given message into this one.

Parameter
NameDescription
otherValue
Remarks

See the user guide for precise merge semantics.

ToString()

public override string ToString()
Returns
TypeDescription
string
Overrides

WriteTo(CodedOutputStream)

public void WriteTo(CodedOutputStream output)

Writes the data to the given coded output stream.

Parameter
NameDescription
outputCodedOutputStream

Coded output stream to write the data to. Must not be null.

Extension Methods