File: main.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 (91 lines) | stat: -rw-r--r-- 1,821 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
// main.swift
//
// This source file is part of the Swift.org open source project
//
// Copyright (c) 2014 - 2016 Apple Inc. and the Swift project authors
// Licensed under Apache License v2.0 with Runtime Library Exception
//
// See https://swift.org/LICENSE.txt for license information
// See https://swift.org/CONTRIBUTORS.txt for the list of Swift project authors
//
// -----------------------------------------------------------------------------

protocol Proto {
	associatedtype FancyType
	func get() -> FancyType
}

extension String : Proto {
	typealias FancyType = Int
	func get() -> Int { return 1 }
}

func function <SomeType : Proto> (_ x : SomeType)
{
	var v = x.get()
	print(v) //Break here
}

class AClass <TypeA>
{
	init () {}
	func method1(_ x : TypeA)
	{
		print("hello world") //Break here
	}
	func method2 <TypeB> (_ x : TypeA, _ y : TypeB)
	{
		print("Hello world") //Break here
	}
}

class OtherClass <TypeA> : AClass <TypeA>
{
	var v : Int
	init(_ x : TypeA) {v = 1234567;super.init()}
}

struct Generic <Foo> {
	var v : Foo
	init (_ _v : Foo) { v = _v }
}

class Pair <Foo,Bar> {
	var one : Foo
	var two : Bar
	
	init (_ o : Foo, _ t : Bar) { one = o; two = t }
	
	func print() {
		Swift.print("hello") //Break here
	}
}

struct Outer <Foo> {
  struct Inner {
    var field: Foo
    
    func print() {
      Swift.print("hello") //Break here
    }
  }
}


func main() {
	var object : AClass<Int> = OtherClass(3)
	object.method1(123)
	function("hello world again")
	var pair1 : Pair<Generic<Int>,Pair<String,Generic<String>>> = 
	 Pair(Generic(193627),Pair("hello",Generic("world")))

	var pair2 = Pair(Generic(3.141592),Generic(Pair("this is","a good thing")))
  pair1.print()
  pair2.print()
	object.method2(5,"hello world")

  let value = Outer<Int>.Inner(field: 10)
  value.print() 
}

main()