File: SimpleExpressions.test

package info (click to toggle)
swiftlang 6.0.3-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 2,519,992 kB
  • sloc: cpp: 9,107,863; ansic: 2,040,022; asm: 1,135,751; python: 296,500; objc: 82,456; f90: 60,502; lisp: 34,951; pascal: 19,946; sh: 18,133; perl: 7,482; ml: 4,937; javascript: 4,117; makefile: 3,840; awk: 3,535; xml: 914; fortran: 619; cs: 573; ruby: 573
file content (80 lines) | stat: -rw-r--r-- 1,974 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
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
// Test that we can define and use basic functions/expressions in the REPL.
// Note: All of this should work on all supported platforms.
// REQUIRES: swift

// RUN: %lldb --repl < %s | FileCheck %s

type(of: 1)
// CHECK: $R0: Int.Type = Int

func foo_concat(_ name: String) -> String {
  let c = name + "::" + name
  return c
}
foo_concat("foo")
// CHECK-NEXT: $R1: String = "foo::foo"

3 + 2
// CHECK-NEXT: $R2: Int = 5

$R2 + 5
// CHECK-NEXT: $R3: Int = 10

var names = [ "Chris", "Alex", "Ewa", "Barry", "Daniella" ]
// CHECK: names: [String] = 5 values {
// CHECK-NEXT:   [0] = "Chris"
// CHECK-NEXT:   [1] = "Alex"
// CHECK-NEXT:   [2] = "Ewa"
// CHECK-NEXT:   [3] = "Barry"
// CHECK-NEXT:   [4] = "Daniella"
// CHECK-NEXT: }

names.sort {$0 < $1}
names
// CHECK: $R4: [String] = 5 values {
// CHECK-NEXT:   [0] = "Alex"
// CHECK-NEXT:   [1] = "Barry"
// CHECK-NEXT:   [2] = "Chris"
// CHECK-NEXT:   [3] = "Daniella"
// CHECK-NEXT:   [4] = "Ewa"
// CHECK-NEXT: }

Array(names.lazy.reversed())
// CHECK: $R5: [ReversedCollection<LazySequence<[String]>>.Element] = 5 values {
// CHECK-NEXT:   [0] = "Ewa"
// CHECK-NEXT:   [1] = "Daniella"
// CHECK-NEXT:   [2] = "Chris"
// CHECK-NEXT:   [3] = "Barry"
// CHECK-NEXT:   [4] = "Alex"
// CHECK-NEXT: }

[[1,2,3,4],[1,2,3],[1,2],[],[1]]
// CHECK: $R6: {{\[\[Int\]\]}} = 5 values {
// CHECK-NEXT:   [0] = 4 values {
// CHECK-NEXT:     [0] = 1
// CHECK-NEXT:     [1] = 2
// CHECK-NEXT:     [2] = 3
// CHECK-NEXT:     [3] = 4
// CHECK-NEXT:   }
// CHECK-NEXT:   [1] = 3 values {
// CHECK-NEXT:     [0] = 1
// CHECK-NEXT:     [1] = 2
// CHECK-NEXT:     [2] = 3
// CHECK-NEXT:   }
// CHECK-NEXT:   [2] = 2 values {
// CHECK-NEXT:     [0] = 1
// CHECK-NEXT:     [1] = 2
// CHECK-NEXT:   }
// CHECK-NEXT:   [3] = 0 values
// CHECK-NEXT:   [4] = 1 value {
// CHECK-NEXT:     [0] = 1
// CHECK-NEXT:   }
// CHECK-NEXT: }

let some_int = 1
some_int
// CHECK: $R7: Int = 1

let some_str = "Hello"
some_str
// CHECK: $R8: String = "Hello"