コード例 #1
0
 internal KeyValuePair_internal(string label, KeyValueElement_internal key, KeyValueElement_internal value, float confidence)
 {
     Label      = label;
     Key        = key;
     Value      = value;
     Confidence = confidence;
 }
        internal static KeyValuePair_internal DeserializeKeyValuePair_internal(JsonElement element)
        {
            KeyValuePair_internal result = new KeyValuePair_internal();

            foreach (var property in element.EnumerateObject())
            {
                if (property.NameEquals("label"))
                {
                    if (property.Value.ValueKind == JsonValueKind.Null)
                    {
                        continue;
                    }
                    result.Label = property.Value.GetString();
                    continue;
                }
                if (property.NameEquals("key"))
                {
                    result.Key = KeyValueElement_internal.DeserializeKeyValueElement_internal(property.Value);
                    continue;
                }
                if (property.NameEquals("value"))
                {
                    result.Value = KeyValueElement_internal.DeserializeKeyValueElement_internal(property.Value);
                    continue;
                }
                if (property.NameEquals("confidence"))
                {
                    result.Confidence = property.Value.GetSingle();
                    continue;
                }
            }
            return(result);
        }
コード例 #3
0
        internal KeyValuePair_internal(KeyValueElement_internal key, KeyValueElement_internal value, float confidence)
        {
            if (key == null)
            {
                throw new ArgumentNullException(nameof(key));
            }
            if (value == null)
            {
                throw new ArgumentNullException(nameof(value));
            }

            Key        = key;
            Value      = value;
            Confidence = confidence;
        }
        internal static KeyValueElement_internal DeserializeKeyValueElement_internal(JsonElement element)
        {
            KeyValueElement_internal result = new KeyValueElement_internal();

            foreach (var property in element.EnumerateObject())
            {
                if (property.NameEquals("text"))
                {
                    result.Text = property.Value.GetString();
                    continue;
                }
                if (property.NameEquals("boundingBox"))
                {
                    if (property.Value.ValueKind == JsonValueKind.Null)
                    {
                        continue;
                    }
                    result.BoundingBox = new List <float>();
                    foreach (var item in property.Value.EnumerateArray())
                    {
                        result.BoundingBox.Add(item.GetSingle());
                    }
                    continue;
                }
                if (property.NameEquals("elements"))
                {
                    if (property.Value.ValueKind == JsonValueKind.Null)
                    {
                        continue;
                    }
                    result.Elements = new List <string>();
                    foreach (var item in property.Value.EnumerateArray())
                    {
                        result.Elements.Add(item.GetString());
                    }
                    continue;
                }
            }
            return(result);
        }
コード例 #5
0
        internal static KeyValuePair_internal DeserializeKeyValuePair_internal(JsonElement element)
        {
            string label = default;
            KeyValueElement_internal key   = default;
            KeyValueElement_internal value = default;
            float confidence = default;

            foreach (var property in element.EnumerateObject())
            {
                if (property.NameEquals("label"))
                {
                    if (property.Value.ValueKind == JsonValueKind.Null)
                    {
                        continue;
                    }
                    label = property.Value.GetString();
                    continue;
                }
                if (property.NameEquals("key"))
                {
                    key = KeyValueElement_internal.DeserializeKeyValueElement_internal(property.Value);
                    continue;
                }
                if (property.NameEquals("value"))
                {
                    value = KeyValueElement_internal.DeserializeKeyValueElement_internal(property.Value);
                    continue;
                }
                if (property.NameEquals("confidence"))
                {
                    confidence = property.Value.GetSingle();
                    continue;
                }
            }
            return(new KeyValuePair_internal(label, key, value, confidence));
        }