private static Optional<? extends Input.Token> getNextToken(Input input, int position) { return Optional.ofNullable(input.getPositionTokenMap().get(position)); }
/** Does this declaration have javadoc preceding it? */ private boolean hasJavaDoc(Tree bodyDeclaration) { int position = ((JCTree) bodyDeclaration).getStartPosition(); Input.Token token = builder.getInput().getPositionTokenMap().get(position); if (token != null) { for (Input.Tok tok : token.getToksBefore()) { if (tok.getText().startsWith("/**")) { return true; } } } return false; }
public void testGetLargeRangeMap() { ImmutableRangeMap.Builder<Integer, Integer> builder = ImmutableRangeMap.builder(); for (int i = 0; i < 100; i++) { builder.put(Range.closedOpen(i, i + 1), i); } ImmutableRangeMap<Integer, Integer> map = builder.build(); for (int i = 0; i < 100; i++) { assertEquals(Integer.valueOf(i), map.get(i)); } }
/** @return the start column of the token at {@code position}, including leading comments. */ public Integer actualStartColumn(int position) { Token startToken = input.getPositionTokenMap().get(position); int start = startToken.getTok().getPosition(); int line0 = input.getLineNumber(start); for (Tok tok : startToken.getToksBefore()) { if (line0 != input.getLineNumber(tok.getPosition())) { return start; } if (tok.isComment()) { start = Math.min(start, tok.getPosition()); } } return start; }
/** @return the actual size of the AST node at position, including comments. */ public int actualSize(int position, int length) { Token startToken = input.getPositionTokenMap().get(position); int start = startToken.getTok().getPosition(); for (Tok tok : startToken.getToksBefore()) { if (tok.isComment()) { start = Math.min(start, tok.getPosition()); } } Token endToken = input.getPositionTokenMap().get(position + length - 1); int end = endToken.getTok().getPosition() + endToken.getTok().length(); for (Tok tok : endToken.getToksAfter()) { if (tok.isComment()) { end = Math.max(end, tok.getPosition() + tok.length()); } } return end - start; }
public void testGet() { for (Range<Integer> range1 : RANGES) { for (Range<Integer> range2 : RANGES) { if (!range1.isConnected(range2) || range1.intersection(range2).isEmpty()) { ImmutableRangeMap<Integer, Integer> rangeMap = ImmutableRangeMap.<Integer, Integer>builder().put(range1, 1).put(range2, 2).build(); for (int i = MIN_BOUND; i <= MAX_BOUND; i++) { Integer expectedValue = null; if (range1.contains(i)) { expectedValue = 1; } else if (range2.contains(i)) { expectedValue = 2; } assertEquals(expectedValue, rangeMap.get(i)); } } } } }
public Serializable sampleHistogram() { return attributeValueRangeMap.get(rand.nextDouble()); }
private static Optional<? extends Input.Token> getNextToken(Input input, int position) { return Optional.ofNullable(input.getPositionTokenMap().get(position)); }
public Number sampleHistogram() { int randBin = attributeValueRangeMap.get(rand.nextDouble()); return getRandomDoubleInBin(randBin); }
/** Does this declaration have javadoc preceding it? */ private boolean hasJavaDoc(Tree bodyDeclaration) { int position = ((JCTree) bodyDeclaration).getStartPosition(); Input.Token token = builder.getInput().getPositionTokenMap().get(position); if (token != null) { for (Input.Tok tok : token.getToksBefore()) { if (tok.getText().startsWith("/**")) { return true; } } } return false; }
/** @return the actual size of the AST node at position, including comments. */ public int actualSize(int position, int length) { Token startToken = input.getPositionTokenMap().get(position); int start = startToken.getTok().getPosition(); for (Tok tok : startToken.getToksBefore()) { if (tok.isComment()) { start = Math.min(start, tok.getPosition()); } } Token endToken = input.getPositionTokenMap().get(position + length - 1); int end = endToken.getTok().getPosition() + endToken.getTok().length(); for (Tok tok : endToken.getToksAfter()) { if (tok.isComment()) { end = Math.max(end, tok.getPosition() + tok.length()); } } return end - start; }
/** @return the start column of the token at {@code position}, including leading comments. */ public Integer actualStartColumn(int position) { Token startToken = input.getPositionTokenMap().get(position); int start = startToken.getTok().getPosition(); int line0 = input.getLineNumber(start); for (Tok tok : startToken.getToksBefore()) { if (line0 != input.getLineNumber(tok.getPosition())) { return start; } if (tok.isComment()) { start = Math.min(start, tok.getPosition()); } } return start; }
public void testGetLargeRangeMap() { ImmutableRangeMap.Builder<Integer, Integer> builder = ImmutableRangeMap.builder(); for (int i = 0; i < 100; i++) { builder.put(Range.closedOpen(i, i + 1), i); } ImmutableRangeMap<Integer, Integer> map = builder.build(); for (int i = 0; i < 100; i++) { assertEquals(Integer.valueOf(i), map.get(i)); } }
public void testGet() { for (Range<Integer> range1 : RANGES) { for (Range<Integer> range2 : RANGES) { if (!range1.isConnected(range2) || range1.intersection(range2).isEmpty()) { ImmutableRangeMap<Integer, Integer> rangeMap = ImmutableRangeMap.<Integer, Integer>builder().put(range1, 1).put(range2, 2).build(); for (int i = MIN_BOUND; i <= MAX_BOUND; i++) { Integer expectedValue = null; if (range1.contains(i)) { expectedValue = 1; } else if (range2.contains(i)) { expectedValue = 2; } assertEquals(expectedValue, rangeMap.get(i)); } } } } }