ServerWithConfig

trait ServerWithConfig[N, T <: N, C <: Config]

A language server that is mixed with a compiler that provide the basis for its services. Allows specialisation of configuration via C.

A language server that is mixed with a compiler that provide the basis for its services. Allows specialisation of configuration via C.

class Object
trait Matchable
class Any
trait CompilerBase[N, T, C]
trait CompilerWithConfig[N, T, C]
trait Compiler[N, T]

Type members

Classlikes

case class RangePair(sstart: Int, send: Int, tstart: Int, tend: Int)

Value members

Concrete methods

def clearDiagnostics(name: String): Unit
def connect(aClient: Client): Unit
def convertPosition(optPos: Option[Position]): Position
def convertRange(optStart: Option[Position], optFinish: Option[Position]): Range
def convertSeverity(severity: Severity): DiagnosticSeverity
def launch(config: C): Unit
def locationOfNode(node: N): Location
def logMessage(msg: String): Unit
def messageToDiagnostic(message: Message): Diagnostic
def pairsToMap(pairs: List[RangePair], key: RangePair => OffsetRange, value: RangePair => OffsetRange): Array[RangeEntry]
def positionOfStartFinish(optStart: Option[Position], optFinish: Option[Position]): Option[(Int, Int)]
def positionsOfDocument(document: Document): List[RangePair]
def publishDiagnostics(name: String, diagnostics: Vector[Diagnostic]): Unit
def publishMessages(messages: Messages): Unit
def publishProduct(source: Source, name: String, language: String, document: Document, append: Boolean): Unit
def publishProductStr(source: Source, name: String, language: String, message: String, append: Boolean): Unit
def rangeOfNode(node: N): Range
def registerCapability(id: String, method: String, options: Object): Unit
def setSettings(settings: JsonObject): Unit
def setSettings(settings: Object): Unit
def setting[V](key: String, get: JsonElement => V, default: V): V
def settingArray(key: String, default: JsonArray): JsonArray
def settingBool(key: String, default: Boolean): Boolean
def settingInt(key: String, default: Int): Int
def settingStr(key: String, default: String): String
def settings(): JsonObject
def showMessage(tipe: MessageType, msg: String): Unit
def sortBySourceRangeSize(pairs: Array[RangeEntry]): Array[RangeEntry]