class A {}

class C extends A {}

extension on C {
addChild(A child) {}
}


class[KeywordToken] A[StringToken] {[BeginToken]}[SimpleToken]

class[KeywordToken] C[StringToken] extends[KeywordToken] A[StringToken] {[BeginToken]}[SimpleToken]

extension[KeywordToken] on[KeywordToken] C[StringToken] {[BeginToken]
addChild[StringToken]([BeginToken]A[StringToken] child[StringToken])[SimpleToken] {[BeginToken]}[SimpleToken]
}[SimpleToken]
[SimpleToken]
