File: bool

package info (click to toggle)
bpftrace 0.24.1-1.1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 10,496 kB
  • sloc: cpp: 60,982; ansic: 10,952; python: 953; yacc: 665; sh: 536; lex: 295; makefile: 22
file content (65 lines) | stat: -rw-r--r-- 1,568 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
NAME bool values
PROG begin { print((true, false));  }
EXPECT (true, false)
TIMEOUT 1

NAME bool in conditional
PROG begin { if (true) { print(1); } if (false) { print(2); }  }
EXPECT 1
EXPECT_NONE 2
TIMEOUT 1

NAME bool as map keys and values
PROG begin { @a[true] = false;  }
EXPECT @a[true]: false
TIMEOUT 1

NAME bool as a variable
PROG begin { $b = true; $c = false; print(($b, $c));  }
EXPECT (true, false)

NAME cast int to bool
PROG begin{ print(((bool)1, (bool)0)); exit(); }
EXPECT (true, false)
TIMEOUT 1

NAME cast string to bool
PROG begin{ print(((bool)"hello", (bool)"")); exit(); }
EXPECT (true, false)
TIMEOUT 1

NAME cast ptr to bool
PROG begin { $a = (int64*)0; $b = (int64*)1; print(((bool)$b, (bool)$a));  }
EXPECT (true, false)
TIMEOUT 1

NAME cast castable map to bool
PROG begin{ @a = count(); @b = sum(0); print(((bool)@a, (bool)@b)); exit(); }
EXPECT (true, false)
TIMEOUT 1

NAME cast bool to int
PROG begin{ print(((int64)true, (int64)false)); exit(); }
EXPECT (1, 0)
TIMEOUT 1

NAME bool array
PROG begin { @a = (bool[2])(uint16)1;  }
EXPECT @a: [true,false]
TIMEOUT 1

NAME bool logical not
PROG begin{ $x = 0; print((!0, !10, !$x)); exit(); }
EXPECT (true, false, true)
TIMEOUT 1

NAME bool in resized tuples
PROG begin { @a[false, 1, true] = 1; @a[true, (int32)2, false] = 2;  }
EXPECT @a[false, 1, true]: 1
EXPECT @a[true, 2, false]: 2
TIMEOUT 1

NAME complex bool logical
PROG BEGIN { $a = 100000; $b = 0; $c = $a > $b; $d = $a && $b; $e = $c || $d; $f = (uint64)$c; print(($c, $d, $e, $f)); }
EXPECT (true, false, true, 1)
TIMEOUT 1