private void addAbstractMethod ( ClassSymbol c , MethodSymbol m ) { MethodSymbol absMeth = new MethodSymbol ( m . flags ( ) | IPROXY | SYNTHETIC , m . name , m . type , // was c.type.memberType(m), but now only !generics supported c ) ; c . members ( ) . enter ( absMeth ) ; // add to symbol table }
Add an abstract methods to a class which implicitly implements a method defined in some interface implemented by the class . These methods are called Miranda methods . Enter the newly created method into its enclosing class scope . Note that it is not entered into the class tree as the emitter doesn t need to see it there to emit an abstract method .