Esempio n. 1
0
		public static void WriteDocument(BamlDocument doc, Stream str) {
			var writer = new BamlBinaryWriter(str);
			{
				var wtr = new BinaryWriter(str, Encoding.Unicode);
				int len = doc.Signature.Length * 2;
				wtr.Write(len);
				wtr.Write(doc.Signature.ToCharArray());
				wtr.Write(new byte[((len + 3) & ~3) - len]);
			}
			writer.Write(doc.ReaderVersion.Major);
			writer.Write(doc.ReaderVersion.Minor);
			writer.Write(doc.UpdaterVersion.Major);
			writer.Write(doc.UpdaterVersion.Minor);
			writer.Write(doc.WriterVersion.Major);
			writer.Write(doc.WriterVersion.Minor);

			var defers = new List<int>();
			for (int i = 0; i < doc.Count; i++) {
				BamlRecord rec = doc[i];
				rec.Position = str.Position;
				writer.Write((byte)rec.Type);
				rec.Write(writer);
				if (rec is IBamlDeferRecord) defers.Add(i);
			}
			foreach (int i in defers)
				(doc[i] as IBamlDeferRecord).WriteDefer(doc, i, writer);
		}
Esempio n. 2
0
		protected override void WriteData(BamlBinaryWriter writer) {
			writer.Write(XmlNamespace);
			writer.Write(ClrNamespace);
			writer.Write(AssemblyId);
		}
Esempio n. 3
0
		protected abstract void WriteData(BamlBinaryWriter writer);
Esempio n. 4
0
		public override void Write(BamlBinaryWriter writer) {
			writer.Write(TypeId);
			if (RuntimeName != null) {
				writer.Write(RuntimeName);
			}
		}
Esempio n. 5
0
 protected override void WriteData(BamlBinaryWriter writer) => writer.Write(ValueId);
Esempio n. 6
0
		public abstract void Write(BamlBinaryWriter writer);
Esempio n. 7
0
		public override void Write(BamlBinaryWriter writer) {
			writer.Write(ConnectionId);
		}
Esempio n. 8
0
		protected override void WriteData(BamlBinaryWriter writer) {
			base.WriteData(writer);
			writer.Write(ConverterTypeId);
		}
Esempio n. 9
0
 protected override void WriteData(BamlBinaryWriter writer)
 {
     writer.Write(AttributeId);
     writer.Write(SerializerTypeId);
     writer.Write(Data);
 }
Esempio n. 10
0
 protected override void WriteData(BamlBinaryWriter writer)
 {
     writer.Write(XmlNamespace);
     writer.Write(ClrNamespace);
     writer.Write(AssemblyId);
 }
Esempio n. 11
0
 protected abstract void WriteData(BamlBinaryWriter writer);
Esempio n. 12
0
 public override void Write(BamlBinaryWriter writer)
 {
     writer.Write(LinePosition);
 }
Esempio n. 13
0
 public override void Write(BamlBinaryWriter writer)
 {
     writer.Write(StaticResourceId);
 }
Esempio n. 14
0
 public override void Write(BamlBinaryWriter writer)
 {
     pos = writer.BaseStream.Position;
     writer.Write((uint)0);
 }
Esempio n. 15
0
		protected override void WriteData(BamlBinaryWriter writer) {
			writer.Write(ValueId);
			pos = (uint)writer.BaseStream.Position;
			writer.Write((uint)0);
			writer.Write(Shared);
			writer.Write(SharedSet);
		}
Esempio n. 16
0
		protected override void WriteData(BamlBinaryWriter writer) {
			writer.Write(AttributeId);
			writer.Write(OwnerTypeId);
			writer.Write(AttributeUsage);
			writer.Write(Name);
		}
Esempio n. 17
0
 protected override void WriteData(BamlBinaryWriter writer)
 {
     writer.Write(TypeId);
     writer.Write(AssemblyId);
     writer.Write(TypeFullName);
 }
Esempio n. 18
0
		protected override void WriteData(BamlBinaryWriter writer) {
			writer.Write(Value);
			writer.Write(AttributeId);
		}
Esempio n. 19
0
 protected override void WriteData(BamlBinaryWriter writer)
 {
     writer.Write(StringId);
     writer.Write(Value);
 }
Esempio n. 20
0
		public override void Write(BamlBinaryWriter writer) {
			base.Write(writer);
			writer.Write(StringId);
		}
Esempio n. 21
0
 protected override void WriteData(BamlBinaryWriter writer)
 {
     base.WriteData(writer);
     writer.Write(ConverterTypeId);
 }
