Go - Type Assertion


  • X.(T)  X is interface, T is concrete type.
  • When T is a concrete type, it assert dynamic type of X is identical to T. Result is the dynamic value with type of T
  • Left hand of type assertion must be an interface, otherwise panic
  • Panic if assert type fail
  • If T is an interface, it check is X satisfy T interface. Result is the type T
  • If two result are expected, type assertion will return boolean but not panic.
    w, ok := x.(T)
  • If result is false, result type will be nil


沒有留言:

張貼留言

Lessons Learned While Using Claude Code Skills

Recently, I started experimenting with Claude Code Skills . I first saw this YouTube video: https://www.youtube.com/watch?v=CEvIs9y1uog ...