We can't guarantee that your code can be compiled (source compatibility) or linked (binary compatibility) with new version of SSLR and will behave (behavioral compatibility) exactly as before upgrade in following situations:
- You use internal classes or interfaces, i.e. those that are located under package "org.sonar.sslr.internal".
- You create instances or subclasses of classes, which are not intended for this. Such classes are marked by Javadoc ("This class is not intended to be instantiated or sub-classed by clients").
- You implement interfaces, which are not intended for this. Such interfaces are marked by Javadoc ("This interface is not intended to be implemented by clients").
- You use methods marked as internal. Such methods are marked by annotation "@VisibleForTesting" or by Javadoc ("For internal use only").
- You use deprecated code. Such code is marked by annotation "@deprecated" and Javadoc.