Esempio n. 22
0
		public override void Write(BamlBinaryWriter writer) {
		}
Esempio n. 23
0
 protected override void WriteData(BamlBinaryWriter writer)
 {
     writer.Write(Value);
     writer.Write(Reserved0);
     writer.Write(Reserved1);
 }
Esempio n. 24
0
		public override void Write(BamlBinaryWriter writer) {
			writer.Write(LinePosition);
		}
Esempio n. 25
0
 protected override void WriteData(BamlBinaryWriter writer)
 {
     writer.Write(Value);
     writer.Write(AttributeId);
 }
Esempio n. 26
0
		public override void Write(BamlBinaryWriter writer) {
			long pos = writer.BaseStream.Position;
			WriteData(writer);
			var size = (int)(writer.BaseStream.Position - pos);
			size = SizeofEncodedInt(SizeofEncodedInt(size) + size) + size;
			writer.BaseStream.Position = pos;
			writer.WriteEncodedInt(size);
			WriteData(writer);
		}
Esempio n. 27
0
 public override void Write(BamlBinaryWriter writer)
 {
     writer.Write(LoadAsync);
     writer.Write(MaxAsyncRecords);
     writer.Write(DebugBaml);
 }
Esempio n. 28
0
		protected override void WriteData(BamlBinaryWriter writer) {
			writer.Write(Prefix);
			writer.Write(XmlNamespace);
			writer.Write((ushort)AssemblyIds.Length);
			foreach (ushort i in AssemblyIds)
				writer.Write(i);
		}
Esempio n. 29
0
 public override void Write(BamlBinaryWriter writer)
 {
     writer.Write(TypeId);
     writer.Write(Flags);
 }
Esempio n. 30
0
		protected override void WriteData(BamlBinaryWriter writer) {
			writer.Write(AttributeId);
			writer.Write(SerializerTypeId);
			writer.Write(Data);
		}
Esempio n. 31
0
 public override void Write(BamlBinaryWriter writer)
 {
 }
Esempio n. 32
0
		protected override void WriteData(BamlBinaryWriter writer) {
			writer.Write(TypeId);
			writer.Write(AssemblyId);
			writer.Write(TypeFullName);
		}
Esempio n. 33
0
 public override void Write(BamlBinaryWriter writer)
 {
     writer.Write(ConnectionId);
 }
Esempio n. 34
0
		protected override void WriteData(BamlBinaryWriter writer) {
			writer.Write(StringId);
			writer.Write(Value);
		}
Esempio n. 35
0
 public override void Write(BamlBinaryWriter writer)
 {
     writer.Write(AttributeId);
     writer.Write(Flags);
     writer.Write(ValueId);
 }
Esempio n. 36
0
		protected override void WriteData(BamlBinaryWriter writer) {
			writer.Write(Value);
			writer.Write(Reserved0);
			writer.Write(Reserved1);
		}
Esempio n. 37
0
 public override void Write(BamlBinaryWriter writer)
 {
     base.Write(writer);
     writer.Write(StringId);
 }
Esempio n. 38
0
		public override void Write(BamlBinaryWriter writer) {
			writer.Write(LoadAsync);
			writer.Write(MaxAsyncRecords);
			writer.Write(DebugBaml);
		}
Esempio n. 39
0
 public override void Write(BamlBinaryWriter writer)
 {
     writer.Write(AttributeId);
 }
Esempio n. 40
0
		public override void Write(BamlBinaryWriter writer) {
			writer.Write(AttributeId);
			writer.Write(Flags);
			writer.Write(ValueId);
		}
Esempio n. 41
0
 public abstract void Write(BamlBinaryWriter writer);
Esempio n. 42
0
		public override void Write(BamlBinaryWriter writer) {
			base.Write(writer);
			pos = (uint)writer.BaseStream.Position;
			writer.Write((uint)0);
			writer.Write(Shared);
			writer.Write(SharedSet);
		}
Esempio n. 43
0
		public override void Write(BamlBinaryWriter writer) {
			pos = writer.BaseStream.Position;
			writer.Write((uint)0);
		}
Esempio n. 44
0
		public override void Write(BamlBinaryWriter writer) {
			writer.Write(AttributeId);
		}
Esempio n. 45
0
		public override void Write(BamlBinaryWriter writer) {
			writer.Write(StaticResourceId);
		}
Esempio n. 46
0
		public override void Write(BamlBinaryWriter writer) {
			writer.Write(TypeId);
		}
Esempio n. 47
0
 public override void Write(BamlBinaryWriter writer) => writer.Write(TypeId);