internal SerializableNewExpression(NewExpression source, SerializationContext ctx, InterfaceType.Factory iftFactory) : base(source, ctx, iftFactory) { Constructor = new SerializableConstructorInfo(source.Constructor, iftFactory); if (source.Members != null) { Members = source.Members.Select(i => new SerializableMemberInfo(i, iftFactory)).ToArray(); } Children = source.Arguments.Select(a => SerializableExpression.FromExpression(a, ctx, iftFactory)).ToArray(); }
internal SerializableNewExpression(ZetboxStreamReader binReader, StreamSerializationContext ctx, InterfaceType.Factory iftFactory) : base(binReader, ctx, iftFactory) { Constructor = (SerializableConstructorInfo)SerializableMemberInfo.FromStream(binReader); var members = new List <SerializableMemberInfo>(); while (binReader.ReadBoolean()) { members.Add(SerializableMemberInfo.FromStream(binReader)); } this.Members = members.ToArray(); }