示例#1
0
        public static PacketBuilder <Packet> CreateDefault(PacketBaseInformation information)
        {
            var result = new PacketBuilder <Packet>();

            result.Setup(information);
            result.Setup(Helpers.FastConstructor <Packet> .Create);
            return(result);
        }
示例#2
0
        public virtual void Register <T>(Func <T> constructor, PacketBaseInformation information) where T : IDataSerializer
        {
            if (constructor == null || information == null)
            {
                return;
            }
            var builder = new PacketBuilder <T>();

            builder.Setup(information, constructor);
            Register(builder);
        }
示例#3
0
 public virtual void Register <T>(PacketBaseInformation information) where T : IDataSerializer
 {
     if (information == null)
     {
         return;
     }
     if (Helpers.FastConstructor <T> .Exists)
     {
         Register(Helpers.FastConstructor <T> .Create, information);
     }
 }
示例#4
0
 public void Setup(PacketBaseInformation information, Func <Packet> constructor)
 {
     Information = information;
     Constructor = constructor;
 }
示例#5
0
 public void Setup(PacketBaseInformation information)
 {
     Information = information;
 }
示例#6
0
 public static PacketContainer <T> Create <TNew>(PacketBaseInformation information) where TNew : T
 {
     return(new PacketContainer <T>(Helpers.FastConstructor <TNew> .Create(), information));
 }
示例#7
0
 public PacketContainer(T packet, PacketBaseInformation information)
 {
     Information = information;
     Packet      = packet;
 }