3 * Copyright (c) 2014, Facebook, Inc.
6 * This source code is licensed under the MIT license found in the
7 * LICENSE file in the "hack" directory of this source tree.
12 function f(arraykey
$k1, arraykey
$k2): arraykey
{
16 function generic
<T
as arraykey
>(T
$k1, T
$k2): T
{
20 function cast(arraykey
$k1, arraykey
$k2): (string, int) {
21 return tuple((string)$k1, (int)$k2);
24 function f_opt(?arraykey
$k1, arraykey
$k2): arraykey
{
32 function get_classname(): classname
<C
> {
36 function test(): void
{
41 f(get_classname(), C
::class);
45 generic(get_classname(), get_classname());
55 function test_switch(arraykey
$x): bool {