@nikita_ppv @IssecMura Well, there are some exceptions, but most of the pseudo-types can be inferred from simple checks - e.g is_numeric($v) &amp;&amp; is_string($v) implies $v is a numeric-string. The basic idea: is the pseudo-type commonly implied from runtime value checks in large PHP projects?