1 //////////////////////////////////////////////////////////////////////////////// 2 // checkstyle: Checks Java source code for adherence to a set of rules. 3 // Copyright (C) 2001-2019 the original author or authors. 4 // 5 // This library is free software; you can redistribute it and/or 6 // modify it under the terms of the GNU Lesser General Public 7 // License as published by the Free Software Foundation; either 8 // version 2.1 of the License, or (at your option) any later version. 9 // 10 // This library is distributed in the hope that it will be useful, 11 // but WITHOUT ANY WARRANTY; without even the implied warranty of 12 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 // Lesser General Public License for more details. 14 // 15 // You should have received a copy of the GNU Lesser General Public 16 // License along with this library; if not, write to the Free Software 17 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 18 //////////////////////////////////////////////////////////////////////////////// 19 20 package com.puppycrawl.tools.checkstyle.api; 21 22 /** 23 * DetailNode is used to construct tree during parsing Javadoc comments. 24 * Contains array of children, parent node and other useful fields. 25 * 26 * @see com.puppycrawl.tools.checkstyle.checks.javadoc.JavadocNodeImpl 27 * @see com.puppycrawl.tools.checkstyle.checks.javadoc.AbstractJavadocCheck 28 */ 29 public interface DetailNode { 30 31 /** 32 * Node type. 33 * @return node type. 34 * @see JavadocTokenTypes 35 */ 36 int getType(); 37 38 /** 39 * Node text. 40 * @return node text 41 */ 42 String getText(); 43 44 /** 45 * Node line number. 46 * @return node line number 47 */ 48 int getLineNumber(); 49 50 /** 51 * Node column number. 52 * @return node column number. 53 */ 54 int getColumnNumber(); 55 56 /** 57 * Array of children. 58 * @return array of children 59 */ 60 DetailNode[] getChildren(); 61 62 /** 63 * Parent node. 64 * @return parent node. 65 */ 66 DetailNode getParent(); 67 68 /** 69 * Node index among parent's children. 70 * @return index 71 */ 72 int getIndex(); 73 74 }