OptionalGetElement - 15 vs 18#
Next section compares an older to a newer version of the same operator after both definition are converted into markdown text. Green means an addition to the newer version, red means a deletion. Anything else is unchanged.
OptionalGetElement15 → OptionalGetElement18
RENAMED
@@ -1 +1 @@
|
|
1
|
+
Outputs the element in the optional-type input. It is an error if the input value does not have an element
|
2
|
+
and the behavior is undefined in this case.
|
1
|
-
If the input is a tensor or sequence type, it returns the input.
|
2
|
-
If the input is an optional type, it outputs the element in the input.
|
3
|
-
It is an error if the input is an empty optional-type (i.e. does not have an element) and the behavior is undefined in this case.
|
4
3
|
**Inputs**
|
5
4
|
* **input** (heterogeneous) - **O**:
|
6
5
|
The optional input.
|
7
6
|
**Outputs**
|
8
7
|
* **output** (heterogeneous) - **V**:
|
9
8
|
Output element in the optional input.
|
10
9
|
**Type Constraints**
|
11
10
|
* **O** in (
|
12
11
|
optional(seq(tensor(bool))),
|
13
12
|
optional(seq(tensor(complex128))),
|
14
13
|
optional(seq(tensor(complex64))),
|
15
14
|
optional(seq(tensor(double))),
|
16
15
|
optional(seq(tensor(float))),
|
17
16
|
optional(seq(tensor(float16))),
|
18
17
|
optional(seq(tensor(int16))),
|
19
18
|
optional(seq(tensor(int32))),
|
20
19
|
optional(seq(tensor(int64))),
|
21
20
|
optional(seq(tensor(int8))),
|
22
21
|
optional(seq(tensor(string))),
|
23
22
|
optional(seq(tensor(uint16))),
|
24
23
|
optional(seq(tensor(uint32))),
|
25
24
|
optional(seq(tensor(uint64))),
|
26
25
|
optional(seq(tensor(uint8))),
|
27
26
|
optional(tensor(bool)),
|
28
27
|
optional(tensor(complex128)),
|
29
28
|
optional(tensor(complex64)),
|
30
29
|
optional(tensor(double)),
|
31
30
|
optional(tensor(float)),
|
32
31
|
optional(tensor(float16)),
|
33
32
|
optional(tensor(int16)),
|
34
33
|
optional(tensor(int32)),
|
35
34
|
optional(tensor(int64)),
|
36
35
|
optional(tensor(int8)),
|
37
36
|
optional(tensor(string)),
|
38
37
|
optional(tensor(uint16)),
|
39
38
|
optional(tensor(uint32)),
|
40
39
|
optional(tensor(uint64)),
|
41
|
-
optional(tensor(uint8))
|
40
|
+
optional(tensor(uint8))
|
42
|
-
seq(tensor(bool)),
|
43
|
-
seq(tensor(complex128)),
|
44
|
-
seq(tensor(complex64)),
|
45
|
-
seq(tensor(double)),
|
46
|
-
seq(tensor(float)),
|
47
|
-
seq(tensor(float16)),
|
48
|
-
seq(tensor(int16)),
|
49
|
-
seq(tensor(int32)),
|
50
|
-
seq(tensor(int64)),
|
51
|
-
seq(tensor(int8)),
|
52
|
-
seq(tensor(string)),
|
53
|
-
seq(tensor(uint16)),
|
54
|
-
seq(tensor(uint32)),
|
55
|
-
seq(tensor(uint64)),
|
56
|
-
seq(tensor(uint8)),
|
57
|
-
tensor(bool),
|
58
|
-
tensor(complex128),
|
59
|
-
tensor(complex64),
|
60
|
-
tensor(double),
|
61
|
-
tensor(float),
|
62
|
-
tensor(float16),
|
63
|
-
tensor(int16),
|
64
|
-
tensor(int32),
|
65
|
-
tensor(int64),
|
66
|
-
tensor(int8),
|
67
|
-
tensor(string),
|
68
|
-
tensor(uint16),
|
69
|
-
tensor(uint32),
|
70
|
-
tensor(uint64),
|
71
|
-
tensor(uint8)
|
72
41
|
):
|
73
42
|
Constrain input type to optional tensor and optional sequence types.
|
74
43
|
* **V** in (
|
75
44
|
seq(tensor(bool)),
|
76
45
|
seq(tensor(complex128)),
|
77
46
|
seq(tensor(complex64)),
|
78
47
|
seq(tensor(double)),
|
79
48
|
seq(tensor(float)),
|
80
49
|
seq(tensor(float16)),
|
81
50
|
seq(tensor(int16)),
|
82
51
|
seq(tensor(int32)),
|
83
52
|
seq(tensor(int64)),
|
84
53
|
seq(tensor(int8)),
|
85
54
|
seq(tensor(string)),
|
86
55
|
seq(tensor(uint16)),
|
87
56
|
seq(tensor(uint32)),
|
88
57
|
seq(tensor(uint64)),
|
89
58
|
seq(tensor(uint8)),
|
90
59
|
tensor(bool),
|
91
60
|
tensor(complex128),
|
92
61
|
tensor(complex64),
|
93
62
|
tensor(double),
|
94
63
|
tensor(float),
|
95
64
|
tensor(float16),
|
96
65
|
tensor(int16),
|
97
66
|
tensor(int32),
|
98
67
|
tensor(int64),
|
99
68
|
tensor(int8),
|
100
69
|
tensor(string),
|
101
70
|
tensor(uint16),
|
102
71
|
tensor(uint32),
|
103
72
|
tensor(uint64),
|
104
73
|
tensor(uint8)
|
105
74
|
):
|
106
75
|
Constrain output type to all tensor or sequence types.
|