github.com/cloudwan/edgelq-sdk@v1.15.4/logging/resources/v1alpha2/common/common.pb.fieldmask.go (about) 1 // Code generated by protoc-gen-goten-object 2 // File: edgelq/logging/proto/v1alpha2/common.proto 3 // DO NOT EDIT!!! 4 5 package common 6 7 import ( 8 "encoding/json" 9 "strings" 10 11 "google.golang.org/grpc/codes" 12 "google.golang.org/grpc/status" 13 "google.golang.org/protobuf/proto" 14 preflect "google.golang.org/protobuf/reflect/protoreflect" 15 googlefieldmaskpb "google.golang.org/protobuf/types/known/fieldmaskpb" 16 17 gotenobject "github.com/cloudwan/goten-sdk/runtime/object" 18 ) 19 20 // proto imports 21 import ( 22 timestamppb "google.golang.org/protobuf/types/known/timestamppb" 23 ) 24 25 // ensure the imports are used 26 var ( 27 _ = new(json.Marshaler) 28 _ = strings.Builder{} 29 30 _ = codes.NotFound 31 _ = status.Status{} 32 _ = new(proto.Message) 33 _ = new(preflect.Message) 34 _ = googlefieldmaskpb.FieldMask{} 35 36 _ = new(gotenobject.FieldMask) 37 ) 38 39 // make sure we're using proto imports 40 var ( 41 _ = ×tamppb.Timestamp{} 42 ) 43 44 type LabelDescriptor_FieldMask struct { 45 Paths []LabelDescriptor_FieldPath 46 } 47 48 func FullLabelDescriptor_FieldMask() *LabelDescriptor_FieldMask { 49 res := &LabelDescriptor_FieldMask{} 50 res.Paths = append(res.Paths, &LabelDescriptor_FieldTerminalPath{selector: LabelDescriptor_FieldPathSelectorKey}) 51 res.Paths = append(res.Paths, &LabelDescriptor_FieldTerminalPath{selector: LabelDescriptor_FieldPathSelectorDescription}) 52 return res 53 } 54 55 func (fieldMask *LabelDescriptor_FieldMask) String() string { 56 if fieldMask == nil { 57 return "<nil>" 58 } 59 pathsStr := make([]string, 0, len(fieldMask.Paths)) 60 for _, path := range fieldMask.Paths { 61 pathsStr = append(pathsStr, path.String()) 62 } 63 return strings.Join(pathsStr, ", ") 64 } 65 66 func (fieldMask *LabelDescriptor_FieldMask) IsFull() bool { 67 if fieldMask == nil { 68 return false 69 } 70 presentSelectors := make([]bool, 2) 71 for _, path := range fieldMask.Paths { 72 if asFinal, ok := path.(*LabelDescriptor_FieldTerminalPath); ok { 73 presentSelectors[int(asFinal.selector)] = true 74 } 75 } 76 for _, flag := range presentSelectors { 77 if !flag { 78 return false 79 } 80 } 81 return true 82 } 83 84 func (fieldMask *LabelDescriptor_FieldMask) ProtoReflect() preflect.Message { 85 return gotenobject.MakeFieldMaskReflection(fieldMask, func(raw string) (gotenobject.FieldPath, error) { 86 return ParseLabelDescriptor_FieldPath(raw) 87 }) 88 } 89 90 func (fieldMask *LabelDescriptor_FieldMask) ProtoMessage() {} 91 92 func (fieldMask *LabelDescriptor_FieldMask) Reset() { 93 if fieldMask != nil { 94 fieldMask.Paths = nil 95 } 96 } 97 98 func (fieldMask *LabelDescriptor_FieldMask) Subtract(other *LabelDescriptor_FieldMask) *LabelDescriptor_FieldMask { 99 result := &LabelDescriptor_FieldMask{} 100 removedSelectors := make([]bool, 2) 101 102 for _, path := range other.GetPaths() { 103 switch tp := path.(type) { 104 case *LabelDescriptor_FieldTerminalPath: 105 removedSelectors[int(tp.selector)] = true 106 } 107 } 108 for _, path := range fieldMask.GetPaths() { 109 if !removedSelectors[int(path.Selector())] { 110 result.Paths = append(result.Paths, path) 111 } 112 } 113 114 if len(result.Paths) == 0 { 115 return nil 116 } 117 return result 118 } 119 120 func (fieldMask *LabelDescriptor_FieldMask) SubtractRaw(other gotenobject.FieldMask) gotenobject.FieldMask { 121 return fieldMask.Subtract(other.(*LabelDescriptor_FieldMask)) 122 } 123 124 // FilterInputFields generates copy of field paths with output_only field paths removed 125 func (fieldMask *LabelDescriptor_FieldMask) FilterInputFields() *LabelDescriptor_FieldMask { 126 result := &LabelDescriptor_FieldMask{} 127 result.Paths = append(result.Paths, fieldMask.Paths...) 128 return result 129 } 130 131 // ToFieldMask is used for proto conversions 132 func (fieldMask *LabelDescriptor_FieldMask) ToProtoFieldMask() *googlefieldmaskpb.FieldMask { 133 protoFieldMask := &googlefieldmaskpb.FieldMask{} 134 for _, path := range fieldMask.Paths { 135 protoFieldMask.Paths = append(protoFieldMask.Paths, path.String()) 136 } 137 return protoFieldMask 138 } 139 140 func (fieldMask *LabelDescriptor_FieldMask) FromProtoFieldMask(protoFieldMask *googlefieldmaskpb.FieldMask) error { 141 if fieldMask == nil { 142 return status.Error(codes.Internal, "target field mask is nil") 143 } 144 fieldMask.Paths = make([]LabelDescriptor_FieldPath, 0, len(protoFieldMask.Paths)) 145 for _, strPath := range protoFieldMask.Paths { 146 path, err := ParseLabelDescriptor_FieldPath(strPath) 147 if err != nil { 148 return err 149 } 150 fieldMask.Paths = append(fieldMask.Paths, path) 151 } 152 return nil 153 } 154 155 // implement methods required by customType 156 func (fieldMask LabelDescriptor_FieldMask) Marshal() ([]byte, error) { 157 protoFieldMask := fieldMask.ToProtoFieldMask() 158 return proto.Marshal(protoFieldMask) 159 } 160 161 func (fieldMask *LabelDescriptor_FieldMask) Unmarshal(data []byte) error { 162 protoFieldMask := &googlefieldmaskpb.FieldMask{} 163 if err := proto.Unmarshal(data, protoFieldMask); err != nil { 164 return err 165 } 166 if err := fieldMask.FromProtoFieldMask(protoFieldMask); err != nil { 167 return err 168 } 169 return nil 170 } 171 172 func (fieldMask *LabelDescriptor_FieldMask) Size() int { 173 return proto.Size(fieldMask.ToProtoFieldMask()) 174 } 175 176 func (fieldMask LabelDescriptor_FieldMask) MarshalJSON() ([]byte, error) { 177 return json.Marshal(fieldMask.ToProtoFieldMask()) 178 } 179 180 func (fieldMask *LabelDescriptor_FieldMask) UnmarshalJSON(data []byte) error { 181 protoFieldMask := &googlefieldmaskpb.FieldMask{} 182 if err := json.Unmarshal(data, protoFieldMask); err != nil { 183 return err 184 } 185 if err := fieldMask.FromProtoFieldMask(protoFieldMask); err != nil { 186 return err 187 } 188 return nil 189 } 190 191 func (fieldMask *LabelDescriptor_FieldMask) AppendPath(path LabelDescriptor_FieldPath) { 192 fieldMask.Paths = append(fieldMask.Paths, path) 193 } 194 195 func (fieldMask *LabelDescriptor_FieldMask) AppendRawPath(path gotenobject.FieldPath) { 196 fieldMask.Paths = append(fieldMask.Paths, path.(LabelDescriptor_FieldPath)) 197 } 198 199 func (fieldMask *LabelDescriptor_FieldMask) GetPaths() []LabelDescriptor_FieldPath { 200 if fieldMask == nil { 201 return nil 202 } 203 return fieldMask.Paths 204 } 205 206 func (fieldMask *LabelDescriptor_FieldMask) GetRawPaths() []gotenobject.FieldPath { 207 if fieldMask == nil { 208 return nil 209 } 210 rawPaths := make([]gotenobject.FieldPath, 0, len(fieldMask.Paths)) 211 for _, path := range fieldMask.Paths { 212 rawPaths = append(rawPaths, path) 213 } 214 return rawPaths 215 } 216 217 func (fieldMask *LabelDescriptor_FieldMask) SetFromCliFlag(raw string) error { 218 path, err := ParseLabelDescriptor_FieldPath(raw) 219 if err != nil { 220 return err 221 } 222 fieldMask.Paths = append(fieldMask.Paths, path) 223 return nil 224 } 225 226 func (fieldMask *LabelDescriptor_FieldMask) Set(target, source *LabelDescriptor) { 227 for _, path := range fieldMask.Paths { 228 val, _ := path.GetSingle(source) 229 // if val is nil, then field does not exist in source, skip 230 // otherwise, process (can still reflect.ValueOf(val).IsNil!) 231 if val != nil { 232 path.WithIValue(val).SetTo(&target) 233 } 234 } 235 } 236 237 func (fieldMask *LabelDescriptor_FieldMask) SetRaw(target, source gotenobject.GotenObjectExt) { 238 fieldMask.Set(target.(*LabelDescriptor), source.(*LabelDescriptor)) 239 } 240 241 func (fieldMask *LabelDescriptor_FieldMask) Project(source *LabelDescriptor) *LabelDescriptor { 242 if source == nil { 243 return nil 244 } 245 if fieldMask == nil { 246 return source 247 } 248 result := &LabelDescriptor{} 249 250 for _, p := range fieldMask.Paths { 251 switch tp := p.(type) { 252 case *LabelDescriptor_FieldTerminalPath: 253 switch tp.selector { 254 case LabelDescriptor_FieldPathSelectorKey: 255 result.Key = source.Key 256 case LabelDescriptor_FieldPathSelectorDescription: 257 result.Description = source.Description 258 } 259 } 260 } 261 return result 262 } 263 264 func (fieldMask *LabelDescriptor_FieldMask) ProjectRaw(source gotenobject.GotenObjectExt) gotenobject.GotenObjectExt { 265 return fieldMask.Project(source.(*LabelDescriptor)) 266 } 267 268 func (fieldMask *LabelDescriptor_FieldMask) PathsCount() int { 269 if fieldMask == nil { 270 return 0 271 } 272 return len(fieldMask.Paths) 273 } 274 275 type LabelKeySet_FieldMask struct { 276 Paths []LabelKeySet_FieldPath 277 } 278 279 func FullLabelKeySet_FieldMask() *LabelKeySet_FieldMask { 280 res := &LabelKeySet_FieldMask{} 281 res.Paths = append(res.Paths, &LabelKeySet_FieldTerminalPath{selector: LabelKeySet_FieldPathSelectorLabelKeys}) 282 return res 283 } 284 285 func (fieldMask *LabelKeySet_FieldMask) String() string { 286 if fieldMask == nil { 287 return "<nil>" 288 } 289 pathsStr := make([]string, 0, len(fieldMask.Paths)) 290 for _, path := range fieldMask.Paths { 291 pathsStr = append(pathsStr, path.String()) 292 } 293 return strings.Join(pathsStr, ", ") 294 } 295 296 func (fieldMask *LabelKeySet_FieldMask) IsFull() bool { 297 if fieldMask == nil { 298 return false 299 } 300 presentSelectors := make([]bool, 1) 301 for _, path := range fieldMask.Paths { 302 if asFinal, ok := path.(*LabelKeySet_FieldTerminalPath); ok { 303 presentSelectors[int(asFinal.selector)] = true 304 } 305 } 306 for _, flag := range presentSelectors { 307 if !flag { 308 return false 309 } 310 } 311 return true 312 } 313 314 func (fieldMask *LabelKeySet_FieldMask) ProtoReflect() preflect.Message { 315 return gotenobject.MakeFieldMaskReflection(fieldMask, func(raw string) (gotenobject.FieldPath, error) { 316 return ParseLabelKeySet_FieldPath(raw) 317 }) 318 } 319 320 func (fieldMask *LabelKeySet_FieldMask) ProtoMessage() {} 321 322 func (fieldMask *LabelKeySet_FieldMask) Reset() { 323 if fieldMask != nil { 324 fieldMask.Paths = nil 325 } 326 } 327 328 func (fieldMask *LabelKeySet_FieldMask) Subtract(other *LabelKeySet_FieldMask) *LabelKeySet_FieldMask { 329 result := &LabelKeySet_FieldMask{} 330 removedSelectors := make([]bool, 1) 331 332 for _, path := range other.GetPaths() { 333 switch tp := path.(type) { 334 case *LabelKeySet_FieldTerminalPath: 335 removedSelectors[int(tp.selector)] = true 336 } 337 } 338 for _, path := range fieldMask.GetPaths() { 339 if !removedSelectors[int(path.Selector())] { 340 result.Paths = append(result.Paths, path) 341 } 342 } 343 344 if len(result.Paths) == 0 { 345 return nil 346 } 347 return result 348 } 349 350 func (fieldMask *LabelKeySet_FieldMask) SubtractRaw(other gotenobject.FieldMask) gotenobject.FieldMask { 351 return fieldMask.Subtract(other.(*LabelKeySet_FieldMask)) 352 } 353 354 // FilterInputFields generates copy of field paths with output_only field paths removed 355 func (fieldMask *LabelKeySet_FieldMask) FilterInputFields() *LabelKeySet_FieldMask { 356 result := &LabelKeySet_FieldMask{} 357 result.Paths = append(result.Paths, fieldMask.Paths...) 358 return result 359 } 360 361 // ToFieldMask is used for proto conversions 362 func (fieldMask *LabelKeySet_FieldMask) ToProtoFieldMask() *googlefieldmaskpb.FieldMask { 363 protoFieldMask := &googlefieldmaskpb.FieldMask{} 364 for _, path := range fieldMask.Paths { 365 protoFieldMask.Paths = append(protoFieldMask.Paths, path.String()) 366 } 367 return protoFieldMask 368 } 369 370 func (fieldMask *LabelKeySet_FieldMask) FromProtoFieldMask(protoFieldMask *googlefieldmaskpb.FieldMask) error { 371 if fieldMask == nil { 372 return status.Error(codes.Internal, "target field mask is nil") 373 } 374 fieldMask.Paths = make([]LabelKeySet_FieldPath, 0, len(protoFieldMask.Paths)) 375 for _, strPath := range protoFieldMask.Paths { 376 path, err := ParseLabelKeySet_FieldPath(strPath) 377 if err != nil { 378 return err 379 } 380 fieldMask.Paths = append(fieldMask.Paths, path) 381 } 382 return nil 383 } 384 385 // implement methods required by customType 386 func (fieldMask LabelKeySet_FieldMask) Marshal() ([]byte, error) { 387 protoFieldMask := fieldMask.ToProtoFieldMask() 388 return proto.Marshal(protoFieldMask) 389 } 390 391 func (fieldMask *LabelKeySet_FieldMask) Unmarshal(data []byte) error { 392 protoFieldMask := &googlefieldmaskpb.FieldMask{} 393 if err := proto.Unmarshal(data, protoFieldMask); err != nil { 394 return err 395 } 396 if err := fieldMask.FromProtoFieldMask(protoFieldMask); err != nil { 397 return err 398 } 399 return nil 400 } 401 402 func (fieldMask *LabelKeySet_FieldMask) Size() int { 403 return proto.Size(fieldMask.ToProtoFieldMask()) 404 } 405 406 func (fieldMask LabelKeySet_FieldMask) MarshalJSON() ([]byte, error) { 407 return json.Marshal(fieldMask.ToProtoFieldMask()) 408 } 409 410 func (fieldMask *LabelKeySet_FieldMask) UnmarshalJSON(data []byte) error { 411 protoFieldMask := &googlefieldmaskpb.FieldMask{} 412 if err := json.Unmarshal(data, protoFieldMask); err != nil { 413 return err 414 } 415 if err := fieldMask.FromProtoFieldMask(protoFieldMask); err != nil { 416 return err 417 } 418 return nil 419 } 420 421 func (fieldMask *LabelKeySet_FieldMask) AppendPath(path LabelKeySet_FieldPath) { 422 fieldMask.Paths = append(fieldMask.Paths, path) 423 } 424 425 func (fieldMask *LabelKeySet_FieldMask) AppendRawPath(path gotenobject.FieldPath) { 426 fieldMask.Paths = append(fieldMask.Paths, path.(LabelKeySet_FieldPath)) 427 } 428 429 func (fieldMask *LabelKeySet_FieldMask) GetPaths() []LabelKeySet_FieldPath { 430 if fieldMask == nil { 431 return nil 432 } 433 return fieldMask.Paths 434 } 435 436 func (fieldMask *LabelKeySet_FieldMask) GetRawPaths() []gotenobject.FieldPath { 437 if fieldMask == nil { 438 return nil 439 } 440 rawPaths := make([]gotenobject.FieldPath, 0, len(fieldMask.Paths)) 441 for _, path := range fieldMask.Paths { 442 rawPaths = append(rawPaths, path) 443 } 444 return rawPaths 445 } 446 447 func (fieldMask *LabelKeySet_FieldMask) SetFromCliFlag(raw string) error { 448 path, err := ParseLabelKeySet_FieldPath(raw) 449 if err != nil { 450 return err 451 } 452 fieldMask.Paths = append(fieldMask.Paths, path) 453 return nil 454 } 455 456 func (fieldMask *LabelKeySet_FieldMask) Set(target, source *LabelKeySet) { 457 for _, path := range fieldMask.Paths { 458 val, _ := path.GetSingle(source) 459 // if val is nil, then field does not exist in source, skip 460 // otherwise, process (can still reflect.ValueOf(val).IsNil!) 461 if val != nil { 462 path.WithIValue(val).SetTo(&target) 463 } 464 } 465 } 466 467 func (fieldMask *LabelKeySet_FieldMask) SetRaw(target, source gotenobject.GotenObjectExt) { 468 fieldMask.Set(target.(*LabelKeySet), source.(*LabelKeySet)) 469 } 470 471 func (fieldMask *LabelKeySet_FieldMask) Project(source *LabelKeySet) *LabelKeySet { 472 if source == nil { 473 return nil 474 } 475 if fieldMask == nil { 476 return source 477 } 478 result := &LabelKeySet{} 479 480 for _, p := range fieldMask.Paths { 481 switch tp := p.(type) { 482 case *LabelKeySet_FieldTerminalPath: 483 switch tp.selector { 484 case LabelKeySet_FieldPathSelectorLabelKeys: 485 result.LabelKeys = source.LabelKeys 486 } 487 } 488 } 489 return result 490 } 491 492 func (fieldMask *LabelKeySet_FieldMask) ProjectRaw(source gotenobject.GotenObjectExt) gotenobject.GotenObjectExt { 493 return fieldMask.Project(source.(*LabelKeySet)) 494 } 495 496 func (fieldMask *LabelKeySet_FieldMask) PathsCount() int { 497 if fieldMask == nil { 498 return 0 499 } 500 return len(fieldMask.Paths) 501 } 502 503 type TimeInterval_FieldMask struct { 504 Paths []TimeInterval_FieldPath 505 } 506 507 func FullTimeInterval_FieldMask() *TimeInterval_FieldMask { 508 res := &TimeInterval_FieldMask{} 509 res.Paths = append(res.Paths, &TimeInterval_FieldTerminalPath{selector: TimeInterval_FieldPathSelectorEndTime}) 510 res.Paths = append(res.Paths, &TimeInterval_FieldTerminalPath{selector: TimeInterval_FieldPathSelectorStartTime}) 511 return res 512 } 513 514 func (fieldMask *TimeInterval_FieldMask) String() string { 515 if fieldMask == nil { 516 return "<nil>" 517 } 518 pathsStr := make([]string, 0, len(fieldMask.Paths)) 519 for _, path := range fieldMask.Paths { 520 pathsStr = append(pathsStr, path.String()) 521 } 522 return strings.Join(pathsStr, ", ") 523 } 524 525 func (fieldMask *TimeInterval_FieldMask) IsFull() bool { 526 if fieldMask == nil { 527 return false 528 } 529 presentSelectors := make([]bool, 2) 530 for _, path := range fieldMask.Paths { 531 if asFinal, ok := path.(*TimeInterval_FieldTerminalPath); ok { 532 presentSelectors[int(asFinal.selector)] = true 533 } 534 } 535 for _, flag := range presentSelectors { 536 if !flag { 537 return false 538 } 539 } 540 return true 541 } 542 543 func (fieldMask *TimeInterval_FieldMask) ProtoReflect() preflect.Message { 544 return gotenobject.MakeFieldMaskReflection(fieldMask, func(raw string) (gotenobject.FieldPath, error) { 545 return ParseTimeInterval_FieldPath(raw) 546 }) 547 } 548 549 func (fieldMask *TimeInterval_FieldMask) ProtoMessage() {} 550 551 func (fieldMask *TimeInterval_FieldMask) Reset() { 552 if fieldMask != nil { 553 fieldMask.Paths = nil 554 } 555 } 556 557 func (fieldMask *TimeInterval_FieldMask) Subtract(other *TimeInterval_FieldMask) *TimeInterval_FieldMask { 558 result := &TimeInterval_FieldMask{} 559 removedSelectors := make([]bool, 2) 560 561 for _, path := range other.GetPaths() { 562 switch tp := path.(type) { 563 case *TimeInterval_FieldTerminalPath: 564 removedSelectors[int(tp.selector)] = true 565 } 566 } 567 for _, path := range fieldMask.GetPaths() { 568 if !removedSelectors[int(path.Selector())] { 569 result.Paths = append(result.Paths, path) 570 } 571 } 572 573 if len(result.Paths) == 0 { 574 return nil 575 } 576 return result 577 } 578 579 func (fieldMask *TimeInterval_FieldMask) SubtractRaw(other gotenobject.FieldMask) gotenobject.FieldMask { 580 return fieldMask.Subtract(other.(*TimeInterval_FieldMask)) 581 } 582 583 // FilterInputFields generates copy of field paths with output_only field paths removed 584 func (fieldMask *TimeInterval_FieldMask) FilterInputFields() *TimeInterval_FieldMask { 585 result := &TimeInterval_FieldMask{} 586 result.Paths = append(result.Paths, fieldMask.Paths...) 587 return result 588 } 589 590 // ToFieldMask is used for proto conversions 591 func (fieldMask *TimeInterval_FieldMask) ToProtoFieldMask() *googlefieldmaskpb.FieldMask { 592 protoFieldMask := &googlefieldmaskpb.FieldMask{} 593 for _, path := range fieldMask.Paths { 594 protoFieldMask.Paths = append(protoFieldMask.Paths, path.String()) 595 } 596 return protoFieldMask 597 } 598 599 func (fieldMask *TimeInterval_FieldMask) FromProtoFieldMask(protoFieldMask *googlefieldmaskpb.FieldMask) error { 600 if fieldMask == nil { 601 return status.Error(codes.Internal, "target field mask is nil") 602 } 603 fieldMask.Paths = make([]TimeInterval_FieldPath, 0, len(protoFieldMask.Paths)) 604 for _, strPath := range protoFieldMask.Paths { 605 path, err := ParseTimeInterval_FieldPath(strPath) 606 if err != nil { 607 return err 608 } 609 fieldMask.Paths = append(fieldMask.Paths, path) 610 } 611 return nil 612 } 613 614 // implement methods required by customType 615 func (fieldMask TimeInterval_FieldMask) Marshal() ([]byte, error) { 616 protoFieldMask := fieldMask.ToProtoFieldMask() 617 return proto.Marshal(protoFieldMask) 618 } 619 620 func (fieldMask *TimeInterval_FieldMask) Unmarshal(data []byte) error { 621 protoFieldMask := &googlefieldmaskpb.FieldMask{} 622 if err := proto.Unmarshal(data, protoFieldMask); err != nil { 623 return err 624 } 625 if err := fieldMask.FromProtoFieldMask(protoFieldMask); err != nil { 626 return err 627 } 628 return nil 629 } 630 631 func (fieldMask *TimeInterval_FieldMask) Size() int { 632 return proto.Size(fieldMask.ToProtoFieldMask()) 633 } 634 635 func (fieldMask TimeInterval_FieldMask) MarshalJSON() ([]byte, error) { 636 return json.Marshal(fieldMask.ToProtoFieldMask()) 637 } 638 639 func (fieldMask *TimeInterval_FieldMask) UnmarshalJSON(data []byte) error { 640 protoFieldMask := &googlefieldmaskpb.FieldMask{} 641 if err := json.Unmarshal(data, protoFieldMask); err != nil { 642 return err 643 } 644 if err := fieldMask.FromProtoFieldMask(protoFieldMask); err != nil { 645 return err 646 } 647 return nil 648 } 649 650 func (fieldMask *TimeInterval_FieldMask) AppendPath(path TimeInterval_FieldPath) { 651 fieldMask.Paths = append(fieldMask.Paths, path) 652 } 653 654 func (fieldMask *TimeInterval_FieldMask) AppendRawPath(path gotenobject.FieldPath) { 655 fieldMask.Paths = append(fieldMask.Paths, path.(TimeInterval_FieldPath)) 656 } 657 658 func (fieldMask *TimeInterval_FieldMask) GetPaths() []TimeInterval_FieldPath { 659 if fieldMask == nil { 660 return nil 661 } 662 return fieldMask.Paths 663 } 664 665 func (fieldMask *TimeInterval_FieldMask) GetRawPaths() []gotenobject.FieldPath { 666 if fieldMask == nil { 667 return nil 668 } 669 rawPaths := make([]gotenobject.FieldPath, 0, len(fieldMask.Paths)) 670 for _, path := range fieldMask.Paths { 671 rawPaths = append(rawPaths, path) 672 } 673 return rawPaths 674 } 675 676 func (fieldMask *TimeInterval_FieldMask) SetFromCliFlag(raw string) error { 677 path, err := ParseTimeInterval_FieldPath(raw) 678 if err != nil { 679 return err 680 } 681 fieldMask.Paths = append(fieldMask.Paths, path) 682 return nil 683 } 684 685 func (fieldMask *TimeInterval_FieldMask) Set(target, source *TimeInterval) { 686 for _, path := range fieldMask.Paths { 687 val, _ := path.GetSingle(source) 688 // if val is nil, then field does not exist in source, skip 689 // otherwise, process (can still reflect.ValueOf(val).IsNil!) 690 if val != nil { 691 path.WithIValue(val).SetTo(&target) 692 } 693 } 694 } 695 696 func (fieldMask *TimeInterval_FieldMask) SetRaw(target, source gotenobject.GotenObjectExt) { 697 fieldMask.Set(target.(*TimeInterval), source.(*TimeInterval)) 698 } 699 700 func (fieldMask *TimeInterval_FieldMask) Project(source *TimeInterval) *TimeInterval { 701 if source == nil { 702 return nil 703 } 704 if fieldMask == nil { 705 return source 706 } 707 result := &TimeInterval{} 708 709 for _, p := range fieldMask.Paths { 710 switch tp := p.(type) { 711 case *TimeInterval_FieldTerminalPath: 712 switch tp.selector { 713 case TimeInterval_FieldPathSelectorEndTime: 714 result.EndTime = source.EndTime 715 case TimeInterval_FieldPathSelectorStartTime: 716 result.StartTime = source.StartTime 717 } 718 } 719 } 720 return result 721 } 722 723 func (fieldMask *TimeInterval_FieldMask) ProjectRaw(source gotenobject.GotenObjectExt) gotenobject.GotenObjectExt { 724 return fieldMask.Project(source.(*TimeInterval)) 725 } 726 727 func (fieldMask *TimeInterval_FieldMask) PathsCount() int { 728 if fieldMask == nil { 729 return 0 730 } 731 return len(fieldMask.Paths) 732 }