File: complete_accessor.swift

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 (126 lines) | stat: -rw-r--r-- 4,285 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
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
// RUN: %batch-code-completion

// WITH_GETSET: Keyword/None:                       get; name=get
// WITH_GETSET: Keyword/None:                       set; name=set
// WITH_GETSET: Keyword/None:                       init; name=init
// NO_GETSET-NOT: get
// NO_GETSET-NOT: set

// WITH_OBSERVER: Keyword/None:                       willSet; name=willSet
// WITH_OBSERVER: Keyword/None:                       didSet; name=didSet
// NO_OBSERVER-NOT: willSet
// NO_OBSERVER-NOT: didSet

// WITH_GLOBAL: Decl[GlobalVar]/CurrModule{{(/TypeRelation\[Convertible\])?}}: globalValue[#String#];
// NO_GLOBAL-NOT: globalValue;

// WITH_SELF: Decl[LocalVar]/Local:               self[#{{.+}}#]; name=self
// NO_SELF-NOT: self

var globalValue: String

var something1: String = 1 {
  #^GLOBAL_FIRST?check=WITH_GLOBAL;check=NO_SELF;check=WITH_GETSET;check=WITH_OBSERVER^#
  willSet {}
}

var something2: String {
  get {}
  #^GLOBAL_SECOND?check=NO_GLOBAL;check=NO_SELF;check=WITH_GETSET;check=WITH_OBSERVER^#
}

func testLocal() {
  var something3: String = 1 {
    #^LOCAL_FIRST?check=WITH_GLOBAL;check=NO_SELF;check=WITH_GETSET;check=WITH_OBSERVER^#
    willSet {}
  }

  var something4: String {
    get {}
    #^LOCAL_SECOND?check=NO_GLOBAL;check=NO_SELF;check=WITH_GETSET;check=WITH_OBSERVER^#
  }
}

protocol SomeProto {
  var prop1: Int {
    #^PROTOCOL_PROPERTY_FIRST?check=NO_GLOBAL;check=NO_SELF;check=WITH_GETSET;check=NO_OBSERVER^#
  }
  var prop2: Int {
    get #^PROTOCOL_PROPERTY_SECOND?check=NO_GLOBAL;check=NO_SELF;check=WITH_GETSET;check=NO_OBSERVER^#
  }
  subscript(_1 index:Int) -> Int {
    #^PROTOCOL_SUBSCRIPT_FIRST?check=NO_GLOBAL;check=NO_SELF;check=WITH_GETSET;check=NO_OBSERVER^#
  }
  subscript(_2 index:Int) -> String {
    get
    #^PROTOCOL_SUBSCRIPT_SECOND?check=NO_GLOBAL;check=NO_SELF;check=WITH_GETSET;check=NO_OBSERVER^#
  }
}

extension SomeProto {
  var prop1: Int {
    #^PROTOCOL_EXT_PROPERTY_FIRST?check=WITH_GLOBAL;check=WITH_SELF;check=WITH_GETSET;check=NO_OBSERVER^#
  }
  var prop2: Int {
    set {} #^PROTOCOL_EXT_PROPERTY_SECOND?check=NO_GLOBAL;check=NO_SELF;check=WITH_GETSET;check=NO_OBSERVER^#
  }
  subscript(_1 index:Int) -> Int {
    #^PROTOCOL_EXT_SUBSCRIPT_FIRST?check=WITH_GLOBAL;check=WITH_SELF;check=WITH_GETSET;check=NO_OBSERVER^#
  }
  subscript(_2 index:Int) -> String {
    get { }
    #^PROTOCOL_EXT_SUBSCRIPT_SECOND?check=NO_GLOBAL;check=NO_SELF;check=WITH_GETSET;check=NO_OBSERVER^#
  }
}

struct SomeStruct {
  var prop1: Int {
    #^CONCRETE_PROPERTY_FIRST?check=WITH_GLOBAL;check=WITH_SELF;check=WITH_GETSET;check=WITH_OBSERVER^#
  }
  var prop2: Int {
    get {}
    @available(*, unavailable)
    #^CONCRETE_PROPERTY_SECOND?check=NO_GLOBAL;check=NO_SELF;check=WITH_GETSET;check=WITH_OBSERVER^#
  }
  subscript<T>(_1 index: T) -> Int {
    #^CONCRETE_SUBSCRIPT_FIRST?check=WITH_GLOBAL;check=WITH_SELF;check=WITH_GETSET;check=NO_OBSERVER^#
  }
  subscript(_2 index: Int) -> String {
    get { }
    #^CONCRETE_SUBSCRIPT_SECOND?check=NO_GLOBAL;check=NO_SELF;check=WITH_GETSET;check=NO_OBSERVER^#
  }
}

extension SomeStruct {
  var prop3: Int {
    #^CONCRETE_EXT_PROPERTY_FIRST?check=WITH_GLOBAL;check=WITH_SELF;check=WITH_GETSET;check=WITH_OBSERVER^#
  }
  var prop4: Int {
    get {}
    #^CONCRETE_EXT_PROPERTY_SECOND?check=NO_GLOBAL;check=NO_SELF;check=WITH_GETSET;check=WITH_OBSERVER^#
  }
  subscript(_3 index:Int) -> Int {
    #^CONCRETE_EXT_SUBSCRIPT_FIRST?check=WITH_GLOBAL;check=WITH_SELF;check=WITH_GETSET;check=NO_OBSERVER^#
  }
  subscript<U>(_4 index: Int) -> U {
    get { }
    #^CONCRETE_EXT_SUBSCRIPT_SECOND?check=NO_GLOBAL;check=NO_SELF;check=WITH_GETSET;check=NO_OBSERVER^#
  }
}

extension UNKNOWN_TYPE {
  var prop1: Int {
    #^UNKNOWN_EXT_PROPERTY_FIRST?check=WITH_GLOBAL;check=WITH_SELF;check=WITH_GETSET;check=WITH_OBSERVER^#
  }
  var prop2: Int {
    get {}
    #^UNKNOWN_EXT_PROPERTY_SECOND?check=NO_GLOBAL;check=NO_SELF;check=WITH_GETSET;check=WITH_OBSERVER^#
  }
  subscript<T>(_1 index: T) -> T where T: ANOTHER_UNKNWON_TYPE {
    #^UNKNOWN_EXT_SUBSCRIPT_FIRST?check=WITH_GLOBAL;check=WITH_SELF;check=WITH_GETSET;check=NO_OBSERVER^#
  }
  subscript(_2 index: Int) -> String {
    get { }
    #^UNKNOWN_EXT_SUBSCRIPT_SECOND?check=NO_GLOBAL;check=NO_SELF;check=WITH_GETSET;check=NO_OBSERVER^#
  }
}