public static T ReadFrom <T>(ENbtBinaryReader reader, TagType tagType, TagResolver resolver) where T : Tag { Contract.Requires <ArgumentNullException>(reader != null); Contract.Requires <ArgumentNullException>(resolver != null); return((T)ReadFrom(reader, tagType, resolver)); }
public static Tag ReadFrom(ENbtBinaryReader reader, TagType tagType, TagResolver resolver) { Contract.Requires <ArgumentNullException>(reader != null); Contract.Requires <ArgumentNullException>(resolver != null); return(resolver.Resolve(tagType) .Invoke(reader)); }
public static T ReadFrom <T>(Stream source, TagType tagType, TagResolver resolver) where T : Tag { Contract.Requires <ArgumentNullException>(source != null); Contract.Requires <InvalidOperationException>(source.CanRead); Contract.Requires <ArgumentNullException>(resolver != null); return((T)ReadFrom(source, tagType, resolver)); }
public static Tag ReadFrom(Stream source, TagType tagType, TagResolver resolver) { Contract.Requires <ArgumentNullException>(source != null); Contract.Requires <InvalidOperationException>(source.CanRead); Contract.Requires <ArgumentNullException>(resolver != null); using (ENbtBinaryReader rdr = new ENbtBinaryReader(source, true)) { return(ReadFrom(rdr, tagType, resolver)); } }