Chris Abbey on Nostr: Hey my fellow elePHPant herders... how do you document the case where a trait ...
Hey my fellow elePHPant herders... how do you document the case where a trait implements an entire interface? One of our engineers put a bunch of `@implements` tags in, which
PHPStan (npub1yws…h3kt) then lead them down the bogus path of expecting those to be generics... so we ended up with "@implements PSR\LoggingInterface<PSR\LoggingInterace>" that made stan happy, but confused everything/one else. I'm currently thinking something like "@see PSR\LoggingInterface which this trait fulfills". #php
Published at
2024-08-26 18:28:22Event JSON
{
"id": "66980d22d8d0a229e130b7f7bb11b02726a37cb4c3b163987633d2073ba71666",
"pubkey": "5b3dfb638eba2c08a7099cfc729cfb29f3be345c18e4f11c1d1433b307e128ce",
"created_at": 1724696902,
"kind": 1,
"tags": [
[
"p",
"23a087c425f63aff4d73310b5adefed984a95211a99a5c0b3d715107b3a2f190"
],
[
"t",
"php"
],
[
"proxy",
"https://phpc.social/@cabbey/113029736208363680",
"web"
],
[
"proxy",
"https://phpc.social/users/cabbey/statuses/113029736208363680",
"activitypub"
],
[
"L",
"pink.momostr"
],
[
"l",
"pink.momostr.activitypub:https://phpc.social/users/cabbey/statuses/113029736208363680",
"pink.momostr"
],
[
"-"
]
],
"content": "Hey my fellow elePHPant herders... how do you document the case where a trait implements an entire interface? One of our engineers put a bunch of `@implements` tags in, which nostr:npub1ywsg03p97ca07ntnxy944hh7mxz2j5s34xd9czeaw9gs0vaz7xgq7fh3kt then lead them down the bogus path of expecting those to be generics... so we ended up with \"@implements PSR\\LoggingInterface\u003cPSR\\LoggingInterace\u003e\" that made stan happy, but confused everything/one else. I'm currently thinking something like \"@see PSR\\LoggingInterface which this trait fulfills\". #php",
"sig": "424237c024b1aed5d93b2c138a128301c42971112e1d332c1d9314f9fa78a29d54fb73cba19bc64b3fc72bcbe4f70e567df7b45768fed8bac2142b85692cae3c"
}