2 // Copyright 2004-present Facebook. All Rights Reserved.
4 final class MyMap
<Tk
, Tv
> {
5 public function get(Tk
$k): ?Tv
{
10 function coalesce2
<Tr
, Ta
as Tr
, Tb
as Tr
>(?Ta
$a, Tb
$b): Tr
{
14 function ForceString(string $x): void
{}
15 function Test(MyMap
<string, string> $extra_data): void
{
16 $ref_id = (string)coalesce2(
17 $extra_data->get('ref_id'), // This has type ?var_1
18 $extra_data->get('attachment_id'), // this also has type ?var_1