private void ReadOptimizedStaticResource() { var node = new BamlOptimizedStaticResource(); node.Flags = (BamlOptimizedStaticResourceFlags)_accessor.ReadByte(); short valueId = _accessor.ReadInt16(); BamlExtensionValue value; switch (node.Flags) { case BamlOptimizedStaticResourceFlags.ValueType: { value = new BamlExtensionTypeValue(GetType(valueId)); } break; case BamlOptimizedStaticResourceFlags.StaticType: { value = GetStaticExtensionValue(valueId); } break; default: { value = new BamlExtensionStringValue(GetString(valueId)); } break; } node.Value = value; AddNode(node); }
private void WriteOptimizedStaticResource(BamlOptimizedStaticResource node) { _blob.Write(ref _pos, (byte)RecordType.OptimizedStaticResource); _blob.Write(ref _pos, (byte)node.Flags); _blob.Write(ref _pos, (short)GetExtensionValueId(node.Value)); }