static string nullName(AnalysisResultPtr ar, TypePtr type) { if (!type || Type::IsMappedToVariant(type)) { return "null_variant"; } if (type->is(Type::KindOfArray)) { return "null_array"; } if (type->is(Type::KindOfObject)) { return "null_object"; } if (type->is(Type::KindOfString)) { return "null_string"; } return type->getCPPDecl(ar, BlockScopeRawPtr()) + "()"; }