mergedWith method

LspServerConfig? mergedWith(
  1. Object? overrideJson
)

Merges an override entry over this config (omp's mergeServers): present fields in overrideJson win, absent fields keep the base value. Returns null when the merged result is invalid.

Implementation

LspServerConfig? mergedWith(Object? overrideJson) {
  if (overrideJson is! Map<String, dynamic>) return null;
  final candidate = <String, dynamic>{
    'command': command,
    'args': args,
    'fileTypes': fileTypes,
    'rootMarkers': rootMarkers,
    'initOptions': initOptions,
    'settings': settings,
    'disabled': disabled,
    if (languageId != null) 'languageId': languageId,
    ...overrideJson,
  };
  return LspServerConfig.fromJson(name, candidate);
}