1 /******************************************************************************* 2 * Copyright (c) 2009, 2021 Mountainminds GmbH & Co. KG and Contributors 3 * This program and the accompanying materials are made available under 4 * the terms of the Eclipse Public License 2.0 which is available at 5 * http://www.eclipse.org/legal/epl-2.0 6 * 7 * SPDX-License-Identifier: EPL-2.0 8 * 9 * Contributors: 10 * Marc R. Hoffmann - initial API and implementation 11 * 12 *******************************************************************************/ 13 package org.jacoco.core.analysis; 14 15 /** 16 * The instruction and branch coverage of a single source line is described by 17 * this interface. 18 */ 19 public interface ILine { 20 21 /** 22 * Returns the instruction counter for this line. 23 * 24 * @return instruction counter 25 */ getInstructionCounter()26 ICounter getInstructionCounter(); 27 28 /** 29 * Returns the branches counter for this line. 30 * 31 * @return branches counter 32 */ getBranchCounter()33 ICounter getBranchCounter(); 34 35 /** 36 * Returns the coverage status of this line, calculated from the 37 * instructions counter and branch counter. 38 * 39 * @see ICounter#EMPTY 40 * @see ICounter#NOT_COVERED 41 * @see ICounter#PARTLY_COVERED 42 * @see ICounter#FULLY_COVERED 43 * 44 * @return status of this line 45 */ getStatus()46 int getStatus(); 47 48 } 49