[ Class( Class { start: ( 3, 1, ), end: ( 7, 1, ), name: SimpleIdentifier { span: ( 3, 7, ), name: "Foo2", }, extends: None, implements: None, attributes: [], members: [ TraitUsage( TraitUsage { traits: [ SimpleIdentifier { span: ( 4, 9, ), name: "B", }, ], adaptations: [ Alias { trait: None, method: SimpleIdentifier { span: ( 5, 9, ), name: "foo", }, alias: SimpleIdentifier { span: ( 5, 26, ), name: "bar", }, visibility: Some( Protected { start: ( 5, 16, ), end: ( 5, 26, ), }, ), }, ], }, ), ], }, ), Class( Class { start: ( 9, 1, ), end: ( 14, 1, ), name: SimpleIdentifier { span: ( 9, 7, ), name: "Bar2", }, extends: None, implements: None, attributes: [], members: [ TraitUsage( TraitUsage { traits: [ SimpleIdentifier { span: ( 10, 9, ), name: "B", }, SimpleIdentifier { span: ( 11, 9, ), name: "C", }, ], adaptations: [ Precedence { trait: Some( SimpleIdentifier { span: ( 12, 13, ), name: "B", }, ), method: SimpleIdentifier { span: ( 12, 16, ), name: "foo", }, insteadof: [ SimpleIdentifier { span: ( 12, 30, ), name: "C", }, ], }, ], }, ), ], }, ), Class( Class { start: ( 16, 1, ), end: ( 18, 1, ), name: SimpleIdentifier { span: ( 16, 7, ), name: "Bar3", }, extends: None, implements: None, attributes: [], members: [ TraitUsage( TraitUsage { traits: [ SimpleIdentifier { span: ( 17, 9, ), name: "B", }, ], adaptations: [ Alias { trait: Some( SimpleIdentifier { span: ( 17, 13, ), name: "B", }, ), method: SimpleIdentifier { span: ( 17, 16, ), name: "foo", }, alias: SimpleIdentifier { span: ( 17, 23, ), name: "bar", }, visibility: None, }, ], }, ), ], }, ), Class( Class { start: ( 20, 1, ), end: ( 22, 1, ), name: SimpleIdentifier { span: ( 20, 7, ), name: "Bar4", }, extends: None, implements: None, attributes: [], members: [ TraitUsage( TraitUsage { traits: [ SimpleIdentifier { span: ( 21, 9, ), name: "B", }, ], adaptations: [ Alias { trait: None, method: SimpleIdentifier { span: ( 21, 13, ), name: "foo", }, alias: SimpleIdentifier { span: ( 21, 20, ), name: "bar", }, visibility: None, }, ], }, ), ], }, ), ]