|
Scala example source code file (Positions.scala)
The Scala Positions.scala source codepackage scala.tools.nsc package symtab import scala.tools.nsc.util.{ SourceFile, Position, OffsetPosition, NoPosition } trait Positions { self: scala.tools.nsc.symtab.SymbolTable => def rangePos(source: SourceFile, start: Int, point: Int, end: Int) = new OffsetPosition(source, point) /** A position that wraps a set of trees. * The point of the wrapping position is the point of the default position. * If some of the trees are ranges, returns a range position enclosing all ranges * Otherwise returns default position. */ def wrappingPos(default: Position, trees: List[Tree]): Position = default /** A position that wraps the non-empty set of trees. * The point of the wrapping position is the point of the first trees' position. * If all some the trees are non-synthetic, returns a range position enclosing the non-synthetic trees * Otherwise returns a synthetic offset position to point. */ def wrappingPos(trees: List[Tree]): Position = trees.head.pos /** Ensure that given tree has no positions that overlap with * any of the positions of `others`. This is done by * shortening the range or assigning TransparentPositions * to some of the nodes in `tree`. */ def ensureNonOverlapping(tree: Tree, others: List[Tree]) {} def validatePositions(tree: Tree) {} type Position = scala.tools.nsc.util.Position val NoPosition = scala.tools.nsc.util.NoPosition } Other Scala examples (source code examples)Here is a short list of links related to this Scala Positions.scala source code file: |
... this post is sponsored by my books ... | |
#1 New Release! |
FP Best Seller |
Copyright 1998-2021 Alvin Alexander, alvinalexander.com
All Rights Reserved.
A percentage of advertising revenue from
pages under the /java/jwarehouse
URI on this website is
paid back to open source projects.