A method's body can't contain empty lines (i.e. \par's).
For example, the following plain TeX manuscript
\input pgf.tex %
\usepgfmodule{oo}%
\pgfooclass{C}{
\method m(){
}
}%
\bye
throws the error
Runaway argument?
{
! Paragraph ended before \method was complete.
<to be read again>
\par
<argument> \method m(){ \par
}
\pgfooclass@ ... \pgfoo@methods =\pgfutil@empty #3
\def \pgfoo@temp@baseclass...
l.7 }
%
The reason is that the \pgfoo@declaremethod macro in modules/pgfmoduleoo.code.tex is not defined as \long.
If this is the intended behavior, then it needs to be stated in the manual.
Thank you for reporting. This is incorporated now.