com.sonar.sslr.impl.Parser类的使用及代码示例

x33g5p2x  于2022-01-26 转载在 其他  
字(6.1k)|赞(0)|评价(0)|浏览(171)

本文整理了Java中com.sonar.sslr.impl.Parser类的一些代码示例,展示了Parser类的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Parser类的具体详情如下:
包路径:com.sonar.sslr.impl.Parser
类名称:Parser

Parser介绍

[英]To create a new instance of this class use Parser#builder(Grammar).

This class is not intended to be instantiated or subclassed by clients.
[中]要创建此类的新实例,请使用Parser#builder(Grammar)
该类不打算由客户端实例化或子类化。

代码示例

代码示例来源:origin: org.sonarsource.sslr/sslr-testing-harness

  1. public static AstNode parseString(String source) {
  2. return P.parse(source);
  3. }

代码示例来源:origin: fundacionjala/enforce-sonarqube-plugin

  1. /**
  2. * Re-parses a query that was retrieved as a String.
  3. *
  4. * @param astNode The String's node.
  5. * @return The query as a new QUERY_EXPRESSION node.
  6. */
  7. public static AstNode parseQuery(AstNode astNode) {
  8. AstNode parsedQuery = null;
  9. try {
  10. String string = astNode.getTokenOriginalValue();
  11. String queryAsString = StringUtils.substringBetween(string, "'", "'");
  12. Parser<Grammar> queryParser = ApexParser.create(new ApexConfiguration(Charsets.UTF_8));
  13. queryParser.setRootRule(queryParser.getGrammar().rule(ApexGrammarRuleKey.QUERY_EXPRESSION));
  14. parsedQuery = queryParser.parse(queryAsString);
  15. } catch (Exception e) {
  16. ChecksLogger.logCheckError(CLASS_TO_LOG, METHOD_TO_LOG, e.toString());
  17. }
  18. return parsedQuery;
  19. }
  20. }

代码示例来源:origin: org.codehaus.sonar-plugins.dotnet.csharp/sonar-csharp-squid-plugin

  1. public IgnoreUsingDirectivePreprocessor(CSharpConfiguration conf) {
  2. this.parser = CSharpParser.create(conf);
  3. this.parser.setRootRule(this.parser.getGrammar().usingDirective);
  4. }

代码示例来源:origin: fundacionjala/enforce-sonarqube-plugin

  1. /**
  2. * Creates a Parser integrated with Grammar and Lexer.
  3. *
  4. * @param config apex configuration.
  5. * @return a parser
  6. * @throws IllegalArgumentException when configuration is null.
  7. */
  8. public static Parser<Grammar> create(ApexConfiguration config) {
  9. if (config == null) {
  10. throw new IllegalArgumentException(ERROR_MESSAGE);
  11. }
  12. return Parser.builder(ApexGrammar.create())
  13. .withLexer(ApexLexer.create(config)).build();
  14. }
  15. }

代码示例来源:origin: org.sonarsource.sslr/sslr-testing-harness

  1. private Parser createParserWithEofMatcher() {
  2. RuleDefinition rule = actual.getRootRule();
  3. RuleDefinition endOfInput = new RuleDefinition(new EndOfInput())
  4. .is(new FirstOfExpression(EndOfInputExpression.INSTANCE, new TokenTypeExpression(GenericTokenType.EOF)));
  5. RuleDefinition withEndOfInput = new RuleDefinition(new WithEndOfInput(actual.getRootRule().getRuleKey()))
  6. .is(rule, endOfInput);
  7. Parser parser = Parser.builder(actual).build();
  8. parser.setRootRule(withEndOfInput);
  9. return parser;
  10. }

代码示例来源:origin: org.codehaus.sonar.sslr-squid-bridge/sslr-squid-bridge

  1. protected AstScanner(Builder<G> builder) {
  2. this.visitors = Lists.newArrayList(builder.visitors);
  3. this.parser = builder.baseParser;
  4. this.context = builder.context;
  5. this.context.setGrammar(parser.getGrammar());
  6. this.context.getProject().setSourceCodeIndexer(indexer);
  7. this.context.setCommentAnalyser(builder.commentAnalyser);
  8. this.metrics = builder.metrics;
  9. this.filesMetric = builder.filesMetric;
  10. indexer.index(context.getProject());
  11. }

