cuelang.org/go@v0.10.1/cue/testdata/builtins/intdiv.txtar (about) 1 -- in.cue -- 2 quo1: quo(5, 2) // 2 3 quo2: quo(5, -2) // -2 4 quo3: quo(-5, 2) // -2 5 quo4: quo(-5, -2) // 2 6 7 quoDivByZero: quo(2, 0) 8 9 quoTypeError1: quo(2.0, 1) 10 quoTypeError2: quo(2, 1.0) 11 12 rem1: rem(5, 2) // 1 13 rem2: rem(5, -2) // 1 14 rem3: rem(-5, 2) // -1 15 rem4: rem(-5, -2) // -1 16 17 remDivByZero: rem(2, 0) 18 19 remTypeError1: rem(2.0, 1) 20 remTypeError2: rem(2, 1.0) 21 22 div1: div(5, 2) // 2 23 div2: div(5, -2) // -2 24 div3: div(-5, 2) // -3 25 div4: div(-5, -2) // 3 26 27 divDivByZero: div(2, 0) 28 29 divTypeError1: div(2.0, 1) 30 divTypeError2: div(2, 1.0) 31 32 mod1: mod(5, 2) // 1 33 mod2: mod(5, -2) // 1 34 mod3: mod(-5, 2) // 1 35 mod4: mod(-5, -2) // 1 36 37 modDivByZero: mod(2, 0) 38 39 modTypeError1: mod(2.0, 1) 40 modTypeError2: mod(2, 1.0) 41 -- out/eval/stats -- 42 Leaks: 0 43 Freed: 29 44 Reused: 27 45 Allocs: 2 46 Retain: 0 47 48 Unifications: 29 49 Conjuncts: 29 50 Disjuncts: 29 51 -- out/eval -- 52 Errors: 53 quoDivByZero: division by zero: 54 ./in.cue:6:15 55 quoTypeError1: cannot use 2.0 (type float) as int in argument 1 to quo: 56 ./in.cue:8:20 57 quoTypeError2: cannot use 1.0 (type float) as int in argument 2 to quo: 58 ./in.cue:9:23 59 remDivByZero: division by zero: 60 ./in.cue:16:15 61 remTypeError1: cannot use 2.0 (type float) as int in argument 1 to rem: 62 ./in.cue:18:20 63 remTypeError2: cannot use 1.0 (type float) as int in argument 2 to rem: 64 ./in.cue:19:23 65 divDivByZero: division by zero: 66 ./in.cue:26:15 67 divTypeError1: cannot use 2.0 (type float) as int in argument 1 to div: 68 ./in.cue:28:20 69 divTypeError2: cannot use 1.0 (type float) as int in argument 2 to div: 70 ./in.cue:29:23 71 modDivByZero: division by zero: 72 ./in.cue:36:15 73 modTypeError1: cannot use 2.0 (type float) as int in argument 1 to mod: 74 ./in.cue:38:20 75 modTypeError2: cannot use 1.0 (type float) as int in argument 2 to mod: 76 ./in.cue:39:23 77 78 Result: 79 (_|_){ 80 // [eval] 81 quo1: (int){ 2 } 82 quo2: (int){ -2 } 83 quo3: (int){ -2 } 84 quo4: (int){ 2 } 85 quoDivByZero: (_|_){ 86 // [eval] quoDivByZero: division by zero: 87 // ./in.cue:6:15 88 } 89 quoTypeError1: (_|_){ 90 // [eval] quoTypeError1: cannot use 2.0 (type float) as int in argument 1 to quo: 91 // ./in.cue:8:20 92 } 93 quoTypeError2: (_|_){ 94 // [eval] quoTypeError2: cannot use 1.0 (type float) as int in argument 2 to quo: 95 // ./in.cue:9:23 96 } 97 rem1: (int){ 1 } 98 rem2: (int){ 1 } 99 rem3: (int){ -1 } 100 rem4: (int){ -1 } 101 remDivByZero: (_|_){ 102 // [eval] remDivByZero: division by zero: 103 // ./in.cue:16:15 104 } 105 remTypeError1: (_|_){ 106 // [eval] remTypeError1: cannot use 2.0 (type float) as int in argument 1 to rem: 107 // ./in.cue:18:20 108 } 109 remTypeError2: (_|_){ 110 // [eval] remTypeError2: cannot use 1.0 (type float) as int in argument 2 to rem: 111 // ./in.cue:19:23 112 } 113 div1: (int){ 2 } 114 div2: (int){ -2 } 115 div3: (int){ -3 } 116 div4: (int){ 3 } 117 divDivByZero: (_|_){ 118 // [eval] divDivByZero: division by zero: 119 // ./in.cue:26:15 120 } 121 divTypeError1: (_|_){ 122 // [eval] divTypeError1: cannot use 2.0 (type float) as int in argument 1 to div: 123 // ./in.cue:28:20 124 } 125 divTypeError2: (_|_){ 126 // [eval] divTypeError2: cannot use 1.0 (type float) as int in argument 2 to div: 127 // ./in.cue:29:23 128 } 129 mod1: (int){ 1 } 130 mod2: (int){ 1 } 131 mod3: (int){ 1 } 132 mod4: (int){ 1 } 133 modDivByZero: (_|_){ 134 // [eval] modDivByZero: division by zero: 135 // ./in.cue:36:15 136 } 137 modTypeError1: (_|_){ 138 // [eval] modTypeError1: cannot use 2.0 (type float) as int in argument 1 to mod: 139 // ./in.cue:38:20 140 } 141 modTypeError2: (_|_){ 142 // [eval] modTypeError2: cannot use 1.0 (type float) as int in argument 2 to mod: 143 // ./in.cue:39:23 144 } 145 } 146 -- out/compile -- 147 --- in.cue 148 { 149 quo1: quo(5, 2) 150 quo2: quo(5, -2) 151 quo3: quo(-5, 2) 152 quo4: quo(-5, -2) 153 quoDivByZero: quo(2, 0) 154 quoTypeError1: quo(2.0, 1) 155 quoTypeError2: quo(2, 1.0) 156 rem1: rem(5, 2) 157 rem2: rem(5, -2) 158 rem3: rem(-5, 2) 159 rem4: rem(-5, -2) 160 remDivByZero: rem(2, 0) 161 remTypeError1: rem(2.0, 1) 162 remTypeError2: rem(2, 1.0) 163 div1: div(5, 2) 164 div2: div(5, -2) 165 div3: div(-5, 2) 166 div4: div(-5, -2) 167 divDivByZero: div(2, 0) 168 divTypeError1: div(2.0, 1) 169 divTypeError2: div(2, 1.0) 170 mod1: mod(5, 2) 171 mod2: mod(5, -2) 172 mod3: mod(-5, 2) 173 mod4: mod(-5, -2) 174 modDivByZero: mod(2, 0) 175 modTypeError1: mod(2.0, 1) 176 modTypeError2: mod(2, 1.0) 177 }