test_class.declarator: EOL = System.lineSeparator()
test_class.modifier: private static final
test_class.original_string: private static final String EOL = System.lineSeparator();
test_class.type: String
test_class.var_name: EOL
test_class.file: tycho-compiler-jdt/src/test/java/org/eclipse/tycho/compiler/jdt/JDTCompilerTest.java
test_class.identifier: JDTCompilerTest
test_case.body: @Test
      public void testParseModernStreamContextLines() throws IOException {
          List<CompilerMessage> messages = JDTCompiler.parseModernStream(createOutputForLines(
                  "prologue (must be discarded)", "1. ERROR in foo bar (at line 3) ", "message line1", "message line2"));
          assertEquals(1, messages.size());
          CompilerMessage error = messages.get(0);
          assertEquals(EOL + "message line1" + EOL + "message line2", error.getMessage());
      }
test_case.class_method_signature: JDTCompilerTest.testParseModernStreamContextLines()
test_case.full_signature: @Test public void testParseModernStreamContextLines()
test_case.identifier: testParseModernStreamContextLines
test_case.invocations: parseModernStream createOutputForLines assertEquals size get assertEquals getMessage
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void testParseModernStreamContextLines()
focal_class.declarator: SEPARATOR = "----------"
focal_class.modifier: private static final
focal_class.original_string: private static final String SEPARATOR = "----------";
focal_class.type: String
focal_class.var_name: SEPARATOR
focal_class.declarator: SEPARATOR_CHARS = new char[] { '/', '\\' }
focal_class.modifier: private static final
focal_class.original_string: private static final char[] SEPARATOR_CHARS = new char[] { '/', '\\' };
focal_class.type: char[]
focal_class.var_name: SEPARATOR_CHARS
focal_class.declarator: ADAPTER_PREFIX = "#ADAPTER#".toCharArray()
focal_class.modifier: private static final
focal_class.original_string: private static final char[] ADAPTER_PREFIX = "#ADAPTER#".toCharArray();
focal_class.type: char[]
focal_class.var_name: ADAPTER_PREFIX
focal_class.declarator: ADAPTER_ENCODING = "ENCODING#".toCharArray()
focal_class.modifier: private static final
focal_class.original_string: private static final char[] ADAPTER_ENCODING = "ENCODING#".toCharArray();
focal_class.type: char[]
focal_class.var_name: ADAPTER_ENCODING
focal_class.declarator: ADAPTER_ACCESS = "ACCESS#".toCharArray()
focal_class.modifier: private static final
focal_class.original_string: private static final char[] ADAPTER_ACCESS = "ACCESS#".toCharArray();
focal_class.type: char[]
focal_class.var_name: ADAPTER_ACCESS
focal_class.declarator: LINE_PATTERN = Pattern
              .compile("(?:(\\d*)\\. )?(ERROR|WARNING) in (.*?)( \\(at line (\\d+)\\))?\\s*")
focal_class.modifier: static final
focal_class.original_string: static final Pattern LINE_PATTERN = Pattern
              .compile("(?:(\\d*)\\. )?(ERROR|WARNING) in (.*?)( \\(at line (\\d+)\\))?\\s*");
focal_class.type: Pattern
focal_class.var_name: LINE_PATTERN
focal_class.declarator: jdkLibInfoProvider
focal_class.modifier: @Requirement
      private
focal_class.original_string: @Requirement
      private JdkLibraryInfoProvider jdkLibInfoProvider;
focal_class.type: JdkLibraryInfoProvider
focal_class.var_name: jdkLibInfoProvider
focal_class.file: tycho-compiler-jdt/src/main/java/org/eclipse/tycho/compiler/jdt/JDTCompiler.java
focal_class.identifier: JDTCompiler
focal_class.class_method_signature: JDTCompiler.JDTCompiler()
focal_class.full_signature: public  JDTCompiler()
focal_class.identifier: JDTCompiler
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.signature:  JDTCompiler()
focal_class.class_method_signature: JDTCompiler.performCompile(CompilerConfiguration config)
focal_class.full_signature: @Override public CompilerResult performCompile(CompilerConfiguration config)
focal_class.identifier: performCompile
focal_class.modifiers: @Override public
focal_class.parameters: (CompilerConfiguration config)
focal_class.return: CompilerResult
focal_class.signature: CompilerResult performCompile(CompilerConfiguration config)
focal_class.class_method_signature: JDTCompiler.createCommandLine(CompilerConfiguration config)
focal_class.full_signature: @Override public String[] createCommandLine(CompilerConfiguration config)
focal_class.identifier: createCommandLine
focal_class.modifiers: @Override public
focal_class.parameters: (CompilerConfiguration config)
focal_class.return: String[]
focal_class.signature: String[] createCommandLine(CompilerConfiguration config)
focal_class.class_method_signature: JDTCompiler.buildCompilerArguments(CompilerConfiguration config, CustomCompilerConfiguration custom,
              String[] sourceFiles)
