123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 |
- package main
-
- import "fmt"
-
- /**
- // PRINT OMIT
- func Print(s []T) { // T is a type parameter
- for _, v := range s {
- fmt.Println(v)
- }
- }
-
- // PRINT OMIT
- **/
-
- // GEN OMIT
- func Print[T any](s []T) {
- for _, v := range s {
- fmt.Println(v)
- }
- }
-
- // GEN OMIT
-
- func main() {
- // CALL OMIT
- Print[int]([]int{1, 2, 3, 4})
- Print[int32]([]int32{1, 2, 3, 4})
- // CALL OMIT
- }
-
- /**
- // CALL MULTI PARAMS OMIT
- func Index[K comparable,V any](m map[K]V, k K) V {
- return m[k]
- }
-
- Index[int,string](map[int]string{1:"hello"}, 1)
- // CALL MULTI PARAMS OMIT
-
-
- */
-
- func dummy() {
- // CALL TYPE OMIT
- Print([]int{1, 2, 3})
- // CALL TYPE OMIT
- // COMPLETE CALL OMIT
- Print[int]([]int{1, 2, 3})
- // COMPLETE CALL OMIT
- }
|