-------- @describe pkgdecl --------
{
	"desc": "definition of package \"describe-json\"",
	"pos": "testdata/src/describe-json/main.go:1:9",
	"detail": "package",
	"package": {
		"path": "describe-json",
		"members": [
			{
				"name": "C",
				"type": "int",
				"pos": "testdata/src/describe-json/main.go:25:6",
				"kind": "type",
				"methods": [
					{
						"name": "method (C) f()",
						"pos": "testdata/src/describe-json/main.go:28:12"
					}
				]
			},
			{
				"name": "D",
				"type": "struct{}",
				"pos": "testdata/src/describe-json/main.go:26:6",
				"kind": "type",
				"methods": [
					{
						"name": "method (*D) f()",
						"pos": "testdata/src/describe-json/main.go:29:13"
					}
				]
			},
			{
				"name": "I",
				"type": "interface{f()}",
				"pos": "testdata/src/describe-json/main.go:21:6",
				"kind": "type",
				"methods": [
					{
						"name": "method (I) f()",
						"pos": "testdata/src/describe-json/main.go:22:2"
					}
				]
			},
			{
				"name": "main",
				"type": "func()",
				"pos": "testdata/src/describe-json/main.go:7:6",
				"kind": "func"
			}
		]
	}
}
-------- @describe desc-val-p --------
{
	"desc": "identifier",
	"pos": "testdata/src/describe-json/main.go:9:2",
	"detail": "value",
	"value": {
		"type": "*int",
		"objpos": "testdata/src/describe-json/main.go:9:2"
	}
}
-------- @describe desc-val-i --------
{
	"desc": "identifier",
	"pos": "testdata/src/describe-json/main.go:16:8",
	"detail": "value",
	"value": {
		"type": "I",
		"objpos": "testdata/src/describe-json/main.go:12:6",
		"typespos": [
			{
				"objpos": "testdata/src/describe-json/main.go:21:6",
				"desc": "I"
			}
		]
	}
}
-------- @describe desc-stmt --------
{
	"desc": "go statement",
	"pos": "testdata/src/describe-json/main.go:18:2",
	"detail": "unknown"
}
-------- @describe desc-type-C --------
{
	"desc": "definition of type C (size 8, align 8)",
	"pos": "testdata/src/describe-json/main.go:25:6",
	"detail": "type",
	"type": {
		"type": "C",
		"namepos": "testdata/src/describe-json/main.go:25:6",
		"namedef": "int",
		"methods": [
			{
				"name": "method (C) f()",
				"pos": "testdata/src/describe-json/main.go:28:12"
			}
		]
	}
}
-------- @describe desc-param-c --------
{
	"desc": "identifier",
	"pos": "testdata/src/describe-json/main.go:28:7",
	"detail": "value",
	"value": {
		"type": "C",
		"objpos": "testdata/src/describe-json/main.go:28:7",
		"typespos": [
			{
				"objpos": "testdata/src/describe-json/main.go:25:6",
				"desc": "C"
			}
		]
	}
}
-------- @describe desc-param-d --------
{
	"desc": "identifier",
	"pos": "testdata/src/describe-json/main.go:29:7",
	"detail": "value",
	"value": {
		"type": "*D",
		"objpos": "testdata/src/describe-json/main.go:29:7",
		"typespos": [
			{
				"objpos": "testdata/src/describe-json/main.go:26:6",
				"desc": "D"
			}
		]
	}
}
