public void unusedPrivateField(FieldDeclaration fieldDecl) {

	int severity = computeSeverity(IProblem.UnusedPrivateField);
	if (severity == ProblemSeverities.Ignore) return;

	FieldBinding field = fieldDecl.binding;

	this.handle(
			IProblem.UnusedPrivateField,
		new String[] {
			new String(field.declaringClass.readableName()),
			new String(field.name),
		 },
		new String[] {
			new String(field.declaringClass.shortReadableName()),
			new String(field.name),
		 },
		 ProblemSeverities.Ignore,
		nodeSourceStart(field, fieldDecl),
		nodeSourceEnd(field, fieldDecl));
}
//public void unusedPrivateMethod(AbstractMethodDeclaration methodDecl) {
//
//	int severity = computeSeverity(IProblem.UnusedPrivateMethod);
//	if (severity == ProblemSeverities.Ignore) return;
//
//	MethodBinding method = methodDecl.binding;
//	char[] methodSelector = method.selector;
//	if(methodSelector == null)
//		methodSelector = methodDecl.getSafeName();
//
//	// no report for serialization support 'Object readResolve()'
//	if (!method.isStatic()
//			&& TypeIds.T_JavaLangObject == method.returnType.id
//			&& method.parameters.length == 0
//			&& CharOperation.equals(methodSelector, TypeConstants.READRESOLVE)) {
//		return;
//	}
//	// no report for serialization support 'Object writeReplace()'
//	if (!method.isStatic()
//			&& TypeIds.T_JavaLangObject == method.returnType.id
//			&& method.parameters.length == 0
//			&& CharOperation.equals(methodSelector, TypeConstants.WRITEREPLACE)) {
//		return;
//	}
//	this.handle(
//			IProblem.UnusedPrivateMethod,
//		new String[] {
//			new String(method.declaringClass.readableName()),
//			new String(methodSelector),
//			typesAsString(method.isVarargs(), method.parameters, false)
//		 },
//		new String[] {
//			new String(method.declaringClass.shortReadableName()),
//			new String(methodSelector),
//			typesAsString(method.isVarargs(), method.parameters, true)
//		 },
//		 ProblemSeverities.Ignore,
//		methodDecl.sourceStart,
//		methodDecl.sourceEnd);
//}
//public void unusedPrivateType(TypeDeclaration typeDecl) {
//	int severity = computeSeverity(IProblem.UnusedPrivateType);
//	if (severity == ProblemSeverities.Ignore) return;
//
//	ReferenceBinding type = typeDecl.binding;
//	this.handle(
//			IProblem.UnusedPrivateType,
//		new String[] {
//			new String(type.readableName()),
//		 },
//		new String[] {
//			new String(type.shortReadableName()),
//		 },
//		 ProblemSeverities.Ignore,
//		typeDecl.sourceStart,
//		typeDecl.sourceEnd);
//}
//public void visibilityConflict(MethodBinding currentMethod, MethodBinding inheritedMethod) {
//	this.handle(
//		//	Cannot reduce the visibility of the inherited method from %1
//		// 8.4.6.3 - The access modifier of an hiding method must provide at least as much access as the hidden method.
//		// 8.4.6.3 - The access modifier of an overiding method must provide at least as much access as the overriden method.
//		IProblem.MethodReducesVisibility,
//		new String[] {new String(inheritedMethod.declaringClass.readableName())},
//		new String[] {new String(inheritedMethod.declaringClass.shortReadableName())},
//		ProblemSeverities.Ignore,
//		currentMethod.sourceStart(),
//		currentMethod.sourceEnd());
//}