anchor.diff:          )?
           ( 
             { $declaration = mdef; }
  -          mb=memberBody[$type.type] 
  +          mb=methodBody[$type.type] 
            { mdef.setBlock($mb.block); }
           //-> ^(METHOD_DEFINITION unionType memberName methodParameters memberBody)
           | 
  
positive.code:           { marg.addParameterList($parameters.parameterList); }
          )+
        )?
        memberBody[$type.type]
        { marg.setBlock($memberBody.block); 
          aarg.setBlock($memberBody.block); }
        //-> ^(METHOD_ARGUMENT unionType memberName parameters+ memberBody)
        //-> ^(ATTRIBUTE_ARGUMENT unionType memberName memberBody)      
      ;
  
negative.code:     memoize=false;
  }
  
  @parser::header { package com.redhat.ceylon.compiler.typechecker.parser;
                    import com.redhat.ceylon.compiler.typechecker.tree.Node;
                    import static com.redhat.ceylon.compiler.typechecker.tree.CustomTree.*; }
  @lexer::header { package com.redhat.ceylon.compiler.typechecker.parser; }
  
  