Go - can someone explain why empty interfaces can hold any value, where it seems "regular" interfaces only define functions? In other words, why can the empty interface hold something other than a function definition?

new to Go and interfaces in general...

=> Posted in: s/programming | ๐Ÿ€ gritty

2024-11-23 ยท 8 weeks ago

2 Comments โ†“

=> ๐ŸŒฒ greg ยท Nov 23 at 19:36:

Interfaces constrain the values they contain to values whose type implements at least the methods specified in the interface.

The empty interface specifies no methods, so a value of any type satisfies it: they all implement at least no methods.

=> ๐Ÿ€ gritty [OP] ยท Nov 23 at 22:05:

I guess that makes sense. I first saw this when reading about using an interface as a value in a map for json.

Proxy Information
Original URL
gemini://bbs.geminispace.org/s/programming/22096
Status Code
Success (20)
Meta
text/gemini; charset=utf-8
Capsule Response Time
67.784828 milliseconds
Gemini-to-HTML Time
0.287666 milliseconds

This content has been proxied by September (ba2dc).