Пример #1
0
 public ProtoFileGenerator(TypeSchemaGenerator typeSchemaGenerator, IPropertyNumberer propertyNumberer, Func <PropertyInfo, bool> propertyFilter = null)
 {
     Args.ThrowIfNull(typeSchemaGenerator);
     Args.ThrowIfNull(propertyNumberer, nameof(propertyNumberer));
     TypeSchemaGenerator = typeSchemaGenerator;
     PropertyNumberer    = propertyNumberer;
     OutputDirectory     = ".\\Generated_Protobuf";
     PropertyFilter      = propertyFilter ?? ((p) => true);
 }
Пример #2
0
        public ProtocolBufferType(Type type, IPropertyNumberer propertyNumberer, Func <PropertyInfo, bool> propertyFilter)
        {
            TypeName = type.Name;
            List <ProtocolBufferProperty> props = new List <ProtocolBufferProperty>();

            type.GetProperties().Where(propertyFilter).Each(new { List = props, Type = type }, (ctx, p) =>
            {
                ctx.List.Add(new ProtocolBufferProperty(p, propertyNumberer.GetNumber(ctx.Type, p)));
            });
            Properties = props.ToArray();
        }
 public DaoProtocolBuffersAssemblyGenerator(IPropertyNumberer propertyNumberer)
     : base(new DaoProtoFileGenerator(propertyNumberer))
 {
 }
Пример #4
0
 public DaoProtoFileGenerator(TypeSchemaGenerator typeSchemaGenerator, IPropertyNumberer propertyNumberer)
     : base(typeSchemaGenerator, propertyNumberer, (pi) => pi.HasCustomAttributeOfType <ColumnAttribute>())
 {
 }
Пример #5
0
 public DaoProtoFileGenerator(IPropertyNumberer propertyNumberer)
     : this(new TypeSchemaGenerator(), propertyNumberer)
 {
 }