Complete to check type rules (e.g. function), ensure Type.* is singleton