Cleanup and refactor RuleErrorConsumer.

This removes the need for AbstractRuleErrorConsumer, and moves the logic of the post() method of RuleContext into RuleContext proper, as it circumvents normal error handling flows.

RELNOTES: None.
PiperOrigin-RevId: 215627666
diff --git a/src/test/java/com/google/devtools/build/lib/analysis/LocationExpanderTest.java b/src/test/java/com/google/devtools/build/lib/analysis/LocationExpanderTest.java
index 92f5616..77db2ba 100644
--- a/src/test/java/com/google/devtools/build/lib/analysis/LocationExpanderTest.java
+++ b/src/test/java/com/google/devtools/build/lib/analysis/LocationExpanderTest.java
@@ -19,7 +19,6 @@
 import com.google.common.collect.ImmutableMap;
 import com.google.devtools.build.lib.analysis.LocationExpander.LocationFunction;
 import com.google.devtools.build.lib.cmdline.RepositoryName;
-import com.google.devtools.build.lib.packages.AbstractRuleErrorConsumer;
 import com.google.devtools.build.lib.packages.RuleErrorConsumer;
 import java.util.ArrayList;
 import java.util.List;
@@ -30,8 +29,7 @@
 /** Unit tests for {@link LocationExpander}. */
 @RunWith(JUnit4.class)
 public class LocationExpanderTest {
-  private static final class Capture extends AbstractRuleErrorConsumer
-      implements RuleErrorConsumer {
+  private static final class Capture implements RuleErrorConsumer {
     private final List<String> warnsOrErrors = new ArrayList<>();
 
     @Override