コード例 #1
0
ファイル: Tag.cs プロジェクト: NeoLegends/ENbt
        public static Tag ReadFrom(ENbtBinaryReader reader, TagResolver resolver)
        {
            Contract.Requires <ArgumentNullException>(reader != null);
            Contract.Requires <ArgumentNullException>(resolver != null);

            return(resolver.Resolve(reader.ReadTagType())
                   .Invoke(reader));
        }
コード例 #2
0
ファイル: ArrayTag.cs プロジェクト: NeoLegends/ENbt
        public ArrayTag(ENbtBinaryReader reader)
        {
            Contract.Requires <ArgumentNullException>(reader != null);

            this.ChildrenType = reader.ReadTagType();
            int count = reader.ReadInt32();

            for (int i = 0; i < count; i++)
            {
                children.Add(Tag.ReadFrom(reader, this.ChildrenType));
            }
        }