focal_class.full_signature: public String[] buildCompilerArguments(CompilerConfiguration config, CustomCompilerConfiguration custom,
              String[] sourceFiles)
focal_class.identifier: buildCompilerArguments
focal_class.modifiers: public
focal_class.parameters: (CompilerConfiguration config, CustomCompilerConfiguration custom,
              String[] sourceFiles)
focal_class.return: String[]
focal_class.signature: String[] buildCompilerArguments(CompilerConfiguration config, CustomCompilerConfiguration custom,
              String[] sourceFiles)
focal_class.class_method_signature: JDTCompiler.suppressSource(CompilerConfiguration config)
focal_class.full_signature: private static boolean suppressSource(CompilerConfiguration config)
focal_class.identifier: suppressSource
focal_class.modifiers: private static
focal_class.parameters: (CompilerConfiguration config)
focal_class.return: boolean
focal_class.signature: boolean suppressSource(CompilerConfiguration config)
focal_class.class_method_signature: JDTCompiler.suppressEncoding(CompilerConfiguration config)
focal_class.full_signature: private static boolean suppressEncoding(CompilerConfiguration config)
focal_class.identifier: suppressEncoding
focal_class.modifiers: private static
focal_class.parameters: (CompilerConfiguration config)
focal_class.return: boolean
focal_class.signature: boolean suppressEncoding(CompilerConfiguration config)
focal_class.class_method_signature: JDTCompiler.compileOutOfProcess(File workingDirectory, String executable, String[] args)
focal_class.full_signature:  CompilerResult compileOutOfProcess(File workingDirectory, String executable, String[] args)
focal_class.identifier: compileOutOfProcess
focal_class.parameters: (File workingDirectory, String executable, String[] args)
focal_class.return: CompilerResult
focal_class.signature: CompilerResult compileOutOfProcess(File workingDirectory, String executable, String[] args)
focal_class.class_method_signature: JDTCompiler.compileInProcess(String[] args, CompilerConfiguration config, CustomCompilerConfiguration custom)
focal_class.full_signature:  CompilerResult compileInProcess(String[] args, CompilerConfiguration config, CustomCompilerConfiguration custom)
focal_class.identifier: compileInProcess
focal_class.parameters: (String[] args, CompilerConfiguration config, CustomCompilerConfiguration custom)
focal_class.return: CompilerResult
focal_class.signature: CompilerResult compileInProcess(String[] args, CompilerConfiguration config, CustomCompilerConfiguration custom)
focal_class.class_method_signature: JDTCompiler.addExternalJavaHomeArgs(List<String> jdtCompilerArgs, String javaHome)
focal_class.full_signature: private void addExternalJavaHomeArgs(List<String> jdtCompilerArgs, String javaHome)
focal_class.identifier: addExternalJavaHomeArgs
focal_class.modifiers: private
focal_class.parameters: (List<String> jdtCompilerArgs, String javaHome)
focal_class.return: void
focal_class.signature: void addExternalJavaHomeArgs(List<String> jdtCompilerArgs, String javaHome)
focal_class.class_method_signature: JDTCompiler.addToCompilerArgumentsIfNotSet(String argument, String value, List<String> compilerArguments)
focal_class.full_signature: private void addToCompilerArgumentsIfNotSet(String argument, String value, List<String> compilerArguments)
focal_class.identifier: addToCompilerArgumentsIfNotSet
focal_class.modifiers: private
focal_class.parameters: (String argument, String value, List<String> compilerArguments)
focal_class.return: void
focal_class.signature: void addToCompilerArgumentsIfNotSet(String argument, String value, List<String> compilerArguments)
focal_class.class_method_signature: JDTCompiler.parseModernStream(BufferedReader input)
focal_class.full_signature: protected static List<CompilerMessage> parseModernStream(BufferedReader input)
focal_class.identifier: parseModernStream
focal_class.modifiers: protected static
focal_class.parameters: (BufferedReader input)
focal_class.return: List<CompilerMessage>
focal_class.signature: List<CompilerMessage> parseModernStream(BufferedReader input)
focal_class.class_method_signature: JDTCompiler.addMessageIfFound(List<CompilerMessage> messages, String type, String file, int line,
              String message)
