/** * Copyright (c) 2005-2011 by Appcelerator, Inc. All Rights Reserved. * Licensed under the terms of the Eclipse Public License (EPL). * Please see the license.txt included with this distribution for details. * Any modifications to this file must keep this entire header intact. */ /* * Created on 19/07/2005 */ package com.python.pydev.analysis.messages; import java.util.List; import org.eclipse.jface.text.IDocument; import org.python.pydev.core.IToken; public interface IMessage { /** * @see org.eclipse.core.resources.IMarker#SEVERITY_ERROR * @see org.eclipse.core.resources.IMarker#SEVERITY_WARNING * @see org.eclipse.core.resources.IMarker#SEVERITY_INFO * @return this message severity. */ int getSeverity(); /** * @see com.python.pydev.analysis.IAnalysisPreferences#TYPE_DUPLICATED_SIGNATURE * @see com.python.pydev.analysis.IAnalysisPreferences#TYPE_NO_SELF * @see com.python.pydev.analysis.IAnalysisPreferences#TYPE_REIMPORT * @see com.python.pydev.analysis.IAnalysisPreferences#TYPE_UNDEFINED_VARIABLE * @see com.python.pydev.analysis.IAnalysisPreferences#TYPE_UNRESOLVED_IMPORT * @see com.python.pydev.analysis.IAnalysisPreferences#TYPE_UNUSED_IMPORT * @see com.python.pydev.analysis.IAnalysisPreferences#TYPE_UNUSED_VARIABLE * @see com.python.pydev.analysis.IAnalysisPreferences#TYPE_UNUSED_PARAMETER * @see com.python.pydev.analysis.IAnalysisPreferences#TYPE_UNUSED_WILD_IMPORT * @see com.python.pydev.analysis.IAnalysisPreferences#TYPE_USED_WILD_IMPORT * @see com.python.pydev.analysis.IAnalysisPreferences#TYPE_NO_EFFECT_STMT * @see com.python.pydev.analysis.IAnalysisPreferences#TYPE_INDENTATION_PROBLEM * @see com.python.pydev.analysis.IAnalysisPreferences#TYPE_PEP8 * @see com.python.pydev.analysis.IAnalysisPreferences#TYPE_ARGUMENTS_MISATCH * * @return this message type */ int getType(); /** * @return the starting line of the error (starting at 1) */ int getStartLine(IDocument doc); /** * @param doc * @return the starting col of the error (starting at 1) */ int getStartCol(IDocument doc); /** * @return the ending line of the error. may be -1 if we are unable to find the end of the token (starting at 1) */ int getEndLine(IDocument doc); /** * @return the ending col of the error. may be -1 if we are unable to find the end of the token (starting at 1) */ int getEndCol(IDocument doc); /** * @return the message that should be presented to the user. */ String getMessage(); /** * @return additional info to be added to the marker that will be created by this message. It might be * useful for making actions based on the analysis info */ List<String> getAdditionalInfo(); /** * Adds some additional info to the message * @param info this is the additional info to add */ void addAdditionalInfo(String info); /** * @return the message that should be presented to the user in a short way (may be used for abbreviations). */ Object getShortMessage(); /** * @return the generator token for the message */ IToken getGenerator(); }