⚝
One Hat Cyber Team
⚝
Your IP:
216.73.216.91
Server IP:
217.21.90.168
Server:
Linux in-mum-web840.main-hosting.eu 4.18.0-553.37.1.lve.el8.x86_64 #1 SMP Mon Feb 10 22:45:17 UTC 2025 x86_64
Server Software:
LiteSpeed
PHP Version:
7.4.33
Buat File
|
Buat Folder
Eksekusi
Dir :
~
/
opt
/
golang
/
1.22.0
/
test
/
typeparam
/
View File Name :
issue50690c.go
// run // Copyright 2022 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. package main import ( "fmt" ) type Printer[T ~string] struct { PrintFn func(T) } func Print[T ~string](s T) { fmt.Println(s) } func PrintWithPrinter[T ~string, S interface { ~struct { ID T PrintFn_ func(T) } PrintFn() func(T) }](message T, obj S) { obj.PrintFn()(message) } func main() { PrintWithPrinter( "Hello, world.", StructWithPrinter{ID: "fake", PrintFn_: Print[string]}, ) } type StructWithPrinter struct { ID string PrintFn_ func(string) } // Field accesses through type parameters are disabled // until we have a more thorough understanding of the // implications on the spec. See issue #51576. // Use accessor method instead. func (s StructWithPrinter) PrintFn() func(string) { return s.PrintFn_ }