add variant::has_value_of() helper

it checks the variant has the specified type value