public void Visit(BooleanType type)
 {
     Flatbuf.Bool.StartBool(Builder);
     Result = FieldType.Build(
         Flatbuf.Type.Bool,
         Flatbuf.Bool.EndBool(Builder));
 }
 public void Visit(BinaryType type)
 {
     Flatbuf.Binary.StartBinary(Builder);
     Result = FieldType.Build(
         Flatbuf.Type.Binary,
         Flatbuf.Binary.EndBinary(Builder));
 }
 public void Visit(ListType type)
 {
     Flatbuf.List.StartList(Builder);
     Result = FieldType.Build(
         Flatbuf.Type.List,
         Flatbuf.List.EndList(Builder));
 }
            public void Visit(StringType type)
            {
                Flatbuf.Utf8.StartUtf8(Builder);
                Offset <Utf8> offset = Flatbuf.Utf8.EndUtf8(Builder);

                Result = FieldType.Build(
                    Flatbuf.Type.Utf8, offset);
            }
            public void Visit(TimestampType type)
            {
                StringOffset timezoneStringOffset = default;

                if (!string.IsNullOrWhiteSpace(type.Timezone))
                {
                    timezoneStringOffset = Builder.CreateString(type.Timezone);
                }

                Result = FieldType.Build(
                    Flatbuf.Type.Timestamp,
                    Flatbuf.Timestamp.CreateTimestamp(Builder, ToFlatBuffer(type.Unit), timezoneStringOffset));
            }
 private void CreateIntType(NumberType type)
 {
     Result = FieldType.Build(
         Flatbuf.Type.Int,
         Flatbuf.Int.CreateInt(Builder, type.BitWidth, type.IsSigned));
 }
 public void Visit(StructType type)
 {
     Flatbuf.Struct_.StartStruct_(Builder);
     Result = FieldType.Build(Flatbuf.Type.Struct_, Flatbuf.Struct_.EndStruct_(Builder));
 }
 public void Visit(Time64Type type)
 {
     Result = FieldType.Build(
         Flatbuf.Type.Time,
         Flatbuf.Time.CreateTime(Builder, ToFlatBuffer(type.Unit), 64));
 }
 public void Visit(DoubleType type)
 {
     Result = FieldType.Build(
         Flatbuf.Type.FloatingPoint,
         Flatbuf.FloatingPoint.CreateFloatingPoint(Builder, Precision.DOUBLE));
 }
 public void Visit(Date64Type type)
 {
     Result = FieldType.Build(
         Flatbuf.Type.Date,
         Flatbuf.Date.CreateDate(Builder));
 }
 public void Visit(Date32Type type)
 {
     Result = FieldType.Build(
         Flatbuf.Type.Date,
         Flatbuf.Date.CreateDate(Builder, DateUnit.DAY));
 }
 public void Visit(Decimal256Type type)
 {
     Result = FieldType.Build(
         Flatbuf.Type.Decimal,
         Flatbuf.Decimal.CreateDecimal(Builder, type.Precision, type.Scale, type.BitWidth));
 }
示例#13
0
 public void Visit(FixedSizeBinaryType type)
 {
     Result = FieldType.Build(
         Flatbuf.Type.FixedSizeBinary,
         Flatbuf.FixedSizeBinary.CreateFixedSizeBinary(Builder, type.ByteWidth));
 }