import org.jetbrains.plugins.groovy.lang.parser.parsing.statements.declaration.Declaration;
import org.jetbrains.plugins.groovy.lang.parser.parsing.statements.typeDefinitions.TypeDefinition;
import org.jetbrains.plugins.groovy.lang.parser.parsing.types.TypeDeclarationStart;
import org.jetbrains.plugins.groovy.lang.parser.parsing.util.ParserUtils;
public class ClassMember implements GroovyElementTypes {
<BUG>public static IElementType parse(PsiBuilder builder, String className) {
PsiBuilder.Marker constructorMarker = builder.mark();
GroovyElementType constructorDef = ConstructorDefinition.parse(builder, className);
if (WRONGWAY.equals(constructorDef)) {
constructorMarker.rollbackTo();
} else {
constructorMarker.done(constructorDef);
return constructorDef;
}</BUG>
PsiBuilder.Marker declMarker = builder.mark();

import org.jetbrains.plugins.groovy.lang.parser.parsing.statements.declaration.Declaration;
import org.jetbrains.plugins.groovy.lang.parser.parsing.statements.typeDefinitions.TypeDefinition;
import org.jetbrains.plugins.groovy.lang.parser.parsing.types.TypeDeclarationStart;
import org.jetbrains.plugins.groovy.lang.parser.parsing.util.ParserUtils;
public class ClassMember implements GroovyElementTypes {
public static IElementType parse(PsiBuilder builder, String className) {
if (ConstructorDefinition.parse(builder, className)) return CONSTRUCTOR_DEFINITION;
PsiBuilder.Marker declMarker = builder.mark();
GroovyElementType declType = Declaration.parse(builder, true);
if (WRONGWAY.equals(declType)) {
declMarker.rollbackTo();