focal_class.full_signature: private static void addMessageIfFound(List<CompilerMessage> messages, String type, String file, int line,
              String message)
focal_class.identifier: addMessageIfFound
focal_class.modifiers: private static
focal_class.parameters: (List<CompilerMessage> messages, String type, String file, int line,
              String message)
focal_class.return: void
focal_class.signature: void addMessageIfFound(List<CompilerMessage> messages, String type, String file, int line,
              String message)
focal_class.class_method_signature: JDTCompiler.createClasspathArgument(List<String> classpath, CustomCompilerConfiguration custom)
focal_class.full_signature: private String createClasspathArgument(List<String> classpath, CustomCompilerConfiguration custom)
focal_class.identifier: createClasspathArgument
focal_class.modifiers: private
focal_class.parameters: (List<String> classpath, CustomCompilerConfiguration custom)
focal_class.return: String
focal_class.signature: String createClasspathArgument(List<String> classpath, CustomCompilerConfiguration custom)
focal_class.class_method_signature: JDTCompiler.checkCompilerArgs(Collection<Map.Entry<String, String>> argEntries,
              CustomCompilerConfiguration custom)
focal_class.full_signature: private void checkCompilerArgs(Collection<Map.Entry<String, String>> argEntries,
              CustomCompilerConfiguration custom)
focal_class.identifier: checkCompilerArgs
focal_class.modifiers: private
focal_class.parameters: (Collection<Map.Entry<String, String>> argEntries,
              CustomCompilerConfiguration custom)
focal_class.return: void
focal_class.signature: void checkCompilerArgs(Collection<Map.Entry<String, String>> argEntries,
              CustomCompilerConfiguration custom)
focal_class.superclass: extends AbstractCompiler
focal_method.body: protected static List<CompilerMessage> parseModernStream(BufferedReader input) throws IOException {
          List<CompilerMessage> messages = new ArrayList<>();
          String type = null;
          String file = null;
          int lineNr = -1;
          StringBuilder messageBuffer = new StringBuilder();
          for (String line = input.readLine(); line != null; line = input.readLine()) {
              Matcher matcher = LINE_PATTERN.matcher(line);
              if (matcher.matches()) {
                  addMessageIfFound(messages, type, file, lineNr, messageBuffer.toString());
                  /* String errorNr = */matcher.group(1);
                  type = matcher.group(2);
                  file = matcher.group(3);
                  String lineNumberString = matcher.group(5);
                  if (lineNumberString != null) {
                      lineNr = Integer.parseInt(lineNumberString);
                  } else {
                      lineNr = -1;
                  }
                  messageBuffer = new StringBuilder();
              } else {
                  // context line
                  if (!SEPARATOR.equals(line) && line.trim().length() > 0) {
                      messageBuffer.append(EOL).append(line);
                  }
              }
          }
          addMessageIfFound(messages, type, file, lineNr, messageBuffer.toString());
          return messages;
      }
focal_method.class_method_signature: JDTCompiler.parseModernStream(BufferedReader input)
focal_method.full_signature: protected static List<CompilerMessage> parseModernStream(BufferedReader input)
focal_method.identifier: parseModernStream
focal_method.invocations: readLine readLine matcher matches addMessageIfFound toString group group group group parseInt equals length trim append append addMessageIfFound toString
focal_method.modifiers: protected static
focal_method.parameters: (BufferedReader input)
focal_method.return: List<CompilerMessage>
focal_method.signature: List<CompilerMessage> parseModernStream(BufferedReader input)