Beispiel #1
0
        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));
        }
Beispiel #2
0
        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));
        }
Beispiel #3
0
        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));
        }
Beispiel #4
0
        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));
            }
        }