代码示例来源:origin: Backelite/sonar-swift

  1. public static Parser<ObjectiveCGrammar> create(ObjectiveCConfiguration conf) {
  2. return Parser.builder((ObjectiveCGrammar) new ObjectiveCGrammarImpl())
  3. .withLexer(ObjectiveCLexer.create(conf))
  4. .build();
  5. }

代码示例来源:origin: SonarSource/sslr

  1. private Parser createParserWithEofMatcher() {
  2. RuleDefinition rule = actual.getRootRule();
  3. RuleDefinition endOfInput = new RuleDefinition(new EndOfInput())
  4. .is(new FirstOfExpression(EndOfInputExpression.INSTANCE, new TokenTypeExpression(GenericTokenType.EOF)));
  5. RuleDefinition withEndOfInput = new RuleDefinition(new WithEndOfInput(actual.getRootRule().getRuleKey()))
  6. .is(rule, endOfInput);
  7. Parser parser = Parser.builder(actual).build();
  8. parser.setRootRule(withEndOfInput);
  9. return parser;
  10. }

代码示例来源:origin: sonar-perl/sonar-perl

  1. protected void setRootRule(GrammarRuleKey ruleKey) {
  2. p.setRootRule(p.getGrammar().rule(ruleKey));
  3. }
  4. }

代码示例来源:origin: sonar-perl/sonar-perl

  1. @Test
  2. public void ok() {
  3. p.getGrammar().rule(PerlGrammar.ATOM).mock();
  4. assertThat(p).matches("ATOM");
  5. assertThat(p).matches("ATOM ATOM");
  6. assertThat(p).matches("\n");
  7. assertThat(p).matches("ATOM\nATOM");
  8. }

代码示例来源:origin: uartois/sonar-golang

  1. public static AstNode parseString(String source) {
  2. return P.parse(source);
  3. }

代码示例来源:origin: Backelite/sonar-swift

  1. public static Parser<SwiftGrammar> create(SwiftConfiguration conf) {
  2. return Parser.builder((SwiftGrammar) new SwiftGrammarImpl())
  3. .withLexer(SwiftLexer.create(conf))
  4. .build();
  5. }

代码示例来源:origin: SonarSource/sslr

  1. public static AstNode parseString(String source) {
  2. return P.parse(source);
  3. }

代码示例来源:origin: SonarSource/sslr

  1. public static Parser<Grammar> create() {
  2. return Parser.builder(MiniCGrammar.create()).withLexer(MiniCLexer.create()).build();
  3. }

代码示例来源:origin: org.codehaus.sonar.sslr/sslr-toolkit

  1. public void setSourceCode(File source, Charset charset) {
  2. this.astNode = configurationModel.getParser().parse(source);
  3. try {
  4. this.sourceCode = Files.toString(source, charset);
  5. } catch (IOException e) {
  6. Throwables.propagate(e);
  7. }
  8. }

代码示例来源:origin: org.sonarsource.sslr/sslr-testing-harness

  1. public static Parser<Grammar> create() {
  2. return Parser.builder(MiniCGrammar.create()).withLexer(MiniCLexer.create()).build();
  3. }

代码示例来源:origin: org.sonarsource.sslr/sslr-toolkit

  1. public void setSourceCode(File source, Charset charset) {
  2. this.astNode = configurationModel.getParser().parse(source);
  3. try {
  4. this.sourceCode = new String(Files.readAllBytes(Paths.get(source.getPath())), charset);
  5. } catch (IOException e) {
  6. throw new RuntimeException(e);
  7. }
  8. }

代码示例来源:origin: uartois/sonar-golang

  1. public static Parser<Grammar> create() {
  2. return Parser.builder(GoGrammar.create()).withLexer(GoLexer.create()).build();
  3. }

代码示例来源:origin: org.sonarsource.sslr/sslr-testing-harness

  1. public static AstNode parseFile(String filePath) {
  2. File file = FileUtils.toFile(MiniCParser.class.getResource(filePath));
  3. if (file == null || !file.exists()) {
  4. throw new AssertionError("The file \"" + filePath + "\" does not exist.");
  5. }
  6. return P.parse(file);
  7. }

代码示例来源:origin: octo-technology/sonar-objective-c

  1. public static Parser<ObjectiveCGrammar> create(ObjectiveCConfiguration conf, ParsingEventListener... parsingEventListeners) {
  2. return Parser.builder((ObjectiveCGrammar) new ObjectiveCGrammarImpl())
  3. .withLexer(ObjectiveCLexer.create(conf))
  4. .setParsingEventListeners(parsingEventListeners).build();
  5. }

相关文章