mirror of
https://github.com/apple/swift.git
synced 2025-12-21 12:14:44 +01:00
* De-underscore @frozen for enums * Add @frozen for structs, deprecate @_fixed_layout for them * Switch usage from _fixed_layout to frozen
1524 lines
40 KiB
JSON
1524 lines
40 KiB
JSON
{
|
|
"kind": "Root",
|
|
"name": "TopLevel",
|
|
"printedName": "TopLevel",
|
|
"children": [
|
|
{
|
|
"kind": "TypeDecl",
|
|
"name": "P1",
|
|
"printedName": "P1",
|
|
"children": [
|
|
{
|
|
"kind": "Function",
|
|
"name": "+",
|
|
"printedName": "+(_:_:)",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "P1",
|
|
"printedName": "P1",
|
|
"usr": "s:4cake2P1P"
|
|
},
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "P1",
|
|
"printedName": "P1",
|
|
"usr": "s:4cake2P1P"
|
|
},
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "P1",
|
|
"printedName": "P1",
|
|
"usr": "s:4cake2P1P"
|
|
}
|
|
],
|
|
"declKind": "Func",
|
|
"usr": "s:4cake2P1PAAE1poiyAaB_pAaB_p_AaB_ptFZ",
|
|
"moduleName": "cake",
|
|
"genericSig": "<Self where Self : P1>",
|
|
"static": true,
|
|
"funcSelfKind": "NonMutating"
|
|
}
|
|
],
|
|
"declKind": "Protocol",
|
|
"usr": "s:4cake2P1P",
|
|
"moduleName": "cake"
|
|
},
|
|
{
|
|
"kind": "TypeDecl",
|
|
"name": "P2",
|
|
"printedName": "P2",
|
|
"declKind": "Protocol",
|
|
"usr": "s:4cake2P2P",
|
|
"moduleName": "cake"
|
|
},
|
|
{
|
|
"kind": "TypeDecl",
|
|
"name": "P3",
|
|
"printedName": "P3",
|
|
"declKind": "Protocol",
|
|
"usr": "s:4cake2P3P",
|
|
"moduleName": "cake",
|
|
"genericSig": "<Self : cake.P1, Self : cake.P2>",
|
|
"conformances": [
|
|
{
|
|
"kind": "Conformance",
|
|
"name": "P2",
|
|
"printedName": "P2",
|
|
"usr": "s:4cake2P2P"
|
|
},
|
|
{
|
|
"kind": "Conformance",
|
|
"name": "P1",
|
|
"printedName": "P1",
|
|
"usr": "s:4cake2P1P"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"kind": "TypeDecl",
|
|
"name": "S1",
|
|
"printedName": "S1",
|
|
"children": [
|
|
{
|
|
"kind": "Function",
|
|
"name": "foo1",
|
|
"printedName": "foo1()",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "Void",
|
|
"printedName": "()"
|
|
}
|
|
],
|
|
"declKind": "Func",
|
|
"usr": "s:4cake2S1V4foo1yyFZ",
|
|
"moduleName": "cake",
|
|
"static": true,
|
|
"funcSelfKind": "NonMutating"
|
|
},
|
|
{
|
|
"kind": "Function",
|
|
"name": "foo2",
|
|
"printedName": "foo2()",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "Void",
|
|
"printedName": "()"
|
|
}
|
|
],
|
|
"declKind": "Func",
|
|
"usr": "s:4cake2S1V4foo2yyF",
|
|
"moduleName": "cake",
|
|
"funcSelfKind": "Mutating"
|
|
},
|
|
{
|
|
"kind": "Function",
|
|
"name": "foo6",
|
|
"printedName": "foo6()",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNameAlias",
|
|
"name": "Void",
|
|
"printedName": "Void",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "Void",
|
|
"printedName": "()"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"declKind": "Func",
|
|
"usr": "s:4cake2S1V4foo6yyF",
|
|
"moduleName": "cake",
|
|
"funcSelfKind": "NonMutating"
|
|
}
|
|
],
|
|
"declKind": "Struct",
|
|
"usr": "s:4cake2S1V",
|
|
"moduleName": "cake",
|
|
"declAttributes": [
|
|
"Frozen"
|
|
],
|
|
"conformances": [
|
|
{
|
|
"kind": "Conformance",
|
|
"name": "P1",
|
|
"printedName": "P1",
|
|
"usr": "s:4cake2P1P"
|
|
},
|
|
{
|
|
"kind": "Conformance",
|
|
"name": "P2",
|
|
"printedName": "P2",
|
|
"usr": "s:4cake2P2P"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"kind": "TypeDecl",
|
|
"name": "C0",
|
|
"printedName": "C0",
|
|
"children": [
|
|
{
|
|
"kind": "Function",
|
|
"name": "conditionalFooExt",
|
|
"printedName": "conditionalFooExt()",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "Void",
|
|
"printedName": "()"
|
|
}
|
|
],
|
|
"declKind": "Func",
|
|
"usr": "s:4cake2C0CA2A2S1VRszAERs_AERs0_rlE17conditionalFooExtyyF",
|
|
"moduleName": "cake",
|
|
"genericSig": "<T1, T2, T3 where T1 == S1, T2 == S1, T3 == S1>",
|
|
"funcSelfKind": "NonMutating"
|
|
},
|
|
{
|
|
"kind": "Function",
|
|
"name": "unconditionalFooExt",
|
|
"printedName": "unconditionalFooExt()",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "Void",
|
|
"printedName": "()"
|
|
}
|
|
],
|
|
"declKind": "Func",
|
|
"usr": "s:4cake2C0C19unconditionalFooExtyyF",
|
|
"moduleName": "cake",
|
|
"genericSig": "<T1, T2, T3>",
|
|
"funcSelfKind": "NonMutating"
|
|
}
|
|
],
|
|
"declKind": "Class",
|
|
"usr": "s:4cake2C0C",
|
|
"moduleName": "cake",
|
|
"genericSig": "<T1, T2, T3>"
|
|
},
|
|
{
|
|
"kind": "TypeAlias",
|
|
"name": "C0Alias",
|
|
"printedName": "C0Alias",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "C0",
|
|
"printedName": "C0<S1, S1, S1>",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "S1",
|
|
"printedName": "S1",
|
|
"usr": "s:4cake2S1V"
|
|
},
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "S1",
|
|
"printedName": "S1",
|
|
"usr": "s:4cake2S1V"
|
|
},
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "S1",
|
|
"printedName": "S1",
|
|
"usr": "s:4cake2S1V"
|
|
}
|
|
],
|
|
"usr": "s:4cake2C0C"
|
|
}
|
|
],
|
|
"declKind": "TypeAlias",
|
|
"usr": "s:4cake7C0Aliasa",
|
|
"moduleName": "cake"
|
|
},
|
|
{
|
|
"kind": "TypeDecl",
|
|
"name": "C1",
|
|
"printedName": "C1",
|
|
"children": [
|
|
{
|
|
"kind": "Function",
|
|
"name": "foo1",
|
|
"printedName": "foo1()",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "Void",
|
|
"printedName": "()"
|
|
}
|
|
],
|
|
"declKind": "Func",
|
|
"usr": "s:4cake2C1C4foo1yyFZ",
|
|
"moduleName": "cake",
|
|
"static": true,
|
|
"isOpen": true,
|
|
"funcSelfKind": "NonMutating"
|
|
},
|
|
{
|
|
"kind": "Var",
|
|
"name": "Ins",
|
|
"printedName": "Ins",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "WeakStorage",
|
|
"printedName": "C1?"
|
|
},
|
|
{
|
|
"kind": "Getter",
|
|
"name": "Get",
|
|
"printedName": "Get()",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "Optional",
|
|
"printedName": "C1?",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "C1",
|
|
"printedName": "C1",
|
|
"usr": "s:4cake2C1C"
|
|
}
|
|
],
|
|
"usr": "s:Sq"
|
|
}
|
|
],
|
|
"declKind": "Accessor",
|
|
"usr": "s:4cake2C1C3InsACSgvg",
|
|
"moduleName": "cake",
|
|
"implicit": true,
|
|
"declAttributes": [
|
|
"Transparent"
|
|
]
|
|
},
|
|
{
|
|
"kind": "Setter",
|
|
"name": "Set",
|
|
"printedName": "Set()",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "Void",
|
|
"printedName": "()"
|
|
},
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "Optional",
|
|
"printedName": "C1?",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "C1",
|
|
"printedName": "C1",
|
|
"usr": "s:4cake2C1C"
|
|
}
|
|
],
|
|
"usr": "s:Sq"
|
|
}
|
|
],
|
|
"declKind": "Accessor",
|
|
"usr": "s:4cake2C1C3InsACSgvs",
|
|
"moduleName": "cake",
|
|
"implicit": true,
|
|
"declAttributes": [
|
|
"Transparent"
|
|
]
|
|
}
|
|
],
|
|
"declKind": "Var",
|
|
"usr": "s:4cake2C1C3InsACSgvp",
|
|
"moduleName": "cake",
|
|
"declAttributes": [
|
|
"HasInitialValue",
|
|
"ReferenceOwnership",
|
|
"HasStorage"
|
|
],
|
|
"ownership": 1,
|
|
"hasStorage": true
|
|
},
|
|
{
|
|
"kind": "Var",
|
|
"name": "Ins2",
|
|
"printedName": "Ins2",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "UnownedStorage",
|
|
"printedName": "C1"
|
|
},
|
|
{
|
|
"kind": "Getter",
|
|
"name": "Get",
|
|
"printedName": "Get()",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "C1",
|
|
"printedName": "C1",
|
|
"usr": "s:4cake2C1C"
|
|
}
|
|
],
|
|
"declKind": "Accessor",
|
|
"usr": "s:4cake2C1C4Ins2ACvg",
|
|
"moduleName": "cake",
|
|
"implicit": true,
|
|
"declAttributes": [
|
|
"Transparent"
|
|
]
|
|
},
|
|
{
|
|
"kind": "Setter",
|
|
"name": "Set",
|
|
"printedName": "Set()",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "Void",
|
|
"printedName": "()"
|
|
},
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "C1",
|
|
"printedName": "C1",
|
|
"usr": "s:4cake2C1C"
|
|
}
|
|
],
|
|
"declKind": "Accessor",
|
|
"usr": "s:4cake2C1C4Ins2ACvs",
|
|
"moduleName": "cake",
|
|
"implicit": true,
|
|
"declAttributes": [
|
|
"Transparent"
|
|
]
|
|
}
|
|
],
|
|
"declKind": "Var",
|
|
"usr": "s:4cake2C1C4Ins2ACvp",
|
|
"moduleName": "cake",
|
|
"declAttributes": [
|
|
"HasInitialValue",
|
|
"ReferenceOwnership",
|
|
"HasStorage"
|
|
],
|
|
"ownership": 2,
|
|
"hasStorage": true
|
|
}
|
|
],
|
|
"declKind": "Class",
|
|
"usr": "s:4cake2C1C",
|
|
"moduleName": "cake",
|
|
"superclassUsr": "s:4cake2C0C",
|
|
"superclassNames": [
|
|
"C0<S1, S1, S1>"
|
|
]
|
|
},
|
|
{
|
|
"kind": "Function",
|
|
"name": "foo1",
|
|
"printedName": "foo1(_:b:)",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "Void",
|
|
"printedName": "()"
|
|
},
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "Int",
|
|
"printedName": "Int",
|
|
"hasDefaultArg": true,
|
|
"usr": "s:Si"
|
|
},
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "S1",
|
|
"printedName": "S1",
|
|
"usr": "s:4cake2S1V"
|
|
}
|
|
],
|
|
"declKind": "Func",
|
|
"usr": "s:4cake4foo1_1bySi_AA2S1VtF",
|
|
"moduleName": "cake",
|
|
"funcSelfKind": "NonMutating"
|
|
},
|
|
{
|
|
"kind": "Function",
|
|
"name": "foo2",
|
|
"printedName": "foo2(_:b:)",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "Void",
|
|
"printedName": "()"
|
|
},
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "Int",
|
|
"printedName": "Int",
|
|
"hasDefaultArg": true,
|
|
"usr": "s:Si"
|
|
},
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "S1",
|
|
"printedName": "S1",
|
|
"usr": "s:4cake2S1V"
|
|
}
|
|
],
|
|
"declKind": "Func",
|
|
"usr": "s:4cake4foo2_1bySi_AA2S1VtF",
|
|
"moduleName": "cake",
|
|
"funcSelfKind": "NonMutating"
|
|
},
|
|
{
|
|
"kind": "TypeDecl",
|
|
"name": "Number",
|
|
"printedName": "Number",
|
|
"children": [
|
|
{
|
|
"kind": "Var",
|
|
"name": "one",
|
|
"printedName": "one",
|
|
"children": [
|
|
{
|
|
"kind": "TypeFunc",
|
|
"name": "Function",
|
|
"printedName": "(Number.Type) -> Number",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "Number",
|
|
"printedName": "Number",
|
|
"usr": "s:4cake6NumberO"
|
|
},
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "Paren",
|
|
"printedName": "(Number.Type)",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "Metatype",
|
|
"printedName": "Number.Type",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "Number",
|
|
"printedName": "Number",
|
|
"usr": "s:4cake6NumberO"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"declKind": "EnumElement",
|
|
"usr": "s:4cake6NumberO3oneyA2CmF",
|
|
"moduleName": "cake"
|
|
},
|
|
{
|
|
"kind": "TypeAlias",
|
|
"name": "RawValue",
|
|
"printedName": "RawValue",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "Int",
|
|
"printedName": "Int",
|
|
"usr": "s:Si"
|
|
}
|
|
],
|
|
"declKind": "TypeAlias",
|
|
"usr": "s:4cake6NumberO8RawValuea",
|
|
"moduleName": "cake",
|
|
"implicit": true
|
|
},
|
|
{
|
|
"kind": "Constructor",
|
|
"name": "init",
|
|
"printedName": "init(rawValue:)",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "Optional",
|
|
"printedName": "Number?",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "Number",
|
|
"printedName": "Number",
|
|
"usr": "s:4cake6NumberO"
|
|
}
|
|
],
|
|
"usr": "s:Sq"
|
|
},
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "Int",
|
|
"printedName": "Int",
|
|
"usr": "s:Si"
|
|
}
|
|
],
|
|
"declKind": "Constructor",
|
|
"usr": "s:4cake6NumberO8rawValueACSgSi_tcfc",
|
|
"moduleName": "cake",
|
|
"implicit": true,
|
|
"declAttributes": [
|
|
"Inlinable"
|
|
]
|
|
},
|
|
{
|
|
"kind": "Var",
|
|
"name": "rawValue",
|
|
"printedName": "rawValue",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "Int",
|
|
"printedName": "Int",
|
|
"usr": "s:Si"
|
|
},
|
|
{
|
|
"kind": "Getter",
|
|
"name": "Get",
|
|
"printedName": "Get()",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "Int",
|
|
"printedName": "Int",
|
|
"usr": "s:Si"
|
|
}
|
|
],
|
|
"declKind": "Accessor",
|
|
"usr": "s:4cake6NumberO8rawValueSivg",
|
|
"moduleName": "cake",
|
|
"implicit": true,
|
|
"declAttributes": [
|
|
"Inlinable"
|
|
]
|
|
}
|
|
],
|
|
"declKind": "Var",
|
|
"usr": "s:4cake6NumberO8rawValueSivp",
|
|
"moduleName": "cake",
|
|
"implicit": true
|
|
}
|
|
],
|
|
"declKind": "Enum",
|
|
"usr": "s:4cake6NumberO",
|
|
"moduleName": "cake",
|
|
"enumRawTypeName": "Int",
|
|
"conformances": [
|
|
{
|
|
"kind": "Conformance",
|
|
"name": "Equatable",
|
|
"printedName": "Equatable",
|
|
"usr": "s:SQ"
|
|
},
|
|
{
|
|
"kind": "Conformance",
|
|
"name": "Hashable",
|
|
"printedName": "Hashable",
|
|
"usr": "s:SH"
|
|
},
|
|
{
|
|
"kind": "Conformance",
|
|
"name": "RawRepresentable",
|
|
"printedName": "RawRepresentable",
|
|
"children": [
|
|
{
|
|
"kind": "TypeWitness",
|
|
"name": "RawValue",
|
|
"printedName": "RawValue",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "Int",
|
|
"printedName": "Int",
|
|
"usr": "s:Si"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"usr": "s:SY"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"kind": "Function",
|
|
"name": "foo3",
|
|
"printedName": "foo3(_:)",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "Void",
|
|
"printedName": "()"
|
|
},
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "Dictionary",
|
|
"printedName": "[Int : String]",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "Int",
|
|
"printedName": "Int",
|
|
"usr": "s:Si"
|
|
},
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "String",
|
|
"printedName": "String",
|
|
"usr": "s:SS"
|
|
}
|
|
],
|
|
"usr": "s:SD"
|
|
}
|
|
],
|
|
"declKind": "Func",
|
|
"usr": "s:4cake4foo3yySDySiSSGF",
|
|
"moduleName": "cake",
|
|
"funcSelfKind": "NonMutating"
|
|
},
|
|
{
|
|
"kind": "TypeDecl",
|
|
"name": "fixedLayoutStruct",
|
|
"printedName": "fixedLayoutStruct",
|
|
"children": [
|
|
{
|
|
"kind": "Var",
|
|
"name": "a",
|
|
"printedName": "a",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "Int",
|
|
"printedName": "Int",
|
|
"usr": "s:Si"
|
|
},
|
|
{
|
|
"kind": "Getter",
|
|
"name": "Get",
|
|
"printedName": "Get()",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "Int",
|
|
"printedName": "Int",
|
|
"usr": "s:Si"
|
|
}
|
|
],
|
|
"declKind": "Accessor",
|
|
"usr": "s:4cake17fixedLayoutStructV1aSivg",
|
|
"moduleName": "cake",
|
|
"implicit": true,
|
|
"declAttributes": [
|
|
"Transparent"
|
|
]
|
|
},
|
|
{
|
|
"kind": "Setter",
|
|
"name": "Set",
|
|
"printedName": "Set()",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "Void",
|
|
"printedName": "()"
|
|
},
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "Int",
|
|
"printedName": "Int",
|
|
"usr": "s:Si"
|
|
}
|
|
],
|
|
"declKind": "Accessor",
|
|
"usr": "s:4cake17fixedLayoutStructV1aSivs",
|
|
"moduleName": "cake",
|
|
"implicit": true,
|
|
"declAttributes": [
|
|
"Transparent"
|
|
]
|
|
}
|
|
],
|
|
"declKind": "Var",
|
|
"usr": "s:4cake17fixedLayoutStructV1aSivp",
|
|
"moduleName": "cake",
|
|
"declAttributes": [
|
|
"HasInitialValue",
|
|
"HasStorage"
|
|
],
|
|
"hasStorage": true
|
|
}
|
|
],
|
|
"declKind": "Struct",
|
|
"usr": "s:4cake17fixedLayoutStructV",
|
|
"moduleName": "cake",
|
|
"declAttributes": [
|
|
"Frozen"
|
|
]
|
|
},
|
|
{
|
|
"kind": "TypeDecl",
|
|
"name": "ProWithAssociatedType",
|
|
"printedName": "ProWithAssociatedType",
|
|
"children": [
|
|
{
|
|
"kind": "AssociatedType",
|
|
"name": "A",
|
|
"printedName": "A",
|
|
"declKind": "AssociatedType",
|
|
"usr": "s:4cake21ProWithAssociatedTypeP1AQa",
|
|
"moduleName": "cake",
|
|
"protocolReq": true
|
|
},
|
|
{
|
|
"kind": "AssociatedType",
|
|
"name": "B",
|
|
"printedName": "B",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "Int",
|
|
"printedName": "Int",
|
|
"usr": "s:Si"
|
|
}
|
|
],
|
|
"declKind": "AssociatedType",
|
|
"usr": "s:4cake21ProWithAssociatedTypeP1BQa",
|
|
"moduleName": "cake",
|
|
"protocolReq": true
|
|
},
|
|
{
|
|
"kind": "Function",
|
|
"name": "NonReqFunc",
|
|
"printedName": "NonReqFunc()",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "Void",
|
|
"printedName": "()"
|
|
}
|
|
],
|
|
"declKind": "Func",
|
|
"usr": "s:4cake21ProWithAssociatedTypePAAE10NonReqFuncyyF",
|
|
"moduleName": "cake",
|
|
"genericSig": "<Self where Self : ProWithAssociatedType>",
|
|
"funcSelfKind": "NonMutating"
|
|
},
|
|
{
|
|
"kind": "Var",
|
|
"name": "NonReqVar",
|
|
"printedName": "NonReqVar",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "Int",
|
|
"printedName": "Int",
|
|
"usr": "s:Si"
|
|
},
|
|
{
|
|
"kind": "Getter",
|
|
"name": "Get",
|
|
"printedName": "Get()",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "Int",
|
|
"printedName": "Int",
|
|
"usr": "s:Si"
|
|
}
|
|
],
|
|
"declKind": "Accessor",
|
|
"usr": "s:4cake21ProWithAssociatedTypePAAE9NonReqVarSivg",
|
|
"moduleName": "cake",
|
|
"genericSig": "<Self where Self : ProWithAssociatedType>"
|
|
}
|
|
],
|
|
"declKind": "Var",
|
|
"usr": "s:4cake21ProWithAssociatedTypePAAE9NonReqVarSivp",
|
|
"moduleName": "cake"
|
|
},
|
|
{
|
|
"kind": "TypeAlias",
|
|
"name": "NonReqAlias",
|
|
"printedName": "NonReqAlias",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "Int",
|
|
"printedName": "Int",
|
|
"usr": "s:Si"
|
|
}
|
|
],
|
|
"declKind": "TypeAlias",
|
|
"usr": "s:4cake21ProWithAssociatedTypePAAE11NonReqAliasa",
|
|
"moduleName": "cake",
|
|
"genericSig": "<Self where Self : ProWithAssociatedType>"
|
|
}
|
|
],
|
|
"declKind": "Protocol",
|
|
"usr": "s:4cake21ProWithAssociatedTypeP",
|
|
"moduleName": "cake"
|
|
},
|
|
{
|
|
"kind": "TypeDecl",
|
|
"name": "SubsContainer",
|
|
"printedName": "SubsContainer",
|
|
"children": [
|
|
{
|
|
"kind": "Subscript",
|
|
"name": "subscript",
|
|
"printedName": "subscript(getter:)",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "Int",
|
|
"printedName": "Int",
|
|
"usr": "s:Si"
|
|
},
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "Int",
|
|
"printedName": "Int",
|
|
"usr": "s:Si"
|
|
}
|
|
],
|
|
"declKind": "Subscript",
|
|
"usr": "s:4cake13SubsContainerP6getterS2i_tcip",
|
|
"moduleName": "cake",
|
|
"genericSig": "<Self where Self : SubsContainer>",
|
|
"protocolReq": true
|
|
},
|
|
{
|
|
"kind": "Subscript",
|
|
"name": "subscript",
|
|
"printedName": "subscript(setter:)",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "Int",
|
|
"printedName": "Int",
|
|
"usr": "s:Si"
|
|
},
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "Int",
|
|
"printedName": "Int",
|
|
"usr": "s:Si"
|
|
}
|
|
],
|
|
"declKind": "Subscript",
|
|
"usr": "s:4cake13SubsContainerP6setterS2i_tcip",
|
|
"moduleName": "cake",
|
|
"genericSig": "<Self where Self : SubsContainer>",
|
|
"protocolReq": true,
|
|
"hasSetter": true
|
|
}
|
|
],
|
|
"declKind": "Protocol",
|
|
"usr": "s:4cake13SubsContainerP",
|
|
"moduleName": "cake"
|
|
},
|
|
{
|
|
"kind": "TypeDecl",
|
|
"name": "PSuper",
|
|
"printedName": "PSuper",
|
|
"children": [
|
|
{
|
|
"kind": "AssociatedType",
|
|
"name": "T",
|
|
"printedName": "T",
|
|
"declKind": "AssociatedType",
|
|
"usr": "s:4cake6PSuperP1TQa",
|
|
"moduleName": "cake",
|
|
"protocolReq": true
|
|
},
|
|
{
|
|
"kind": "Function",
|
|
"name": "foo",
|
|
"printedName": "foo()",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "Void",
|
|
"printedName": "()"
|
|
}
|
|
],
|
|
"declKind": "Func",
|
|
"usr": "s:4cake6PSuperP3fooyyF",
|
|
"moduleName": "cake",
|
|
"genericSig": "<Self where Self : PSuper>",
|
|
"protocolReq": true,
|
|
"reqNewWitnessTableEntry": true,
|
|
"funcSelfKind": "NonMutating"
|
|
},
|
|
{
|
|
"kind": "Function",
|
|
"name": "futureFoo",
|
|
"printedName": "futureFoo()",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "Void",
|
|
"printedName": "()"
|
|
}
|
|
],
|
|
"declKind": "Func",
|
|
"usr": "s:4cake6PSuperPAAE9futureFooyyF",
|
|
"moduleName": "cake",
|
|
"genericSig": "<Self where Self : PSuper>",
|
|
"isABIPlaceholder": true,
|
|
"intro_Macosx": "9999",
|
|
"intro_iOS": "9999",
|
|
"intro_tvOS": "9999",
|
|
"intro_watchOS": "9999",
|
|
"funcSelfKind": "NonMutating"
|
|
}
|
|
],
|
|
"declKind": "Protocol",
|
|
"usr": "s:4cake6PSuperP",
|
|
"moduleName": "cake"
|
|
},
|
|
{
|
|
"kind": "TypeDecl",
|
|
"name": "PSub",
|
|
"printedName": "PSub",
|
|
"children": [
|
|
{
|
|
"kind": "AssociatedType",
|
|
"name": "T",
|
|
"printedName": "T",
|
|
"declKind": "AssociatedType",
|
|
"usr": "s:4cake4PSubP1TQa",
|
|
"moduleName": "cake",
|
|
"protocolReq": true,
|
|
"overriding": true
|
|
},
|
|
{
|
|
"kind": "Function",
|
|
"name": "foo",
|
|
"printedName": "foo()",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "Void",
|
|
"printedName": "()"
|
|
}
|
|
],
|
|
"declKind": "Func",
|
|
"usr": "s:4cake4PSubP3fooyyF",
|
|
"moduleName": "cake",
|
|
"genericSig": "<Self where Self : PSub>",
|
|
"protocolReq": true,
|
|
"overriding": true,
|
|
"declAttributes": [
|
|
"Override"
|
|
],
|
|
"funcSelfKind": "NonMutating"
|
|
}
|
|
],
|
|
"declKind": "Protocol",
|
|
"usr": "s:4cake4PSubP",
|
|
"moduleName": "cake",
|
|
"genericSig": "<Self : cake.PSuper>",
|
|
"conformances": [
|
|
{
|
|
"kind": "Conformance",
|
|
"name": "PSuper",
|
|
"printedName": "PSuper",
|
|
"usr": "s:4cake6PSuperP"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"kind": "Var",
|
|
"name": "GlobalVar",
|
|
"printedName": "GlobalVar",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "Int",
|
|
"printedName": "Int",
|
|
"usr": "s:Si"
|
|
}
|
|
],
|
|
"declKind": "Var",
|
|
"usr": "s:4cake9GlobalVarSivp",
|
|
"moduleName": "cake",
|
|
"declAttributes": [
|
|
"HasInitialValue",
|
|
"HasStorage"
|
|
],
|
|
"isLet": true,
|
|
"hasStorage": true
|
|
},
|
|
{
|
|
"kind": "OperatorDecl",
|
|
"name": "..*..",
|
|
"printedName": "..*..",
|
|
"declKind": "InfixOperator",
|
|
"moduleName": "cake",
|
|
"declAttributes": [
|
|
"Infix"
|
|
]
|
|
},
|
|
{
|
|
"kind": "TypeDecl",
|
|
"name": "FutureContainer",
|
|
"printedName": "FutureContainer",
|
|
"children": [
|
|
{
|
|
"kind": "Function",
|
|
"name": "futureFoo",
|
|
"printedName": "futureFoo()",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "Void",
|
|
"printedName": "()"
|
|
}
|
|
],
|
|
"declKind": "Func",
|
|
"usr": "s:4cake15FutureContainerC9futureFooyyF",
|
|
"moduleName": "cake",
|
|
"isABIPlaceholder": true,
|
|
"intro_Macosx": "9999",
|
|
"intro_iOS": "9999",
|
|
"intro_tvOS": "9999",
|
|
"intro_watchOS": "9999",
|
|
"declAttributes": [
|
|
"Available",
|
|
"Available",
|
|
"Available",
|
|
"Available"
|
|
],
|
|
"funcSelfKind": "NonMutating"
|
|
},
|
|
{
|
|
"kind": "Function",
|
|
"name": "NotfutureFoo",
|
|
"printedName": "NotfutureFoo()",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "Void",
|
|
"printedName": "()"
|
|
}
|
|
],
|
|
"declKind": "Func",
|
|
"usr": "s:4cake15FutureContainerC12NotfutureFooyyF",
|
|
"moduleName": "cake",
|
|
"intro_Macosx": "9999",
|
|
"declAttributes": [
|
|
"Available"
|
|
],
|
|
"funcSelfKind": "NonMutating"
|
|
}
|
|
],
|
|
"declKind": "Class",
|
|
"usr": "s:4cake15FutureContainerC",
|
|
"moduleName": "cake",
|
|
"conformances": [
|
|
{
|
|
"kind": "Conformance",
|
|
"name": "P1",
|
|
"printedName": "P1",
|
|
"usr": "s:4cake2P1P",
|
|
"isABIPlaceholder": true
|
|
},
|
|
{
|
|
"kind": "Conformance",
|
|
"name": "P2",
|
|
"printedName": "P2",
|
|
"usr": "s:4cake2P2P"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"kind": "TypeDecl",
|
|
"name": "PlatformIntroClass",
|
|
"printedName": "PlatformIntroClass",
|
|
"declKind": "Class",
|
|
"usr": "s:4cake18PlatformIntroClassC",
|
|
"moduleName": "cake",
|
|
"intro_Macosx": "10.1",
|
|
"intro_iOS": "10.2",
|
|
"intro_tvOS": "10.3",
|
|
"intro_watchOS": "3.4",
|
|
"declAttributes": [
|
|
"Available",
|
|
"Available",
|
|
"Available",
|
|
"Available"
|
|
]
|
|
},
|
|
{
|
|
"kind": "TypeDecl",
|
|
"name": "SwiftIntroClass",
|
|
"printedName": "SwiftIntroClass",
|
|
"declKind": "Class",
|
|
"usr": "s:4cake15SwiftIntroClassC",
|
|
"moduleName": "cake",
|
|
"intro_swift": "5",
|
|
"declAttributes": [
|
|
"Available"
|
|
]
|
|
},
|
|
{
|
|
"kind": "TypeDecl",
|
|
"name": "Int",
|
|
"printedName": "Int",
|
|
"children": [
|
|
{
|
|
"kind": "Function",
|
|
"name": "foo",
|
|
"printedName": "foo()",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "Void",
|
|
"printedName": "()"
|
|
}
|
|
],
|
|
"declKind": "Func",
|
|
"usr": "s:Si4cakeE3fooyyF",
|
|
"moduleName": "cake",
|
|
"funcSelfKind": "NonMutating"
|
|
},
|
|
{
|
|
"kind": "Function",
|
|
"name": "bar",
|
|
"printedName": "bar()",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "Void",
|
|
"printedName": "()"
|
|
}
|
|
],
|
|
"declKind": "Func",
|
|
"usr": "s:Si4cakeE3baryyF",
|
|
"moduleName": "cake",
|
|
"funcSelfKind": "NonMutating"
|
|
}
|
|
],
|
|
"declKind": "Struct",
|
|
"usr": "s:Si",
|
|
"moduleName": "Swift",
|
|
"declAttributes": [
|
|
"Frozen"
|
|
],
|
|
"isExternal": true,
|
|
"conformances": [
|
|
{
|
|
"kind": "Conformance",
|
|
"name": "FixedWidthInteger",
|
|
"printedName": "FixedWidthInteger",
|
|
"usr": "s:s17FixedWidthIntegerP"
|
|
},
|
|
{
|
|
"kind": "Conformance",
|
|
"name": "SignedInteger",
|
|
"printedName": "SignedInteger",
|
|
"usr": "s:SZ"
|
|
},
|
|
{
|
|
"kind": "Conformance",
|
|
"name": "BinaryInteger",
|
|
"printedName": "BinaryInteger",
|
|
"children": [
|
|
{
|
|
"kind": "TypeWitness",
|
|
"name": "Words",
|
|
"printedName": "Words",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "Words",
|
|
"printedName": "Int.Words",
|
|
"usr": "s:Si5WordsV"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"usr": "s:Sz"
|
|
},
|
|
{
|
|
"kind": "Conformance",
|
|
"name": "LosslessStringConvertible",
|
|
"printedName": "LosslessStringConvertible",
|
|
"usr": "s:s25LosslessStringConvertibleP"
|
|
},
|
|
{
|
|
"kind": "Conformance",
|
|
"name": "SignedNumeric",
|
|
"printedName": "SignedNumeric",
|
|
"usr": "s:s13SignedNumericP"
|
|
},
|
|
{
|
|
"kind": "Conformance",
|
|
"name": "Numeric",
|
|
"printedName": "Numeric",
|
|
"children": [
|
|
{
|
|
"kind": "TypeWitness",
|
|
"name": "Magnitude",
|
|
"printedName": "Magnitude",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNameAlias",
|
|
"name": "Magnitude",
|
|
"printedName": "Int.Magnitude",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "UInt",
|
|
"printedName": "UInt",
|
|
"usr": "s:Su"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"usr": "s:Sj"
|
|
},
|
|
{
|
|
"kind": "Conformance",
|
|
"name": "CustomStringConvertible",
|
|
"printedName": "CustomStringConvertible",
|
|
"usr": "s:s23CustomStringConvertibleP"
|
|
},
|
|
{
|
|
"kind": "Conformance",
|
|
"name": "Strideable",
|
|
"printedName": "Strideable",
|
|
"children": [
|
|
{
|
|
"kind": "TypeWitness",
|
|
"name": "Stride",
|
|
"printedName": "Stride",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "Int",
|
|
"printedName": "Int",
|
|
"usr": "s:Si"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"usr": "s:Sx"
|
|
},
|
|
{
|
|
"kind": "Conformance",
|
|
"name": "AdditiveArithmetic",
|
|
"printedName": "AdditiveArithmetic",
|
|
"usr": "s:s18AdditiveArithmeticP"
|
|
},
|
|
{
|
|
"kind": "Conformance",
|
|
"name": "ExpressibleByIntegerLiteral",
|
|
"printedName": "ExpressibleByIntegerLiteral",
|
|
"children": [
|
|
{
|
|
"kind": "TypeWitness",
|
|
"name": "IntegerLiteralType",
|
|
"printedName": "IntegerLiteralType",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNameAlias",
|
|
"name": "IntegerLiteralType",
|
|
"printedName": "Int.IntegerLiteralType",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "Int",
|
|
"printedName": "Int",
|
|
"usr": "s:Si"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"usr": "s:s27ExpressibleByIntegerLiteralP"
|
|
},
|
|
{
|
|
"kind": "Conformance",
|
|
"name": "Comparable",
|
|
"printedName": "Comparable",
|
|
"usr": "s:SL"
|
|
},
|
|
{
|
|
"kind": "Conformance",
|
|
"name": "P1",
|
|
"printedName": "P1",
|
|
"usr": "s:4cake2P1P"
|
|
},
|
|
{
|
|
"kind": "Conformance",
|
|
"name": "MirrorPath",
|
|
"printedName": "MirrorPath",
|
|
"usr": "s:s10MirrorPathP"
|
|
},
|
|
{
|
|
"kind": "Conformance",
|
|
"name": "CVarArg",
|
|
"printedName": "CVarArg",
|
|
"usr": "s:s7CVarArgP"
|
|
},
|
|
{
|
|
"kind": "Conformance",
|
|
"name": "Encodable",
|
|
"printedName": "Encodable",
|
|
"usr": "s:SE"
|
|
},
|
|
{
|
|
"kind": "Conformance",
|
|
"name": "Decodable",
|
|
"printedName": "Decodable",
|
|
"usr": "s:Se"
|
|
},
|
|
{
|
|
"kind": "Conformance",
|
|
"name": "Hashable",
|
|
"printedName": "Hashable",
|
|
"usr": "s:SH"
|
|
},
|
|
{
|
|
"kind": "Conformance",
|
|
"name": "Equatable",
|
|
"printedName": "Equatable",
|
|
"usr": "s:SQ"
|
|
},
|
|
{
|
|
"kind": "Conformance",
|
|
"name": "CustomReflectable",
|
|
"printedName": "CustomReflectable",
|
|
"usr": "s:s17CustomReflectableP"
|
|
},
|
|
{
|
|
"kind": "Conformance",
|
|
"name": "SIMDScalar",
|
|
"printedName": "SIMDScalar",
|
|
"children": [
|
|
{
|
|
"kind": "TypeWitness",
|
|
"name": "SIMDMaskScalar",
|
|
"printedName": "SIMDMaskScalar",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNameAlias",
|
|
"name": "SIMDMaskScalar",
|
|
"printedName": "Int.SIMDMaskScalar",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "Int",
|
|
"printedName": "Int",
|
|
"usr": "s:Si"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"kind": "TypeWitness",
|
|
"name": "SIMD2Storage",
|
|
"printedName": "SIMD2Storage",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "SIMD2Storage",
|
|
"printedName": "Int.SIMD2Storage",
|
|
"usr": "s:Si12SIMD2StorageV"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"kind": "TypeWitness",
|
|
"name": "SIMD4Storage",
|
|
"printedName": "SIMD4Storage",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "SIMD4Storage",
|
|
"printedName": "Int.SIMD4Storage",
|
|
"usr": "s:Si12SIMD4StorageV"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"kind": "TypeWitness",
|
|
"name": "SIMD8Storage",
|
|
"printedName": "SIMD8Storage",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "SIMD8Storage",
|
|
"printedName": "Int.SIMD8Storage",
|
|
"usr": "s:Si12SIMD8StorageV"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"kind": "TypeWitness",
|
|
"name": "SIMD16Storage",
|
|
"printedName": "SIMD16Storage",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "SIMD16Storage",
|
|
"printedName": "Int.SIMD16Storage",
|
|
"usr": "s:Si13SIMD16StorageV"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"kind": "TypeWitness",
|
|
"name": "SIMD32Storage",
|
|
"printedName": "SIMD32Storage",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "SIMD32Storage",
|
|
"printedName": "Int.SIMD32Storage",
|
|
"usr": "s:Si13SIMD32StorageV"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"kind": "TypeWitness",
|
|
"name": "SIMD64Storage",
|
|
"printedName": "SIMD64Storage",
|
|
"children": [
|
|
{
|
|
"kind": "TypeNominal",
|
|
"name": "SIMD64Storage",
|
|
"printedName": "Int.SIMD64Storage",
|
|
"usr": "s:Si13SIMD64StorageV"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"usr": "s:s10SIMDScalarP"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
} |