Passed
Push — master ( 583371...613693 )
by Alex
03:44
created

TApplyExpressionType   F

Complexity

Total Complexity 182

Size/Duplication

Total Lines 2294
Duplicated Lines 0 %

Coupling/Cohesion

Components 36
Dependencies 0

Importance

Changes 0
Metric Value
wmc 182
lcom 36
cbo 0
dl 0
loc 2294
rs 0.5315
c 0
b 0
f 0

182 Methods

Rating   Name   Duplication   Size   Complexity  
A getFunction() 0 4 1
A setFunction() 0 5 1
A addToAnnotation() 0 5 1
A issetAnnotation() 0 4 1
A unsetAnnotation() 0 4 1
A getAnnotation() 0 4 1
A setAnnotation() 0 5 1
A addToBinary() 0 5 1
A issetBinary() 0 4 1
A unsetBinary() 0 4 1
A getBinary() 0 4 1
A setBinary() 0 5 1
A addToBool() 0 5 1
A issetBool() 0 4 1
A unsetBool() 0 4 1
A getBool() 0 4 1
A setBool() 0 5 1
A addToDate() 0 5 1
A issetDate() 0 4 1
A unsetDate() 0 4 1
A getDate() 0 4 1
A setDate() 0 5 1
A addToDateTimeOffset() 0 5 1
A issetDateTimeOffset() 0 4 1
A unsetDateTimeOffset() 0 4 1
A getDateTimeOffset() 0 4 1
A setDateTimeOffset() 0 5 1
A addToDecimal() 0 5 1
A issetDecimal() 0 4 1
A unsetDecimal() 0 4 1
A getDecimal() 0 4 1
A setDecimal() 0 5 1
A addToDuration() 0 5 1
A issetDuration() 0 4 1
A unsetDuration() 0 4 1
A getDuration() 0 4 1
A setDuration() 0 5 1
A addToEnumMember() 0 5 1
A issetEnumMember() 0 4 1
A unsetEnumMember() 0 4 1
A getEnumMember() 0 4 1
A setEnumMember() 0 5 1
A addToFloat() 0 5 1
A issetFloat() 0 4 1
A unsetFloat() 0 4 1
A getFloat() 0 4 1
A setFloat() 0 5 1
A addToGuid() 0 5 1
A issetGuid() 0 4 1
A unsetGuid() 0 4 1
A getGuid() 0 4 1
A setGuid() 0 5 1
A addToInt() 0 5 1
A issetInt() 0 4 1
A unsetInt() 0 4 1
A getInt() 0 4 1
A setInt() 0 5 1
A addToString() 0 5 1
A issetString() 0 4 1
A unsetString() 0 4 1
A getString() 0 4 1
A setString() 0 5 1
A addToTimeOfDay() 0 5 1
A issetTimeOfDay() 0 4 1
A unsetTimeOfDay() 0 4 1
A getTimeOfDay() 0 4 1
A setTimeOfDay() 0 5 1
A addToAnnotationPath() 0 5 1
A issetAnnotationPath() 0 4 1
A unsetAnnotationPath() 0 4 1
A getAnnotationPath() 0 4 1
A setAnnotationPath() 0 5 1
A addToApply() 0 5 1
A issetApply() 0 4 1
A unsetApply() 0 4 1
A getApply() 0 4 1
A setApply() 0 5 1
A addToCast() 0 5 1
A issetCast() 0 4 1
A unsetCast() 0 4 1
A getCast() 0 4 1
A setCast() 0 5 1
A addToCollection() 0 5 1
A issetCollection() 0 4 1
A unsetCollection() 0 4 1
A getCollection() 0 4 1
A setCollection() 0 5 1
A addToIf() 0 5 1
A issetIf() 0 4 1
A unsetIf() 0 4 1
A getIf() 0 4 1
A setIf() 0 5 1
A addToEq() 0 5 1
A issetEq() 0 4 1
A unsetEq() 0 4 1
A getEq() 0 4 1
A setEq() 0 5 1
A addToNe() 0 5 1
A issetNe() 0 4 1
A unsetNe() 0 4 1
A getNe() 0 4 1
A setNe() 0 5 1
A addToGe() 0 5 1
A issetGe() 0 4 1
A unsetGe() 0 4 1
A getGe() 0 4 1
A setGe() 0 5 1
A addToGt() 0 5 1
A issetGt() 0 4 1
A unsetGt() 0 4 1
A getGt() 0 4 1
A setGt() 0 5 1
A addToLe() 0 5 1
A issetLe() 0 4 1
A unsetLe() 0 4 1
A getLe() 0 4 1
A setLe() 0 5 1
A addToLt() 0 5 1
A issetLt() 0 4 1
A unsetLt() 0 4 1
A getLt() 0 4 1
A setLt() 0 5 1
A addToAnd() 0 5 1
A issetAnd() 0 4 1
A unsetAnd() 0 4 1
A getAnd() 0 4 1
A setAnd() 0 5 1
A addToOr() 0 5 1
A issetOr() 0 4 1
A unsetOr() 0 4 1
A getOr() 0 4 1
A setOr() 0 5 1
A addToNot() 0 5 1
A issetNot() 0 4 1
A unsetNot() 0 4 1
A getNot() 0 4 1
A setNot() 0 5 1
A addToIsOf() 0 5 1
A issetIsOf() 0 4 1
A unsetIsOf() 0 4 1
A getIsOf() 0 4 1
A setIsOf() 0 5 1
A addToLabeledElement() 0 5 1
A issetLabeledElement() 0 4 1
A unsetLabeledElement() 0 4 1
A getLabeledElement() 0 4 1
A setLabeledElement() 0 5 1
A addToLabeledElementReference() 0 5 1
A issetLabeledElementReference() 0 4 1
A unsetLabeledElementReference() 0 4 1
A getLabeledElementReference() 0 4 1
A setLabeledElementReference() 0 5 1
A addToNull() 0 5 1
A issetNull() 0 4 1
A unsetNull() 0 4 1
A getNull() 0 4 1
A setNull() 0 5 1
A addToNavigationPropertyPath() 0 5 1
A issetNavigationPropertyPath() 0 4 1
A unsetNavigationPropertyPath() 0 4 1
A getNavigationPropertyPath() 0 4 1
A setNavigationPropertyPath() 0 5 1
A addToPath() 0 5 1
A issetPath() 0 4 1
A unsetPath() 0 4 1
A getPath() 0 4 1
A setPath() 0 5 1
A addToPropertyPath() 0 5 1
A issetPropertyPath() 0 4 1
A unsetPropertyPath() 0 4 1
A getPropertyPath() 0 4 1
A setPropertyPath() 0 5 1
A addToRecord() 0 5 1
A issetRecord() 0 4 1
A unsetRecord() 0 4 1
A getRecord() 0 4 1
A setRecord() 0 5 1
A addToUrlRef() 0 5 1
A issetUrlRef() 0 4 1
A unsetUrlRef() 0 4 1
A getUrlRef() 0 4 1
A setUrlRef() 0 5 1

How to fix   Complexity   

Complex Class

Complex classes like TApplyExpressionType often do a lot of different things. To break such a class down, we need to identify a cohesive component within that class. A common approach to find such a component is to look for fields/methods that share the same prefixes, or suffixes. You can also have a look at the cohesion graph to spot any un-connected, or weakly-connected components.

Once you have determined the fields that belong together, you can apply the Extract Class refactoring. If the component makes sense as a sub-class, Extract Subclass is also a candidate, and is often faster.

While breaking up the class, it is a good idea to analyze how other classes use TApplyExpressionType, and based on these observations, apply Extract Interface, too.

1
<?php
2
3
namespace AlgoWeb\ODataMetadata\MetadataV4\edm;
4
5
/**
6
 * Class representing TApplyExpressionType
7
 *
8
 *
9
 * XSD Type: TApplyExpression
10
 */
