/** * Returns the position for the given node. This is the start position. The * end position can be obtained via {@link Position#getEnd()}. * * @param node the node to look up position for * @return the position, or null if the node type is not supported for * position info */ @NonNull public static SourcePosition getPosition(@NonNull Node node) { return getPosition(node, -1, -1); }
public static SourceFilePosition getSourceFilePosition(Node node) { SourceFile sourceFile = (SourceFile) node.getUserData(SOURCE_FILE_USER_DATA_KEY); if (sourceFile == null) { sourceFile = SourceFile.UNKNOWN; } return new SourceFilePosition(sourceFile, PositionXmlParser.getPosition(node)); }
@NonNull @Override public Location resolve() { return Location.create(file, PositionXmlParser.getPosition(node)); }
/** * Returns the position of the specified {@link org.w3c.dom.Node}. */ @NonNull static SourcePosition getNodePosition(@NonNull Node xml) { return PositionXmlParser.getPosition(xml); }
@Override public int getNodeEndOffset(@NonNull XmlContext context, @NonNull Node node) { return PositionXmlParser.getPosition(node).getEndOffset(); }
@Override public int getNodeStartOffset(@NonNull XmlContext context, @NonNull Node node) { return PositionXmlParser.getPosition(node).getStartOffset(); }
@NonNull @Override public Location getLocation(@NonNull XmlContext context, @NonNull Node node) { return Location.create(context.file, PositionXmlParser.getPosition(node)); }
@NonNull @Override public Location getLocation(@NonNull XmlContext context, @NonNull Node node, int start, int end) { return Location.create(context.file, PositionXmlParser.getPosition(node, start, end)); }