bazel syntax: rename ParserInput{Source,}
Also:
- make it concrete and final
- hide the getContent method, to allow the possibility of a scanner
using code points or UTF-8 bytes, not UTF-16 chars.
This is necessarily a breaking API change for copybara.
RELNOTES: N/A
PiperOrigin-RevId: 269623736
diff --git a/src/test/java/com/google/devtools/build/lib/bazel/repository/skylark/SkylarkRepositoryContextTest.java b/src/test/java/com/google/devtools/build/lib/bazel/repository/skylark/SkylarkRepositoryContextTest.java
index 278e659..eb6cbe5 100644
--- a/src/test/java/com/google/devtools/build/lib/bazel/repository/skylark/SkylarkRepositoryContextTest.java
+++ b/src/test/java/com/google/devtools/build/lib/bazel/repository/skylark/SkylarkRepositoryContextTest.java
@@ -39,7 +39,7 @@
import com.google.devtools.build.lib.syntax.EvalException;
import com.google.devtools.build.lib.syntax.Expression;
import com.google.devtools.build.lib.syntax.FuncallExpression;
-import com.google.devtools.build.lib.syntax.ParserInputSource;
+import com.google.devtools.build.lib.syntax.ParserInput;
import com.google.devtools.build.lib.testutil.Scratch;
import com.google.devtools.build.lib.testutil.TestConstants;
import com.google.devtools.build.lib.vfs.Path;
@@ -102,7 +102,7 @@
RootedPath.toRootedPath(root, workspaceFile),
"runfiles");
ExtendedEventHandler listener = Mockito.mock(ExtendedEventHandler.class);
- ParserInputSource input = ParserInputSource.fromLines("test()");
+ ParserInput input = ParserInput.fromLines("test()");
FuncallExpression ast = (FuncallExpression) Expression.parse(input, listener);
Rule rule =
WorkspaceFactoryHelper.createAndAddRepositoryRule(
diff --git a/src/test/java/com/google/devtools/build/lib/packages/PackageFactoryTest.java b/src/test/java/com/google/devtools/build/lib/packages/PackageFactoryTest.java
index bdb9c8f..e88bf80 100644
--- a/src/test/java/com/google/devtools/build/lib/packages/PackageFactoryTest.java
+++ b/src/test/java/com/google/devtools/build/lib/packages/PackageFactoryTest.java
@@ -29,7 +29,7 @@
import com.google.devtools.build.lib.packages.util.PackageFactoryApparatus;
import com.google.devtools.build.lib.packages.util.PackageFactoryTestBase;
import com.google.devtools.build.lib.syntax.BuildFileAST;
-import com.google.devtools.build.lib.syntax.ParserInputSource;
+import com.google.devtools.build.lib.syntax.ParserInput;
import com.google.devtools.build.lib.testutil.TestUtils;
import com.google.devtools.build.lib.vfs.Path;
import com.google.devtools.build.lib.vfs.PathFragment;
@@ -1208,7 +1208,7 @@
GlobPatternExtractor globPatternExtractor = new GlobPatternExtractor();
globPatternExtractor.visit(
BuildFileAST.parse(
- ParserInputSource.fromLines(
+ ParserInput.fromLines(
"pattern = '*'",
"some_variable = glob([",
" '**/*',",
diff --git a/src/test/java/com/google/devtools/build/lib/packages/WorkspaceFactoryTestHelper.java b/src/test/java/com/google/devtools/build/lib/packages/WorkspaceFactoryTestHelper.java
index 2e529bc..910f9ed 100644
--- a/src/test/java/com/google/devtools/build/lib/packages/WorkspaceFactoryTestHelper.java
+++ b/src/test/java/com/google/devtools/build/lib/packages/WorkspaceFactoryTestHelper.java
@@ -21,7 +21,7 @@
import com.google.devtools.build.lib.events.Event;
import com.google.devtools.build.lib.events.StoredEventHandler;
import com.google.devtools.build.lib.syntax.Mutability;
-import com.google.devtools.build.lib.syntax.ParserInputSource;
+import com.google.devtools.build.lib.syntax.ParserInput;
import com.google.devtools.build.lib.syntax.StarlarkSemantics;
import com.google.devtools.build.lib.testutil.TestRuleClassProvider;
import com.google.devtools.build.lib.vfs.FileSystemUtils;
@@ -82,7 +82,7 @@
byte[] bytes =
FileSystemUtils.readWithKnownFileSize(workspaceFilePath, workspaceFilePath.getFileSize());
factory.parseForTesting(
- ParserInputSource.create(bytes, workspaceFilePath.asFragment()),
+ ParserInput.create(bytes, workspaceFilePath.asFragment()),
starlarkSemantics,
eventHandler);
} catch (BuildFileContainsErrorsException e) {
diff --git a/src/test/java/com/google/devtools/build/lib/packages/util/PackageFactoryApparatus.java b/src/test/java/com/google/devtools/build/lib/packages/util/PackageFactoryApparatus.java
index 7919033..cc33b98 100644
--- a/src/test/java/com/google/devtools/build/lib/packages/util/PackageFactoryApparatus.java
+++ b/src/test/java/com/google/devtools/build/lib/packages/util/PackageFactoryApparatus.java
@@ -33,7 +33,7 @@
import com.google.devtools.build.lib.packages.StarlarkSemanticsOptions;
import com.google.devtools.build.lib.syntax.BuildFileAST;
import com.google.devtools.build.lib.syntax.Environment.Extension;
-import com.google.devtools.build.lib.syntax.ParserInputSource;
+import com.google.devtools.build.lib.syntax.ParserInput;
import com.google.devtools.build.lib.syntax.StarlarkSemantics;
import com.google.devtools.build.lib.testutil.TestRuleClassProvider;
import com.google.devtools.build.lib.testutil.TestUtils;
@@ -141,7 +141,7 @@
*/
public BuildFileAST ast(Path buildFile) throws IOException {
byte[] bytes = FileSystemUtils.readWithKnownFileSize(buildFile, buildFile.getFileSize());
- ParserInputSource input = ParserInputSource.create(bytes, buildFile.asFragment());
+ ParserInput input = ParserInput.create(bytes, buildFile.asFragment());
return BuildFileAST.parse(input, eventHandler);
}
diff --git a/src/test/java/com/google/devtools/build/lib/skylark/SkylarkRuleClassFunctionsTest.java b/src/test/java/com/google/devtools/build/lib/skylark/SkylarkRuleClassFunctionsTest.java
index ee94110..1a4b40a 100644
--- a/src/test/java/com/google/devtools/build/lib/skylark/SkylarkRuleClassFunctionsTest.java
+++ b/src/test/java/com/google/devtools/build/lib/skylark/SkylarkRuleClassFunctionsTest.java
@@ -53,7 +53,7 @@
import com.google.devtools.build.lib.syntax.Environment;
import com.google.devtools.build.lib.syntax.EvalException;
import com.google.devtools.build.lib.syntax.EvalUtils;
-import com.google.devtools.build.lib.syntax.ParserInputSource;
+import com.google.devtools.build.lib.syntax.ParserInput;
import com.google.devtools.build.lib.syntax.SkylarkDict;
import com.google.devtools.build.lib.syntax.SkylarkList.MutableList;
import com.google.devtools.build.lib.syntax.SkylarkList.Tuple;
@@ -703,7 +703,7 @@
}
protected void evalAndExport(String... lines) throws Exception {
- ParserInputSource input = ParserInputSource.fromLines(lines);
+ ParserInput input = ParserInput.fromLines(lines);
BuildFileAST file = BuildFileAST.parseAndValidateSkylark(input, ev.getEnvironment());
SkylarkImportLookupFunction.execAndExport(
file, FAKE_LABEL, ev.getEventHandler(), ev.getEnvironment());
diff --git a/src/test/java/com/google/devtools/build/lib/skylark/SkylarkRuleImplementationFunctionsTest.java b/src/test/java/com/google/devtools/build/lib/skylark/SkylarkRuleImplementationFunctionsTest.java
index 78ab2ed..ff354c5 100644
--- a/src/test/java/com/google/devtools/build/lib/skylark/SkylarkRuleImplementationFunctionsTest.java
+++ b/src/test/java/com/google/devtools/build/lib/skylark/SkylarkRuleImplementationFunctionsTest.java
@@ -823,7 +823,7 @@
* parameter of the template_action function contains a hack that assumes its input is a UTF-8
* encoded string which has been ingested as Latin 1. The hack converts the string to its
* "correct" UTF-8 value. Once {@link
- * com.google.devtools.build.lib.syntax.ParserInputSource#create(byte[],
+ * com.google.devtools.build.lib.syntax.ParserInput#create(byte[],
* com.google.devtools.build.lib.vfs.PathFragment)} parses files using UTF-8 and the hack for the
* substituations parameter is removed, this test will fail.
*/
diff --git a/src/test/java/com/google/devtools/build/lib/skylarkdebug/server/SkylarkDebugServerTest.java b/src/test/java/com/google/devtools/build/lib/skylarkdebug/server/SkylarkDebugServerTest.java
index f082f4e..4d98f40 100644
--- a/src/test/java/com/google/devtools/build/lib/skylarkdebug/server/SkylarkDebugServerTest.java
+++ b/src/test/java/com/google/devtools/build/lib/skylarkdebug/server/SkylarkDebugServerTest.java
@@ -41,7 +41,7 @@
import com.google.devtools.build.lib.syntax.Environment;
import com.google.devtools.build.lib.syntax.EvalUtils;
import com.google.devtools.build.lib.syntax.Mutability;
-import com.google.devtools.build.lib.syntax.ParserInputSource;
+import com.google.devtools.build.lib.syntax.ParserInput;
import com.google.devtools.build.lib.syntax.Runtime;
import com.google.devtools.build.lib.syntax.SkylarkList;
import com.google.devtools.build.lib.testutil.Scratch;
@@ -766,7 +766,7 @@
private BuildFileAST parseBuildFile(String path, String... lines) throws IOException {
Path file = scratch.file(path, lines);
byte[] bytes = FileSystemUtils.readWithKnownFileSize(file, file.getFileSize());
- ParserInputSource inputSource = ParserInputSource.create(bytes, file.asFragment());
+ ParserInput inputSource = ParserInput.create(bytes, file.asFragment());
return BuildFileAST.parse(inputSource, events.reporter());
}
diff --git a/src/test/java/com/google/devtools/build/lib/syntax/BuildFileASTTest.java b/src/test/java/com/google/devtools/build/lib/syntax/BuildFileASTTest.java
index 505e366..87bb632 100644
--- a/src/test/java/com/google/devtools/build/lib/syntax/BuildFileASTTest.java
+++ b/src/test/java/com/google/devtools/build/lib/syntax/BuildFileASTTest.java
@@ -47,7 +47,7 @@
private BuildFileAST parseBuildFile(String... lines) throws IOException {
Path file = scratch.file("/a/build/file/BUILD", lines);
byte[] bytes = FileSystemUtils.readWithKnownFileSize(file, file.getFileSize());
- ParserInputSource input = ParserInputSource.create(bytes, file.asFragment());
+ ParserInput input = ParserInput.create(bytes, file.asFragment());
return BuildFileAST.parse(input, getEventHandler());
}
diff --git a/src/test/java/com/google/devtools/build/lib/syntax/EnvironmentDebuggingTest.java b/src/test/java/com/google/devtools/build/lib/syntax/EnvironmentDebuggingTest.java
index 2c87598..f7d803d 100644
--- a/src/test/java/com/google/devtools/build/lib/syntax/EnvironmentDebuggingTest.java
+++ b/src/test/java/com/google/devtools/build/lib/syntax/EnvironmentDebuggingTest.java
@@ -190,7 +190,7 @@
Environment env = newEnvironment();
env.update("a", 1);
- Object result = env.debugEval(ParserInputSource.create("a", null));
+ Object result = env.debugEval(ParserInput.create("a", null));
assertThat(result).isEqualTo(1);
}
@@ -201,7 +201,7 @@
env.update("a", 1);
EvalException e =
- assertThrows(EvalException.class, () -> env.debugEval(ParserInputSource.create("b", null)));
+ assertThrows(EvalException.class, () -> env.debugEval(ParserInput.create("b", null)));
assertThat(e).hasMessageThat().isEqualTo("name 'b' is not defined");
}
@@ -211,12 +211,12 @@
env.update("a", "string");
Object result =
- env.debugEval(ParserInputSource.create("a.startswith('str')", PathFragment.EMPTY_FRAGMENT));
+ env.debugEval(ParserInput.create("a.startswith('str')", PathFragment.EMPTY_FRAGMENT));
assertThat(result).isEqualTo(Boolean.TRUE);
- env.debugExec(ParserInputSource.create("a = 1", PathFragment.EMPTY_FRAGMENT));
+ env.debugExec(ParserInput.create("a = 1", PathFragment.EMPTY_FRAGMENT));
- result = env.debugEval(ParserInputSource.create("a", PathFragment.EMPTY_FRAGMENT));
+ result = env.debugEval(ParserInput.create("a", PathFragment.EMPTY_FRAGMENT));
assertThat(result).isEqualTo(1);
}
}
diff --git a/src/test/java/com/google/devtools/build/lib/syntax/EnvironmentTest.java b/src/test/java/com/google/devtools/build/lib/syntax/EnvironmentTest.java
index 2c1f926..5be58ad 100644
--- a/src/test/java/com/google/devtools/build/lib/syntax/EnvironmentTest.java
+++ b/src/test/java/com/google/devtools/build/lib/syntax/EnvironmentTest.java
@@ -190,7 +190,7 @@
@Test
public void testBuiltinsCanBeShadowed() throws Exception {
Environment env = newEnvironmentWithSkylarkOptions().setup("special_var", 42);
- BuildFileAST.eval(ParserInputSource.fromLines("special_var = 41"), env);
+ BuildFileAST.eval(ParserInput.fromLines("special_var = 41"), env);
assertThat(env.moduleLookup("special_var")).isEqualTo(41);
}
@@ -199,8 +199,7 @@
Environment env = newSkylarkEnvironment().update("global_var", 666);
try {
BuildFileAST.eval(
- ParserInputSource.fromLines(
- "def foo(x): x += global_var; global_var = 36; return x", "foo(1)"),
+ ParserInput.fromLines("def foo(x): x += global_var; global_var = 36; return x", "foo(1)"),
env);
throw new AssertionError("failed to fail");
} catch (EvalExceptionWithStackTrace e) {
diff --git a/src/test/java/com/google/devtools/build/lib/syntax/LValueBoundNamesTest.java b/src/test/java/com/google/devtools/build/lib/syntax/LValueBoundNamesTest.java
index 8832f9c..6be86ce 100644
--- a/src/test/java/com/google/devtools/build/lib/syntax/LValueBoundNamesTest.java
+++ b/src/test/java/com/google/devtools/build/lib/syntax/LValueBoundNamesTest.java
@@ -51,7 +51,7 @@
}
private static void assertBoundNames(String assignment, String... expectedBoundNames) {
- ParserInputSource input = ParserInputSource.fromLines(assignment);
+ ParserInput input = ParserInput.fromLines(assignment);
BuildFileAST file = BuildFileAST.parse(input, Environment.FAIL_FAST_HANDLER);
Expression lhs = ((AssignmentStatement) file.getStatements().get(0)).getLHS();
Set<String> boundNames =
diff --git a/src/test/java/com/google/devtools/build/lib/syntax/LexerTest.java b/src/test/java/com/google/devtools/build/lib/syntax/LexerTest.java
index 77d237a..74bba9b 100644
--- a/src/test/java/com/google/devtools/build/lib/syntax/LexerTest.java
+++ b/src/test/java/com/google/devtools/build/lib/syntax/LexerTest.java
@@ -42,7 +42,7 @@
*/
private Lexer createLexer(String input) {
PathFragment somePath = PathFragment.create("/some/path.txt");
- ParserInputSource inputSource = ParserInputSource.create(input, somePath);
+ ParserInput inputSource = ParserInput.create(input, somePath);
Reporter reporter = new Reporter(new EventBus());
reporter.addHandler(new EventHandler() {
@Override
diff --git a/src/test/java/com/google/devtools/build/lib/syntax/NodeVisitorTest.java b/src/test/java/com/google/devtools/build/lib/syntax/NodeVisitorTest.java
index 09d1a62..1310076 100644
--- a/src/test/java/com/google/devtools/build/lib/syntax/NodeVisitorTest.java
+++ b/src/test/java/com/google/devtools/build/lib/syntax/NodeVisitorTest.java
@@ -27,7 +27,7 @@
public final class NodeVisitorTest {
private BuildFileAST parse(String... lines) throws IOException {
- ParserInputSource input = ParserInputSource.fromLines(lines);
+ ParserInput input = ParserInput.fromLines(lines);
return BuildFileAST.parse(input, Environment.FAIL_FAST_HANDLER);
}
diff --git a/src/test/java/com/google/devtools/build/lib/syntax/ParserInputSourceTest.java b/src/test/java/com/google/devtools/build/lib/syntax/ParserInputTest.java
similarity index 81%
rename from src/test/java/com/google/devtools/build/lib/syntax/ParserInputSourceTest.java
rename to src/test/java/com/google/devtools/build/lib/syntax/ParserInputTest.java
index ce90e28..7871fb2 100644
--- a/src/test/java/com/google/devtools/build/lib/syntax/ParserInputSourceTest.java
+++ b/src/test/java/com/google/devtools/build/lib/syntax/ParserInputTest.java
@@ -26,9 +26,9 @@
import org.junit.runner.RunWith;
import org.junit.runners.JUnit4;
-/** A test case for {@link ParserInputSource}. */
+/** A test case for {@link ParserInput}. */
@RunWith(JUnit4.class)
-public class ParserInputSourceTest {
+public class ParserInputTest {
private Scratch scratch = new Scratch();
@@ -37,7 +37,7 @@
String content = joinLines("Line 1", "Line 2", "Line 3", "");
Path file = scratch.file("/tmp/my/file.txt", content.getBytes(StandardCharsets.UTF_8));
byte[] bytes = FileSystemUtils.readWithKnownFileSize(file, file.getFileSize());
- ParserInputSource input = ParserInputSource.create(bytes, file.asFragment());
+ ParserInput input = ParserInput.create(bytes, file.asFragment());
assertThat(new String(input.getContent())).isEqualTo(content);
assertThat(input.getPath().toString()).isEqualTo("/tmp/my/file.txt");
}
@@ -46,7 +46,7 @@
public void testCreateFromString() {
String content = "Content provided as a string.";
String pathName = "/the/name/of/the/content.txt";
- ParserInputSource input = ParserInputSource.create(content, PathFragment.create(pathName));
+ ParserInput input = ParserInput.create(content, PathFragment.create(pathName));
assertThat(new String(input.getContent())).isEqualTo(content);
assertThat(input.getPath().toString()).isEqualTo(pathName);
}
@@ -56,20 +56,19 @@
String content = "Content provided as a string.";
String pathName = "/the/name/of/the/content.txt";
char[] contentChars = content.toCharArray();
- ParserInputSource input = ParserInputSource.create(contentChars, PathFragment.create(pathName));
+ ParserInput input = ParserInput.create(contentChars, PathFragment.create(pathName));
assertThat(new String(input.getContent())).isEqualTo(content);
assertThat(input.getPath().toString()).isEqualTo(pathName);
}
@Test
public void testWillNotTryToReadInputFileIfContentProvidedAsString() {
- ParserInputSource.create(
- "Content provided as string.", PathFragment.create("/will/not/try/to/read"));
+ ParserInput.create("Content provided as string.", PathFragment.create("/will/not/try/to/read"));
}
@Test
public void testWillNotTryToReadInputFileIfContentProvidedAsChars() {
char[] content = "Content provided as char array.".toCharArray();
- ParserInputSource.create(content, PathFragment.create("/will/not/try/to/read"));
+ ParserInput.create(content, PathFragment.create("/will/not/try/to/read"));
}
}
diff --git a/src/test/java/com/google/devtools/build/lib/syntax/ParserTest.java b/src/test/java/com/google/devtools/build/lib/syntax/ParserTest.java
index 349aaae..36ef855 100644
--- a/src/test/java/com/google/devtools/build/lib/syntax/ParserTest.java
+++ b/src/test/java/com/google/devtools/build/lib/syntax/ParserTest.java
@@ -37,7 +37,7 @@
// Joins the lines, parses, and returns the file. No validation.
private BuildFileAST parseFileWithComments(String... lines) {
- ParserInputSource input = ParserInputSource.fromLines(lines);
+ ParserInput input = ParserInput.fromLines(lines);
return BuildFileAST.parse(input, getEventHandler());
}
diff --git a/src/test/java/com/google/devtools/build/lib/syntax/util/EvaluationTestCase.java b/src/test/java/com/google/devtools/build/lib/syntax/util/EvaluationTestCase.java
index 37a7ce8..44fa80c 100644
--- a/src/test/java/com/google/devtools/build/lib/syntax/util/EvaluationTestCase.java
+++ b/src/test/java/com/google/devtools/build/lib/syntax/util/EvaluationTestCase.java
@@ -33,7 +33,7 @@
import com.google.devtools.build.lib.syntax.EvalException;
import com.google.devtools.build.lib.syntax.Expression;
import com.google.devtools.build.lib.syntax.Mutability;
-import com.google.devtools.build.lib.syntax.ParserInputSource;
+import com.google.devtools.build.lib.syntax.ParserInput;
import com.google.devtools.build.lib.syntax.SkylarkUtils;
import com.google.devtools.build.lib.syntax.SkylarkUtils.Phase;
import com.google.devtools.build.lib.syntax.Statement;
@@ -159,7 +159,7 @@
}
protected final BuildFileAST parseBuildFileASTWithoutValidation(String... lines) {
- ParserInputSource input = ParserInputSource.fromLines(lines);
+ ParserInput input = ParserInput.fromLines(lines);
return BuildFileAST.parse(input, getEventHandler());
}
@@ -183,7 +183,7 @@
/** Parses an expression. */
protected final Expression parseExpression(String... lines) {
- return Expression.parse(ParserInputSource.fromLines(lines), getEventHandler());
+ return Expression.parse(ParserInput.fromLines(lines), getEventHandler());
}
public EvaluationTestCase update(String varname, Object value) throws Exception {
@@ -196,7 +196,7 @@
}
public Object eval(String... lines) throws Exception {
- ParserInputSource input = ParserInputSource.fromLines(lines);
+ ParserInput input = ParserInput.fromLines(lines);
if (testMode == TestMode.SKYLARK) {
// TODO(adonovan): inline this call and factor with 'else' case.
return BuildFileAST.eval(input, env);
diff --git a/src/test/java/com/google/devtools/build/skydoc/SkydocTest.java b/src/test/java/com/google/devtools/build/skydoc/SkydocTest.java
index fba1bdc..b71d34b0 100644
--- a/src/test/java/com/google/devtools/build/skydoc/SkydocTest.java
+++ b/src/test/java/com/google/devtools/build/skydoc/SkydocTest.java
@@ -22,7 +22,7 @@
import com.google.common.collect.Iterables;
import com.google.devtools.build.lib.cmdline.Label;
import com.google.devtools.build.lib.skylark.util.SkylarkTestCase;
-import com.google.devtools.build.lib.syntax.ParserInputSource;
+import com.google.devtools.build.lib.syntax.ParserInput;
import com.google.devtools.build.lib.syntax.StarlarkFunction;
import com.google.devtools.build.lib.syntax.StarlarkSemantics;
import com.google.devtools.build.lib.vfs.FileSystemUtils;
@@ -60,10 +60,10 @@
new SkylarkFileAccessor() {
@Override
- public ParserInputSource inputSource(String pathString) throws IOException {
+ public ParserInput inputSource(String pathString) throws IOException {
Path path = fileSystem.getPath("/" + pathString);
byte[] bytes = FileSystemUtils.asByteSource(path).read();
- return ParserInputSource.create(bytes, path.asFragment());
+ return ParserInput.create(bytes, path.asFragment());
}
@Override