11
class TApplyExpressionType
12
{
13
14
    /**
15
     * @property string $function
16
     */
17
    private $function = null;
18
19
    /**
20
     * @property \MetadataV4\edm\Annotation[] $annotation
21
     */
22
    private $annotation = array(
23
        
24
    );
25
26
    /**
27
     * @property string[] $binary
28
     */
29
    private $binary = array(
30
        
31
    );
32
33
    /**
34
     * @property boolean[] $bool
35
     */
36
    private $bool = array(
37
        
38
    );
39
40
    /**
41
     * @property \DateTime[] $date
42
     */
43
    private $date = array(
44
        
45
    );
46
47
    /**
48
     * @property \DateTime[] $dateTimeOffset
49
     */
50
    private $dateTimeOffset = array(
51
        
52
    );
53
54
    /**
55
     * @property float[] $decimal
56
     */
57
    private $decimal = array(
58
        
59
    );
60
61
    /**
62
     * @property \DateInterval[] $duration
63
     */
64
    private $duration = array(
65
        
66
    );
67
68
    /**
69
     * @property string[] $enumMember
70
     */
71
    private $enumMember = null;
72
73
    /**
74
     * @property float[] $float
75
     */
76
    private $float = array(
77
        
78
    );
79
80
    /**
81
     * @property string[] $guid
82
     */
83
    private $guid = array(
84
        
85
    );
86
87
    /**
88
     * @property integer[] $int
89
     */
90
    private $int = array(
91
        
92
    );
93
94
    /**
95
     * @property string[] $string
96
     */
97
    private $string = array(
98
        
99
    );
100
101
    /**
102
     * @property \DateTime[] $timeOfDay
103
     */
104
    private $timeOfDay = array(
105
        
106
    );
107
108
    /**
109
     * @property string[] $annotationPath
110
     */
111
    private $annotationPath = array(
112
        
113
    );
114
115
    /**
116
     * @property \MetadataV4\edm\TApplyExpressionType[] $apply
117
     */
118
    private $apply = array(
119
        
120
    );
121
122
    /**
123
     * @property \MetadataV4\edm\TCastOrIsOfExpressionType[] $cast
124
     */
125
    private $cast = array(
126
        
127
    );
128
129
    /**
130
     * @property \MetadataV4\edm\TCollectionExpressionType[] $collection
131
     */
132
    private $collection = array(
133
        
134
    );
135
136
    /**
137
     * @property \MetadataV4\edm\TIfExpressionType[] $if
138
     */
139
    private $if = array(
140
        
141
    );
142
143
    /**
144
     * @property \MetadataV4\edm\TTwoChildrenExpressionType[] $eq
145
     */
146
    private $eq = array(
147
        
148
    );
149
150
    /**
151
     * @property \MetadataV4\edm\TTwoChildrenExpressionType[] $ne
152
     */
153
    private $ne = array(
154
        
155
    );
156
157
    /**
158
     * @property \MetadataV4\edm\TTwoChildrenExpressionType[] $ge
159
     */
160
    private $ge = array(
161
        
162
    );
163
164
    /**
165
     * @property \MetadataV4\edm\TTwoChildrenExpressionType[] $gt
166
     */
167
    private $gt = array(
168
        
169
    );
170
171
    /**
172
     * @property \MetadataV4\edm\TTwoChildrenExpressionType[] $le
173
     */
174
    private $le = array(
175
        
176
    );
177
178
    /**
179
     * @property \MetadataV4\edm\TTwoChildrenExpressionType[] $lt
180
     */
181
    private $lt = array(
182
        
183
    );
184
185
    /**
186
     * @property \MetadataV4\edm\TTwoChildrenExpressionType[] $and
187
     */
188
    private $and = array(
189
        
190
    );
191
192
    /**
193
     * @property \MetadataV4\edm\TTwoChildrenExpressionType[] $or
194
     */
195
    private $or = array(
196
        
197
    );
198
199
    /**
200
     * @property \MetadataV4\edm\TOneChildExpressionType[] $not
201
     */
202
    private $not = array(
203
        
204
    );
205
206
    /**
207
     * @property \MetadataV4\edm\TCastOrIsOfExpressionType[] $isOf
208
     */
209
    private $isOf = array(
210
        
211
    );
212
213
    /**
214
     * @property \MetadataV4\edm\TLabeledElementExpressionType[] $labeledElement
215
     */
216
    private $labeledElement = array(
217
        
218
    );
219
220
    /**
221
     * @property string[] $labeledElementReference
222
     */
223
    private $labeledElementReference = array(
224
        
225
    );
226
227
    /**
228
     * @property \MetadataV4\edm\Annotation[] $null
229
     */
230
    private $null = null;
231
232
    /**
233
     * @property string[] $navigationPropertyPath
234
     */
235
    private $navigationPropertyPath = array(
236
        
237
    );
238
239
    /**
240
     * @property string[] $path
241
     */
242
    private $path = array(
243
        
244
    );
245
246
    /**
247
     * @property string[] $propertyPath
248
     */
249
    private $propertyPath = array(
250
        
251
    );
252
253
    /**
254
     * @property \MetadataV4\edm\TRecordExpressionType[] $record
255
     */
256
    private $record = array(
257
        
258
    );
259
260
    /**
261
     * @property \MetadataV4\edm\TOneChildExpressionType[] $urlRef
262
     */
263
    private $urlRef = array(
264
        
265
    );
266
267
    /**
268
     * Gets as function
269
     *
270
     * @return string
271
     */
272
    public function getFunction()
273
    {
274
        return $this->function;
275
    }
276
277
    /**
278
     * Sets a new function
279
     *
280
     * @param string $function
281
     * @return self
282
     */
283
    public function setFunction($function)
284
    {
285
        $this->function = $function;
286
        return $this;
287
    }
288
289
    /**
290
     * Adds as annotation
291
     *
292
     * @return self
293
     * @param \MetadataV4\edm\Annotation $annotation
294
     */
295
    public function addToAnnotation(\MetadataV4\edm\Annotation $annotation)
296
    {
297
        $this->annotation[] = $annotation;
298
        return $this;
299
    }
300
301
    /**
302
     * isset annotation
303
     *
304
     * @param scalar $index
305
     * @return boolean
306
     */
307
    public function issetAnnotation($index)
308
    {
309
        return isset($this->annotation[$index]);
310
    }
311
312
    /**
313
     * unset annotation
314
     *
315
     * @param scalar $index
316
     * @return void
317
     */
318
    public function unsetAnnotation($index)
319
    {
320
        unset($this->annotation[$index]);
321
    }
322
323
    /**
324
     * Gets as annotation
325
     *
326
     * @return \MetadataV4\edm\Annotation[]
327
     */
328
    public function getAnnotation()
329
    {
330
        return $this->annotation;
331
    }
332
333
    /**
334
     * Sets a new annotation
335
     *
336
     * @param \MetadataV4\edm\Annotation[] $annotation
337
     * @return self
338
     */
339
    public function setAnnotation(array $annotation)
340
    {
341
        $this->annotation = $annotation;
342
        return $this;
343
    }
344
345
    /**
346
     * Adds as binary
347
     *
348
     * @return self
349
     * @param string $binary
350
     */
351
    public function addToBinary($binary)
352
    {
353
        $this->binary[] = $binary;
354
        return $this;
355
    }
356
357
    /**
358
     * isset binary
359
     *
360
     * @param scalar $index
361
     * @return boolean
362
     */
363
    public function issetBinary($index)
364
    {
365
        return isset($this->binary[$index]);
366
    }
367
368
    /**
369
     * unset binary
370
     *
371
     * @param scalar $index
372
     * @return void
373
     */
374
    public function unsetBinary($index)
375
    {
376
        unset($this->binary[$index]);
377
    }
378
379
    /**
380
     * Gets as binary
381
     *
382
     * @return string[]
383
     */
384
    public function getBinary()
385
    {
386
        return $this->binary;
387
    }
388
389
    /**
390
     * Sets a new binary
391
     *
392
     * @param string $binary
393
     * @return self
394
     */
395
    public function setBinary(array $binary)
396
    {
397
        $this->binary = $binary;
398
        return $this;
399
    }
400
401
    /**
402
     * Adds as bool
403
     *
404
     * @return self
405
     * @param boolean $bool
406
     */
407
    public function addToBool($bool)
408
    {
409
        $this->bool[] = $bool;
410
        return $this;
411
    }
412
413
    /**
414
     * isset bool
415
     *
416
     * @param scalar $index
417
     * @return boolean
418
     */
419
    public function issetBool($index)
420
    {
421
        return isset($this->bool[$index]);
422
    }
423
424
    /**
425
     * unset bool
426
     *
427
     * @param scalar $index
428
     * @return void
429
     */
430
    public function unsetBool($index)
431
    {
432
        unset($this->bool[$index]);
433
    }
434
435
    /**
436
     * Gets as bool
437
     *
438
     * @return boolean[]
439
     */
440
    public function getBool()
441
    {
442
        return $this->bool;
443
    }
444
445
    /**
446
     * Sets a new bool
447
     *
448
     * @param boolean $bool
449
     * @return self
450
     */
451
    public function setBool(array $bool)
452
    {
453
        $this->bool = $bool;
454
        return $this;
455
    }
456
457
    /**
458
     * Adds as date
459
     *
460
     * @return self
461
     * @param \DateTime $date
462
     */
463
    public function addToDate(\DateTime $date)
464
    {
465
        $this->date[] = $date;
466
        return $this;
467
    }
468
469
    /**
470
     * isset date
471
     *
472
     * @param scalar $index
473
     * @return boolean
474
     */
475
    public function issetDate($index)
476
    {
477
        return isset($this->date[$index]);
478
    }
479
480
    /**
481
     * unset date
482
     *
483
     * @param scalar $index
484
     * @return void
485
     */
486
    public function unsetDate($index)
487
    {
488
        unset($this->date[$index]);
489
    }
490
491
    /**
492
     * Gets as date
493
     *
494
     * @return \DateTime[]
495
     */
496
    public function getDate()
497
    {
498
        return $this->date;
499
    }
500
501
    /**
502
     * Sets a new date
503
     *
504
     * @param \DateTime $date
505
     * @return self
506
     */
507
    public function setDate(array $date)
508
    {
509
        $this->date = $date;
510
        return $this;
511
    }
512
513
    /**
514
     * Adds as dateTimeOffset
515
     *
516
     * @return self
517
     * @param \DateTime $dateTimeOffset
518
     */
519
    public function addToDateTimeOffset(\DateTime $dateTimeOffset)
520
    {
521
        $this->dateTimeOffset[] = $dateTimeOffset;
522
        return $this;
523
    }
524
525
    /**
526
     * isset dateTimeOffset
527
     *
528
     * @param scalar $index
529
     * @return boolean
530
     */
531
    public function issetDateTimeOffset($index)
532
    {
533
        return isset($this->dateTimeOffset[$index]);
534
    }
535
536
    /**
537
     * unset dateTimeOffset
538
     *
539
     * @param scalar $index
540
     * @return void
541
     */
542
    public function unsetDateTimeOffset($index)
543
    {
544
        unset($this->dateTimeOffset[$index]);
545
    }
546
547
    /**
548
     * Gets as dateTimeOffset
549
     *
550
     * @return \DateTime[]
551
     */
552
    public function getDateTimeOffset()
553
    {
554
        return $this->dateTimeOffset;
555
    }
556
557
    /**
558
     * Sets a new dateTimeOffset
559
     *
560
     * @param \DateTime $dateTimeOffset
561
     * @return self
562
     */
563
    public function setDateTimeOffset(array $dateTimeOffset)
564
    {
565
        $this->dateTimeOffset = $dateTimeOffset;
566
        return $this;
567
    }
568
569
    /**
570
     * Adds as decimal
571
     *
572
     * @return self
573
     * @param float $decimal
574
     */
575
    public function addToDecimal($decimal)
576
    {
577
        $this->decimal[] = $decimal;
578
        return $this;
579
    }
580
581
    /**
582
     * isset decimal
583
     *
584
     * @param scalar $index
585
     * @return boolean
586
     */
587
    public function issetDecimal($index)
588
    {
589
        return isset($this->decimal[$index]);
590
    }
591
592
    /**
593
     * unset decimal
594
     *
595
     * @param scalar $index
596
     * @return void
597
     */
598
    public function unsetDecimal($index)
599
    {
600
        unset($this->decimal[$index]);
601
    }
602
603
    /**
604
     * Gets as decimal
605
     *
606
     * @return float[]
607
     */
608
    public function getDecimal()
609
    {
610
        return $this->decimal;
611
    }
612
613
    /**
614
     * Sets a new decimal
615
     *
616
     * @param float $decimal
617
     * @return self
618
     */
619
    public function setDecimal(array $decimal)
620
    {
621
        $this->decimal = $decimal;
622
        return $this;
623
    }
624
625
    /**
626
     * Adds as duration
627
     *
628
     * @return self
629
     * @param \DateInterval $duration
630
     */
631
    public function addToDuration(\DateInterval $duration)
632
    {
633
        $this->duration[] = $duration;
634
        return $this;
635
    }
636
637
    /**
638
     * isset duration
639
     *
640
     * @param scalar $index
641
     * @return boolean
642
     */
643
    public function issetDuration($index)
644
    {
645
        return isset($this->duration[$index]);
646
    }
647
648
    /**
649
     * unset duration
650
     *
651
     * @param scalar $index
652
     * @return void
653
     */
654
    public function unsetDuration($index)
655
    {
656
        unset($this->duration[$index]);
657
    }
658
659
    /**
660
     * Gets as duration
661
     *
662
     * @return \DateInterval[]
663
     */
664
    public function getDuration()
665
    {
666
        return $this->duration;
667
    }
668
669
    /**
670
     * Sets a new duration
671
     *
672
     * @param \DateInterval $duration
673
     * @return self
674
     */
675
    public function setDuration(array $duration)
676
    {
677
        $this->duration = $duration;
678
        return $this;
679
    }
680
681
    /**
682
     * Adds as enumMember
683
     *
684
     * @return self
685
     * @param string $enumMember
686
     */
687
    public function addToEnumMember($enumMember)
688
    {
689
        $this->enumMember[] = $enumMember;
690
        return $this;
691
    }
692
693
    /**
694
     * isset enumMember
695
     *
696
     * @param scalar $index
697
     * @return boolean
698
     */
699
    public function issetEnumMember($index)
700
    {
701
        return isset($this->enumMember[$index]);
702
    }
703
704
    /**
705
     * unset enumMember
706
     *
707
     * @param scalar $index
708
     * @return void
709
     */
710
    public function unsetEnumMember($index)
711
    {
712
        unset($this->enumMember[$index]);
713
    }
714
715
    /**
716
     * Gets as enumMember
717
     *
718
     * @return string[]
719
     */
720
    public function getEnumMember()
721
    {
722
        return $this->enumMember;
723
    }
724
725
    /**
726
     * Sets a new enumMember
727
     *
728
     * @param string $enumMember
729
     * @return self
730
     */
731
    public function setEnumMember(array $enumMember)
732
    {
733
        $this->enumMember = $enumMember;
734
        return $this;
735
    }
736
737
    /**
738
     * Adds as float
739
     *
740
     * @return self
741
     * @param float $float
742
     */
743
    public function addToFloat($float)
744
    {
745
        $this->float[] = $float;
746
        return $this;
747
    }
748
749
    /**
750
     * isset float
751
     *
752
     * @param scalar $index
753
     * @return boolean
754
     */
755
    public function issetFloat($index)
756
    {
757
        return isset($this->float[$index]);
758
    }
759
760
    /**
761
     * unset float
762
     *
763
     * @param scalar $index
764
     * @return void
765
     */
766
    public function unsetFloat($index)
767
    {
768
        unset($this->float[$index]);
769
    }
770
771
    /**
772
     * Gets as float
773
     *
774
     * @return float[]
775
     */
776
    public function getFloat()
777
    {
778
        return $this->float;
779
    }
780
781
    /**
782
     * Sets a new float
783
     *
784
     * @param float $float
785
     * @return self
786
     */
787
    public function setFloat(array $float)
788
    {
789
        $this->float = $float;
790
        return $this;
791
    }
792
793
    /**
794
     * Adds as guid
795
     *
796
     * @return self
797
     * @param string $guid
798
     */
799
    public function addToGuid($guid)
800
    {
801
        $this->guid[] = $guid;
802
        return $this;
803
    }
804
805
    /**
806
     * isset guid
807
     *
808
     * @param scalar $index
809
     * @return boolean
810
     */
811
    public function issetGuid($index)
812
    {
813
        return isset($this->guid[$index]);
814
    }
815
816
    /**
817
     * unset guid
818
     *
819
     * @param scalar $index
820
     * @return void
821
     */
822
    public function unsetGuid($index)
823
    {
824
        unset($this->guid[$index]);
825
    }
826
827
    /**
828
     * Gets as guid
829
     *
830
     * @return string[]
831
     */
832
    public function getGuid()
833
    {
834
        return $this->guid;
835
    }
836
837
    /**
838
     * Sets a new guid
839
     *
840
     * @param string $guid
841
     * @return self
842
     */
843
    public function setGuid(array $guid)
844
    {
845
        $this->guid = $guid;
846
        return $this;
847
    }
848
849
    /**
850
     * Adds as int
851
     *
852
     * @return self
853
     * @param integer $int
854
     */
855
    public function addToInt($int)
856
    {
857
        $this->int[] = $int;
858
        return $this;
859
    }
860
861
    /**
862
     * isset int
863
     *
864
     * @param scalar $index
865
     * @return boolean
866
     */
867
    public function issetInt($index)
868
    {
869
        return isset($this->int[$index]);
870
    }
871
872
    /**
873
     * unset int
874
     *
875
     * @param scalar $index
876
     * @return void
877
     */
878
    public function unsetInt($index)
879
    {
880
        unset($this->int[$index]);
881
    }
882
883
    /**
884
     * Gets as int
885
     *
886
     * @return integer[]
887
     */
888
    public function getInt()
889
    {
890
        return $this->int;
891
    }
892
893
    /**
894
     * Sets a new int
895
     *
896
     * @param integer $int
897
     * @return self
898
     */
899
    public function setInt(array $int)
900
    {
901
        $this->int = $int;
902
        return $this;
903
    }
904
905
    /**
906
     * Adds as string
907
     *
908
     * @return self
909
     * @param string $string
910
     */
911
    public function addToString($string)
912
    {
913
        $this->string[] = $string;
914
        return $this;
915
    }
916
917
    /**
918
     * isset string
919
     *
920
     * @param scalar $index
921
     * @return boolean
922
     */
923
    public function issetString($index)
924
    {
925
        return isset($this->string[$index]);
926
    }
927
928
    /**
929
     * unset string
930
     *
931
     * @param scalar $index
932
     * @return void
933
     */
934
    public function unsetString($index)
935
    {
936
        unset($this->string[$index]);
937
    }
938
939
    /**
940
     * Gets as string
941
     *
942
     * @return string[]
943
     */
944
    public function getString()
945
    {
946
        return $this->string;
947
    }
948
949
    /**
950
     * Sets a new string
951
     *
952
     * @param string $string
953
     * @return self
954
     */
955
    public function setString(array $string)
956
    {
957
        $this->string = $string;
958
        return $this;
959
    }
960
961
    /**
962
     * Adds as timeOfDay
963
     *
964
     * @return self
965
     * @param \DateTime $timeOfDay
966
     */
967
    public function addToTimeOfDay(\DateTime $timeOfDay)
968
    {
969
        $this->timeOfDay[] = $timeOfDay;
970
        return $this;
971
    }
972
973
    /**
974
     * isset timeOfDay
975
     *
976
     * @param scalar $index
977
     * @return boolean
978
     */
979
    public function issetTimeOfDay($index)
980
    {
981
        return isset($this->timeOfDay[$index]);
982
    }
983
984
    /**
985
     * unset timeOfDay
986
     *
987
     * @param scalar $index
988
     * @return void
989
     */
990
    public function unsetTimeOfDay($index)
991
    {
992
        unset($this->timeOfDay[$index]);
993
    }
994
995
    /**
996
     * Gets as timeOfDay
997
     *
998
     * @return \DateTime[]
999
     */
1000
    public function getTimeOfDay()
1001
    {
1002
        return $this->timeOfDay;
1003
    }
1004
1005
    /**
1006
     * Sets a new timeOfDay
1007
     *
1008
     * @param \DateTime $timeOfDay
1009
     * @return self
1010
     */
1011
    public function setTimeOfDay(array $timeOfDay)
1012
    {
1013
        $this->timeOfDay = $timeOfDay;
1014
        return $this;
1015
    }
1016
1017
    /**
1018
     * Adds as annotationPath
1019
     *
1020
     * @return self
1021
     * @param string $annotationPath
1022
     */
1023
    public function addToAnnotationPath($annotationPath)
1024
    {
1025
        $this->annotationPath[] = $annotationPath;
1026
        return $this;
1027
    }
1028
1029
    /**
1030
     * isset annotationPath
1031
     *
1032
     * @param scalar $index
1033
     * @return boolean
1034
     */
1035
    public function issetAnnotationPath($index)
1036
    {
1037
        return isset($this->annotationPath[$index]);
1038
    }
1039
1040
    /**
1041
     * unset annotationPath
1042
     *
1043
     * @param scalar $index
1044
     * @return void
1045
     */
1046
    public function unsetAnnotationPath($index)
1047
    {
1048
        unset($this->annotationPath[$index]);
1049
    }
1050
1051
    /**
1052
     * Gets as annotationPath
1053
     *
1054
     * @return string[]
1055
     */
1056
    public function getAnnotationPath()
1057
    {
1058
        return $this->annotationPath;
1059
    }
1060
1061
    /**
1062
     * Sets a new annotationPath
1063
     *
1064
     * @param string $annotationPath
1065
     * @return self
1066
     */
1067
    public function setAnnotationPath(array $annotationPath)
1068
    {
1069
        $this->annotationPath = $annotationPath;
1070
        return $this;
1071
    }
1072
1073
    /**
1074
     * Adds as apply
1075
     *
1076
     * @return self
1077
     * @param \MetadataV4\edm\TApplyExpressionType $apply
1078
     */
1079
    public function addToApply(\MetadataV4\edm\TApplyExpressionType $apply)
1080
    {
1081
        $this->apply[] = $apply;
1082
        return $this;
1083
    }
1084
1085
    /**
1086
     * isset apply
1087
     *
1088
     * @param scalar $index
1089
     * @return boolean
1090
     */
1091
    public function issetApply($index)
1092
    {
1093
        return isset($this->apply[$index]);
1094
    }
1095
1096
    /**
1097
     * unset apply
1098
     *
1099
     * @param scalar $index
1100
     * @return void
1101
     */
1102
    public function unsetApply($index)
1103
    {
1104
        unset($this->apply[$index]);
1105
    }
1106
1107
    /**
1108
     * Gets as apply
1109
     *
1110
     * @return \MetadataV4\edm\TApplyExpressionType[]
1111
     */
1112
    public function getApply()
1113
    {
1114
        return $this->apply;
1115
    }
1116
1117
    /**
1118
     * Sets a new apply
1119
     *
1120
     * @param \MetadataV4\edm\TApplyExpressionType[] $apply
1121
     * @return self
1122
     */
1123
    public function setApply(array $apply)
1124
    {
1125
        $this->apply = $apply;
1126
        return $this;
1127
    }
1128
1129
    /**
1130
     * Adds as cast
1131
     *
1132
     * @return self
1133
     * @param \MetadataV4\edm\TCastOrIsOfExpressionType $cast
1134
     */
1135
    public function addToCast(\MetadataV4\edm\TCastOrIsOfExpressionType $cast)
1136
    {
1137
        $this->cast[] = $cast;
1138
        return $this;
1139
    }
1140
1141
    /**
1142
     * isset cast
1143
     *
1144
     * @param scalar $index
1145
     * @return boolean
1146
     */
1147
    public function issetCast($index)
1148
    {
1149
        return isset($this->cast[$index]);
1150
    }
1151
1152
    /**
1153
     * unset cast
1154
     *
1155
     * @param scalar $index
1156
     * @return void
1157
     */
1158
    public function unsetCast($index)
1159
    {
1160
        unset($this->cast[$index]);
1161
    }
1162
1163
    /**
1164
     * Gets as cast
1165
     *
1166
     * @return \MetadataV4\edm\TCastOrIsOfExpressionType[]
1167
     */
1168
    public function getCast()
1169
    {
1170
        return $this->cast;
1171
    }
1172
1173
    /**
1174
     * Sets a new cast
1175
     *
1176
     * @param \MetadataV4\edm\TCastOrIsOfExpressionType[] $cast
1177
     * @return self
1178
     */
1179
    public function setCast(array $cast)
1180
    {
1181
        $this->cast = $cast;
1182
        return $this;
1183
    }
1184
1185
    /**
1186
     * Adds as collection
1187
     *
1188
     * @return self
1189
     * @param \MetadataV4\edm\TCollectionExpressionType $collection
1190
     */
1191
    public function addToCollection(\MetadataV4\edm\TCollectionExpressionType $collection)
1192
    {
1193
        $this->collection[] = $collection;
1194
        return $this;
1195
    }
1196
1197
    /**
1198
     * isset collection
1199
     *
1200
     * @param scalar $index
1201
     * @return boolean
1202
     */
1203
    public function issetCollection($index)
1204
    {
1205
        return isset($this->collection[$index]);
1206
    }
1207
1208
    /**
1209
     * unset collection
1210
     *
1211
     * @param scalar $index
1212
     * @return void
1213
     */
1214
    public function unsetCollection($index)
1215
    {
1216
        unset($this->collection[$index]);
1217
    }
1218
1219
    /**
1220
     * Gets as collection
1221
     *
1222
     * @return \MetadataV4\edm\TCollectionExpressionType[]
1223
     */
1224
    public function getCollection()
1225
    {
1226
        return $this->collection;
1227
    }
1228
1229
    /**
1230
     * Sets a new collection
1231
     *
1232
     * @param \MetadataV4\edm\TCollectionExpressionType[] $collection
1233
     * @return self
1234
     */
1235
    public function setCollection(array $collection)
1236
    {
1237
        $this->collection = $collection;
1238
        return $this;
1239
    }
1240
1241
    /**
1242
     * Adds as if
1243
     *
1244
     * @return self
1245
     * @param \MetadataV4\edm\TIfExpressionType $if
1246
     */
1247
    public function addToIf(\MetadataV4\edm\TIfExpressionType $if)
1248
    {
1249
        $this->if[] = $if;
1250
        return $this;
1251
    }
1252
1253
    /**
1254
     * isset if
1255
     *
1256
     * @param scalar $index
1257
     * @return boolean
1258
     */
1259
    public function issetIf($index)
1260
    {
1261
        return isset($this->if[$index]);
1262
    }
1263
1264
    /**
1265
     * unset if
1266
     *
1267
     * @param scalar $index
1268
     * @return void
1269
     */
1270
    public function unsetIf($index)
1271
    {
1272
        unset($this->if[$index]);
1273
    }
1274
1275
    /**
1276
     * Gets as if
1277
     *
1278
     * @return \MetadataV4\edm\TIfExpressionType[]
1279
     */
1280
    public function getIf()
1281
    {
1282
        return $this->if;
1283
    }
1284
1285
    /**
1286
     * Sets a new if
1287
     *
1288
     * @param \MetadataV4\edm\TIfExpressionType[] $if
1289
     * @return self
1290
     */
1291
    public function setIf(array $if)
1292
    {
1293
        $this->if = $if;
1294
        return $this;
1295
    }
1296
1297
    /**
1298
     * Adds as eq
1299
     *
1300
     * @return self
1301
     * @param \MetadataV4\edm\TTwoChildrenExpressionType $eq
1302
     */
1303
    public function addToEq(\MetadataV4\edm\TTwoChildrenExpressionType $eq)
1304
    {
1305
        $this->eq[] = $eq;
1306
        return $this;
1307
    }
1308
1309
    /**
1310
     * isset eq
1311
     *
1312
     * @param scalar $index
1313
     * @return boolean
1314
     */
1315
    public function issetEq($index)
1316
    {
1317
        return isset($this->eq[$index]);
1318
    }
1319
1320
    /**
1321
     * unset eq
1322
     *
1323
     * @param scalar $index
1324
     * @return void
1325
     */
1326
    public function unsetEq($index)
1327
    {
1328
        unset($this->eq[$index]);
1329
    }
1330
1331
    /**
1332
     * Gets as eq
1333
     *
1334
     * @return \MetadataV4\edm\TTwoChildrenExpressionType[]
1335
     */
1336
    public function getEq()
1337
    {
1338
        return $this->eq;
1339
    }
1340
1341
    /**
1342
     * Sets a new eq
1343
     *
1344
     * @param \MetadataV4\edm\TTwoChildrenExpressionType[] $eq
1345
     * @return self
1346
     */
1347
    public function setEq(array $eq)
1348
    {
1349
        $this->eq = $eq;
1350
        return $this;
1351
    }
1352
1353
    /**
1354
     * Adds as ne
1355
     *
1356
     * @return self
1357
     * @param \MetadataV4\edm\TTwoChildrenExpressionType $ne
1358
     */
1359
    public function addToNe(\MetadataV4\edm\TTwoChildrenExpressionType $ne)
1360
    {
1361
        $this->ne[] = $ne;
1362
        return $this;
1363
    }
1364
1365
    /**
1366
     * isset ne
1367
     *
1368
     * @param scalar $index
1369
     * @return boolean
1370
     */
1371
    public function issetNe($index)
1372
    {
1373
        return isset($this->ne[$index]);
1374
    }
1375
1376
    /**
1377
     * unset ne
1378
     *
1379
     * @param scalar $index
1380
     * @return void
1381
     */
1382
    public function unsetNe($index)
1383
    {
1384
        unset($this->ne[$index]);
1385
    }
1386
1387
    /**
1388
     * Gets as ne
1389
     *
1390
     * @return \MetadataV4\edm\TTwoChildrenExpressionType[]
1391
     */
1392
    public function getNe()
1393
    {
1394
        return $this->ne;
1395
    }
1396
1397
    /**
1398
     * Sets a new ne
1399
     *
1400
     * @param \MetadataV4\edm\TTwoChildrenExpressionType[] $ne
1401
     * @return self
1402
     */
1403
    public function setNe(array $ne)
1404
    {
1405
        $this->ne = $ne;
1406
        return $this;
1407
    }
1408
1409
    /**
1410
     * Adds as ge
1411
     *
1412
     * @return self
1413
     * @param \MetadataV4\edm\TTwoChildrenExpressionType $ge
1414
     */
1415
    public function addToGe(\MetadataV4\edm\TTwoChildrenExpressionType $ge)
1416
    {
1417
        $this->ge[] = $ge;
1418
        return $this;
1419
    }
1420
1421
    /**
1422
     * isset ge
1423
     *
1424
     * @param scalar $index
1425
     * @return boolean
1426
     */
1427
    public function issetGe($index)
1428
    {
1429
        return isset($this->ge[$index]);
1430
    }
1431
1432
    /**
1433
     * unset ge
1434
     *
1435
     * @param scalar $index
1436
     * @return void
1437
     */
1438
    public function unsetGe($index)
1439
    {
1440
        unset($this->ge[$index]);
1441
    }
1442
1443
    /**
1444
     * Gets as ge
1445
     *
1446
     * @return \MetadataV4\edm\TTwoChildrenExpressionType[]
1447
     */
1448
    public function getGe()
1449
    {
1450
        return $this->ge;
1451
    }
1452
1453
    /**
1454
     * Sets a new ge
1455
     *
1456
     * @param \MetadataV4\edm\TTwoChildrenExpressionType[] $ge
1457
     * @return self
1458
     */
1459
    public function setGe(array $ge)
1460
    {
1461
        $this->ge = $ge;
1462
        return $this;
1463
    }
1464
1465
    /**
1466
     * Adds as gt
1467
     *
1468
     * @return self
1469
     * @param \MetadataV4\edm\TTwoChildrenExpressionType $gt
1470
     */
1471
    public function addToGt(\MetadataV4\edm\TTwoChildrenExpressionType $gt)
1472
    {
1473
        $this->gt[] = $gt;
1474
        return $this;
1475
    }
1476
1477
    /**
1478
     * isset gt
1479
     *
1480
     * @param scalar $index
1481
     * @return boolean
1482
     */
1483
    public function issetGt($index)
1484
    {
1485
        return isset($this->gt[$index]);
1486
    }
1487
1488
    /**
1489
     * unset gt
1490
     *
1491
     * @param scalar $index
1492
     * @return void
1493
     */
1494
    public function unsetGt($index)
1495
    {
1496
        unset($this->gt[$index]);
1497
    }
1498
1499
    /**
1500
     * Gets as gt
1501
     *
1502
     * @return \MetadataV4\edm\TTwoChildrenExpressionType[]
1503
     */
1504
    public function getGt()
1505
    {
1506
        return $this->gt;
1507
    }
1508
1509
    /**
1510
     * Sets a new gt
1511
     *
1512
     * @param \MetadataV4\edm\TTwoChildrenExpressionType[] $gt
1513
     * @return self
1514
     */
1515
    public function setGt(array $gt)
1516
    {
1517
        $this->gt = $gt;
1518
        return $this;
1519
    }
1520
1521
    /**
1522
     * Adds as le
1523
     *
1524
     * @return self
1525
     * @param \MetadataV4\edm\TTwoChildrenExpressionType $le
1526
     */
1527
    public function addToLe(\MetadataV4\edm\TTwoChildrenExpressionType $le)
1528
    {
1529
        $this->le[] = $le;
1530
        return $this;
1531
    }
1532
1533
    /**
1534
     * isset le
1535
     *
1536
     * @param scalar $index
1537
     * @return boolean
1538
     */
1539
    public function issetLe($index)
1540
    {
1541
        return isset($this->le[$index]);
1542
    }
1543
1544
    /**
1545
     * unset le
1546
     *
1547
     * @param scalar $index
1548
     * @return void
1549
     */
1550
    public function unsetLe($index)
1551
    {
1552
        unset($this->le[$index]);
1553
    }
1554
1555
    /**
1556
     * Gets as le
1557
     *
1558
     * @return \MetadataV4\edm\TTwoChildrenExpressionType[]
1559
     */
1560
    public function getLe()
1561
    {
1562
        return $this->le;
1563
    }
1564
1565
    /**
1566
     * Sets a new le
1567
     *
1568
     * @param \MetadataV4\edm\TTwoChildrenExpressionType[] $le
1569
     * @return self
1570
     */
1571
    public function setLe(array $le)
1572
    {
1573
        $this->le = $le;
1574
        return $this;
1575
    }
1576
1577
    /**
1578
     * Adds as lt
1579
     *
1580
     * @return self
1581
     * @param \MetadataV4\edm\TTwoChildrenExpressionType $lt
1582
     */
1583
    public function addToLt(\MetadataV4\edm\TTwoChildrenExpressionType $lt)
1584
    {
1585
        $this->lt[] = $lt;
1586
        return $this;
1587
    }
1588
1589
    /**
1590
     * isset lt
1591
     *
1592
     * @param scalar $index
1593
     * @return boolean
1594
     */
1595
    public function issetLt($index)
1596
    {
1597
        return isset($this->lt[$index]);
1598
    }
1599
1600
    /**
1601
     * unset lt
1602
     *
1603
     * @param scalar $index
1604
     * @return void
1605
     */
1606
    public function unsetLt($index)
1607
    {
1608
        unset($this->lt[$index]);
1609
    }
1610
1611
    /**
1612
     * Gets as lt
1613
     *
1614
     * @return \MetadataV4\edm\TTwoChildrenExpressionType[]
1615
     */
1616
    public function getLt()
1617
    {
1618
        return $this->lt;
1619
    }
1620
1621
    /**
1622
     * Sets a new lt
1623
     *
1624
     * @param \MetadataV4\edm\TTwoChildrenExpressionType[] $lt
1625
     * @return self
1626
     */
1627
    public function setLt(array $lt)
1628
    {
1629
        $this->lt = $lt;
1630
        return $this;
1631
    }
1632
1633
    /**
1634
     * Adds as and
1635
     *
1636
     * @return self
1637
     * @param \MetadataV4\edm\TTwoChildrenExpressionType $and
1638
     */
1639
    public function addToAnd(\MetadataV4\edm\TTwoChildrenExpressionType $and)
1640
    {
1641
        $this->and[] = $and;
1642
        return $this;
1643
    }
1644
1645
    /**
1646
     * isset and
1647
     *
1648
     * @param scalar $index
1649
     * @return boolean
1650
     */
1651
    public function issetAnd($index)
1652
    {
1653
        return isset($this->and[$index]);
1654
    }
1655
1656
    /**
1657
     * unset and
1658
     *
1659
     * @param scalar $index
1660
     * @return void
1661
     */
1662
    public function unsetAnd($index)
1663
    {
1664
        unset($this->and[$index]);
1665
    }
1666
1667
    /**
1668
     * Gets as and
1669
     *
1670
     * @return \MetadataV4\edm\TTwoChildrenExpressionType[]
1671
     */
1672
    public function getAnd()
1673
    {
1674
        return $this->and;
1675
    }
1676
1677
    /**
1678
     * Sets a new and
1679
     *
1680
     * @param \MetadataV4\edm\TTwoChildrenExpressionType[] $and
1681
     * @return self
1682
     */
1683
    public function setAnd(array $and)
1684
    {
1685
        $this->and = $and;
1686
        return $this;
1687
    }
1688
1689
    /**
1690
     * Adds as or
1691
     *
1692
     * @return self
1693
     * @param \MetadataV4\edm\TTwoChildrenExpressionType $or
1694
     */
1695
    public function addToOr(\MetadataV4\edm\TTwoChildrenExpressionType $or)
1696
    {
1697
        $this->or[] = $or;
1698
        return $this;
1699
    }
1700
1701
    /**
1702
     * isset or
1703
     *
1704
     * @param scalar $index
1705
     * @return boolean
1706
     */
1707
    public function issetOr($index)
1708
    {
1709
        return isset($this->or[$index]);
1710
    }
1711
1712
    /**
1713
     * unset or
1714
     *
1715
     * @param scalar $index
1716
     * @return void
1717
     */
1718
    public function unsetOr($index)
1719
    {
1720
        unset($this->or[$index]);
1721
    }
1722
1723
    /**
1724
     * Gets as or
1725
     *
1726
     * @return \MetadataV4\edm\TTwoChildrenExpressionType[]
1727
     */
1728
    public function getOr()
1729
    {
1730
        return $this->or;
1731
    }
1732
1733
    /**
1734
     * Sets a new or
1735
     *
1736
     * @param \MetadataV4\edm\TTwoChildrenExpressionType[] $or
1737
     * @return self
1738
     */
1739
    public function setOr(array $or)
1740
    {
1741
        $this->or = $or;
1742
        return $this;
1743
    }
1744
1745
    /**
1746
     * Adds as not
1747
     *
1748
     * @return self
1749
     * @param \MetadataV4\edm\TOneChildExpressionType $not
1750
     */
1751
    public function addToNot(\MetadataV4\edm\TOneChildExpressionType $not)
1752
    {
1753
        $this->not[] = $not;
1754
        return $this;
1755
    }
1756
1757
    /**
1758
     * isset not
1759
     *
1760
     * @param scalar $index
1761
     * @return boolean
1762
     */
1763
    public function issetNot($index)
1764
    {
1765
        return isset($this->not[$index]);
1766
    }
1767
1768
    /**
1769
     * unset not
1770
     *
1771
     * @param scalar $index
1772
     * @return void
1773
     */
1774
    public function unsetNot($index)
1775
    {
1776
        unset($this->not[$index]);
1777
    }
1778
1779
    /**
1780
     * Gets as not
1781
     *
1782
     * @return \MetadataV4\edm\TOneChildExpressionType[]
1783
     */
1784
    public function getNot()
1785
    {
1786
        return $this->not;
1787
    }
1788
1789
    /**
1790
     * Sets a new not
1791
     *
1792
     * @param \MetadataV4\edm\TOneChildExpressionType[] $not
1793
     * @return self
1794
     */
1795
    public function setNot(array $not)
1796
    {
1797
        $this->not = $not;
1798
        return $this;
1799
    }
1800
1801
    /**
1802
     * Adds as isOf
1803
     *
1804
     * @return self
1805
     * @param \MetadataV4\edm\TCastOrIsOfExpressionType $isOf
1806
     */
1807
    public function addToIsOf(\MetadataV4\edm\TCastOrIsOfExpressionType $isOf)
1808
    {
1809
        $this->isOf[] = $isOf;
1810
        return $this;
1811
    }
1812
1813
    /**
1814
     * isset isOf
1815
     *
1816
     * @param scalar $index
1817
     * @return boolean
1818
     */
1819
    public function issetIsOf($index)
1820
    {
1821
        return isset($this->isOf[$index]);
1822
    }
1823
1824
    /**
1825
     * unset isOf
1826
     *
1827
     * @param scalar $index
1828
     * @return void
1829
     */
1830
    public function unsetIsOf($index)
1831
    {
1832
        unset($this->isOf[$index]);
1833
    }
1834
1835
    /**
1836
     * Gets as isOf
1837
     *
1838
     * @return \MetadataV4\edm\TCastOrIsOfExpressionType[]
1839
     */
1840
    public function getIsOf()
1841
    {
1842
        return $this->isOf;
1843
    }
1844
1845
    /**
1846
     * Sets a new isOf
1847
     *
1848
     * @param \MetadataV4\edm\TCastOrIsOfExpressionType[] $isOf
1849
     * @return self
1850
     */
1851
    public function setIsOf(array $isOf)
1852
    {
1853
        $this->isOf = $isOf;
1854
        return $this;
1855
    }
1856
1857
    /**
1858
     * Adds as labeledElement
1859
     *
1860
     * @return self
1861
     * @param \MetadataV4\edm\TLabeledElementExpressionType $labeledElement
1862
     */
1863
    public function addToLabeledElement(\MetadataV4\edm\TLabeledElementExpressionType $labeledElement)
1864
    {
1865
        $this->labeledElement[] = $labeledElement;
1866
        return $this;
1867
    }
1868
1869
    /**
1870
     * isset labeledElement
1871
     *
1872
     * @param scalar $index
1873
     * @return boolean
1874
     */
1875
    public function issetLabeledElement($index)
1876
    {
1877
        return isset($this->labeledElement[$index]);
1878
    }
1879
1880
    /**
1881
     * unset labeledElement
1882
     *
1883
     * @param scalar $index
1884
     * @return void
1885
     */
1886
    public function unsetLabeledElement($index)
1887
    {
1888
        unset($this->labeledElement[$index]);
1889
    }
1890
1891
    /**
1892
     * Gets as labeledElement
1893
     *
1894
     * @return \MetadataV4\edm\TLabeledElementExpressionType[]
1895
     */
1896
    public function getLabeledElement()
1897
    {
1898
        return $this->labeledElement;
1899
    }
1900
1901
    /**
1902
     * Sets a new labeledElement
1903
     *
1904
     * @param \MetadataV4\edm\TLabeledElementExpressionType[] $labeledElement
1905
     * @return self
1906
     */
1907
    public function setLabeledElement(array $labeledElement)
1908
    {
1909
        $this->labeledElement = $labeledElement;
1910
        return $this;
1911
    }
1912
1913
    /**
1914
     * Adds as labeledElementReference
1915
     *
1916
     * @return self
1917
     * @param string $labeledElementReference
1918
     */
1919
    public function addToLabeledElementReference($labeledElementReference)
1920
    {
1921
        $this->labeledElementReference[] = $labeledElementReference;
1922
        return $this;
1923
    }
1924
1925
    /**
1926
     * isset labeledElementReference
1927
     *
1928
     * @param scalar $index
1929
     * @return boolean
1930
     */
1931
    public function issetLabeledElementReference($index)
1932
    {
1933
        return isset($this->labeledElementReference[$index]);
1934
    }
1935
1936
    /**
1937
     * unset labeledElementReference
1938
     *
1939
     * @param scalar $index
1940
     * @return void
1941
     */
1942
    public function unsetLabeledElementReference($index)
1943
    {
1944
        unset($this->labeledElementReference[$index]);
1945
    }
1946
1947
    /**
1948
     * Gets as labeledElementReference
1949
     *
1950
     * @return string[]
1951
     */
1952
    public function getLabeledElementReference()
1953
    {
1954
        return $this->labeledElementReference;
1955
    }
1956
1957
    /**
1958
     * Sets a new labeledElementReference
1959
     *
1960
     * @param string $labeledElementReference
1961
     * @return self
1962
     */
1963
    public function setLabeledElementReference(array $labeledElementReference)
1964
    {
1965
        $this->labeledElementReference = $labeledElementReference;
1966
        return $this;
1967
    }
1968
1969
    /**
1970
     * Adds as annotation
1971
     *
1972
     * @return self
1973
     * @param \MetadataV4\edm\Annotation $annotation
1974
     */
1975
    public function addToNull(\MetadataV4\edm\Annotation $annotation)
1976
    {
1977
        $this->null[] = $annotation;
1978
        return $this;
1979
    }
1980
1981
    /**
1982
     * isset null
1983
     *
1984
     * @param scalar $index
1985
     * @return boolean
1986
     */
1987
    public function issetNull($index)
1988
    {
1989
        return isset($this->null[$index]);
1990
    }
1991
1992
    /**
1993
     * unset null
1994
     *
1995
     * @param scalar $index
1996
     * @return void
1997
     */
1998
    public function unsetNull($index)
1999
    {
2000
        unset($this->null[$index]);
2001
    }
2002
2003
    /**
2004
     * Gets as null
2005
     *
2006
     * @return \MetadataV4\edm\Annotation[]
2007
     */
2008
    public function getNull()
2009
    {
2010
        return $this->null;
2011
    }
2012
2013
    /**
2014
     * Sets a new null
2015
     *
2016
     * @param \MetadataV4\edm\Annotation[] $null
2017
     * @return self
2018
     */
2019
    public function setNull(array $null)
2020
    {
2021
        $this->null = $null;
2022
        return $this;
2023
    }
2024
2025
    /**
2026
     * Adds as navigationPropertyPath
2027
     *
2028
     * @return self
2029
     * @param string $navigationPropertyPath
2030
     */
2031
    public function addToNavigationPropertyPath($navigationPropertyPath)
2032
    {
2033
        $this->navigationPropertyPath[] = $navigationPropertyPath;
2034
        return $this;
2035
    }
2036
2037
    /**
2038
     * isset navigationPropertyPath
2039
     *
2040
     * @param scalar $index
2041
     * @return boolean
2042
     */
2043
    public function issetNavigationPropertyPath($index)
2044
    {
2045
        return isset($this->navigationPropertyPath[$index]);
2046
    }
2047
2048
    /**
2049
     * unset navigationPropertyPath
2050
     *
2051
     * @param scalar $index
2052
     * @return void
2053
     */
2054
    public function unsetNavigationPropertyPath($index)
2055
    {
2056
        unset($this->navigationPropertyPath[$index]);
2057
    }
2058
2059
    /**
2060
     * Gets as navigationPropertyPath
2061
     *
2062
     * @return string[]
2063
     */
2064
    public function getNavigationPropertyPath()
2065
    {
2066
        return $this->navigationPropertyPath;
2067
    }
2068
2069
    /**
2070
     * Sets a new navigationPropertyPath
2071
     *
2072
     * @param string $navigationPropertyPath
2073
     * @return self
2074
     */
2075
    public function setNavigationPropertyPath(array $navigationPropertyPath)
2076
    {
2077
        $this->navigationPropertyPath = $navigationPropertyPath;
2078
        return $this;
2079
    }
2080
2081
    /**
2082
     * Adds as path
2083
     *
2084
     * @return self
2085
     * @param string $path
2086
     */
2087
    public function addToPath($path)
2088
    {
2089
        $this->path[] = $path;
2090
        return $this;
2091
    }
2092
2093
    /**
2094
     * isset path
2095
     *
2096
     * @param scalar $index
2097
     * @return boolean
2098
     */
2099
    public function issetPath($index)
2100
    {
2101
        return isset($this->path[$index]);
2102
    }
2103
2104
    /**
2105
     * unset path
2106
     *
2107
     * @param scalar $index
2108
     * @return void
2109
     */
2110
    public function unsetPath($index)
2111
    {
2112
        unset($this->path[$index]);
2113
    }
2114
2115
    /**
2116
     * Gets as path
2117
     *
2118
     * @return string[]
2119
     */
2120
    public function getPath()
2121
    {
2122
        return $this->path;
2123
    }
2124
2125
    /**
2126
     * Sets a new path
2127
     *
2128
     * @param string $path
2129
     * @return self
2130
     */
2131
    public function setPath(array $path)
2132
    {
2133
        $this->path = $path;
2134
        return $this;
2135
    }
2136
2137
    /**
2138
     * Adds as propertyPath
2139
     *
2140
     * @return self
2141
     * @param string $propertyPath
2142
     */
2143
    public function addToPropertyPath($propertyPath)
2144
    {
2145
        $this->propertyPath[] = $propertyPath;
2146
        return $this;
2147
    }
2148
2149
    /**
2150
     * isset propertyPath
2151
     *
2152
     * @param scalar $index
2153
     * @return boolean
2154
     */
2155
    public function issetPropertyPath($index)
2156
    {
2157
        return isset($this->propertyPath[$index]);
2158
    }
2159
2160
    /**
2161
     * unset propertyPath
2162
     *
2163
     * @param scalar $index
2164
     * @return void
2165
     */
2166
    public function unsetPropertyPath($index)
2167
    {
2168
        unset($this->propertyPath[$index]);
2169
    }
2170
2171
    /**
2172
     * Gets as propertyPath
2173
     *
2174
     * @return string[]
2175
     */
2176
    public function getPropertyPath()
2177
    {
2178
        return $this->propertyPath;
2179
    }
2180
2181
    /**
2182
     * Sets a new propertyPath
2183
     *
2184
     * @param string $propertyPath
2185
     * @return self
2186
     */
2187
    public function setPropertyPath(array $propertyPath)
2188
    {
2189
        $this->propertyPath = $propertyPath;
2190
        return $this;
2191
    }
2192
2193
    /**
2194
     * Adds as record
2195
     *
2196
     * @return self
2197
     * @param \MetadataV4\edm\TRecordExpressionType $record
2198
     */
2199
    public function addToRecord(\MetadataV4\edm\TRecordExpressionType $record)
2200
    {
2201
        $this->record[] = $record;
2202
        return $this;
2203
    }
2204
2205
    /**
2206
     * isset record
2207
     *
2208
     * @param scalar $index
2209
     * @return boolean
2210
     */
2211
    public function issetRecord($index)
2212
    {
2213
        return isset($this->record[$index]);
2214
    }
2215
2216
    /**
2217
     * unset record
2218
     *
2219
     * @param scalar $index
2220
     * @return void
2221
     */
2222
    public function unsetRecord($index)
2223
    {
2224
        unset($this->record[$index]);
2225
    }
2226
2227
    /**
2228
     * Gets as record
2229
     *
2230
     * @return \MetadataV4\edm\TRecordExpressionType[]
2231
     */
2232
    public function getRecord()
2233
    {
2234
        return $this->record;
2235
    }
2236
2237
    /**
2238
     * Sets a new record
2239
     *
2240
     * @param \MetadataV4\edm\TRecordExpressionType[] $record
2241
     * @return self
2242
     */
2243
    public function setRecord(array $record)
2244
    {
2245
        $this->record = $record;
2246
        return $this;
2247
    }
2248
2249
    /**
2250
     * Adds as urlRef
2251
     *
2252
     * @return self
2253
     * @param \MetadataV4\edm\TOneChildExpressionType $urlRef
2254
     */
2255
    public function addToUrlRef(\MetadataV4\edm\TOneChildExpressionType $urlRef)
2256
    {
2257
        $this->urlRef[] = $urlRef;
2258
        return $this;
2259
    }
2260
2261
    /**
2262
     * isset urlRef
2263
     *
2264
     * @param scalar $index
2265
     * @return boolean
2266
     */
2267
    public function issetUrlRef($index)
2268
    {
2269
        return isset($this->urlRef[$index]);
2270
    }
2271
2272
    /**
2273
     * unset urlRef
2274
     *
2275
     * @param scalar $index
2276
     * @return void
2277
     */
2278
    public function unsetUrlRef($index)
2279
    {
2280
        unset($this->urlRef[$index]);
2281
    }
2282
2283
    /**
2284
     * Gets as urlRef
2285
     *
2286
     * @return \MetadataV4\edm\TOneChildExpressionType[]
2287
     */
2288
    public function getUrlRef()
2289
    {
2290
        return $this->urlRef;
2291
    }
2292
2293
    /**
2294
     * Sets a new urlRef
2295
     *
2296
     * @param \MetadataV4\edm\TOneChildExpressionType[] $urlRef
2297
     * @return self
2298
     */
2299
    public function setUrlRef(array $urlRef)
2300
    {
2301
        $this->urlRef = $urlRef;
2302
        return $this;
2303
    }
2304
}
2305