blob: 0210335e9e7399d2b62cb3407c237456597908d6 [file] [log] [blame]
/**
* Copyright (c) 2016-2018 TypeFox and others.
*
* This program and the accompanying materials are made available under the
* terms of the Eclipse Public License v. 2.0 which is available at
* http://www.eclipse.org/legal/epl-2.0,
* or the Eclipse Distribution License v. 1.0 which is available at
* http://www.eclipse.org/org/documents/edl-v10.php.
*
* SPDX-License-Identifier: EPL-2.0 OR BSD-3-Clause
*/
package org.eclipse.lsp4j;
import com.google.common.annotations.Beta;
import org.eclipse.lsp4j.CallHierarchyCapabilities;
import org.eclipse.lsp4j.CodeActionCapabilities;
import org.eclipse.lsp4j.CodeLensCapabilities;
import org.eclipse.lsp4j.ColorProviderCapabilities;
import org.eclipse.lsp4j.CompletionCapabilities;
import org.eclipse.lsp4j.DeclarationCapabilities;
import org.eclipse.lsp4j.DefinitionCapabilities;
import org.eclipse.lsp4j.DocumentHighlightCapabilities;
import org.eclipse.lsp4j.DocumentLinkCapabilities;
import org.eclipse.lsp4j.DocumentSymbolCapabilities;
import org.eclipse.lsp4j.FoldingRangeCapabilities;
import org.eclipse.lsp4j.FormattingCapabilities;
import org.eclipse.lsp4j.HoverCapabilities;
import org.eclipse.lsp4j.ImplementationCapabilities;
import org.eclipse.lsp4j.LinkedEditingRangeCapabilities;
import org.eclipse.lsp4j.MonikerCapabilities;
import org.eclipse.lsp4j.OnTypeFormattingCapabilities;
import org.eclipse.lsp4j.PublishDiagnosticsCapabilities;
import org.eclipse.lsp4j.RangeFormattingCapabilities;
import org.eclipse.lsp4j.ReferencesCapabilities;
import org.eclipse.lsp4j.RenameCapabilities;
import org.eclipse.lsp4j.SelectionRangeCapabilities;
import org.eclipse.lsp4j.SemanticTokensCapabilities;
import org.eclipse.lsp4j.SignatureHelpCapabilities;
import org.eclipse.lsp4j.SynchronizationCapabilities;
import org.eclipse.lsp4j.TypeDefinitionCapabilities;
import org.eclipse.lsp4j.TypeHierarchyCapabilities;
import org.eclipse.xtext.xbase.lib.Pure;
import org.eclipse.xtext.xbase.lib.util.ToStringBuilder;
/**
* Text document specific client capabilities.
*/
@SuppressWarnings("all")
public class TextDocumentClientCapabilities {
private SynchronizationCapabilities synchronization;
/**
* Capabilities specific to the {@code textDocument/completion}
*/
private CompletionCapabilities completion;
/**
* Capabilities specific to the {@code textDocument/hover}
*/
private HoverCapabilities hover;
/**
* Capabilities specific to the {@code textDocument/signatureHelp}
*/
private SignatureHelpCapabilities signatureHelp;
/**
* Capabilities specific to the {@code textDocument/references}
*/
private ReferencesCapabilities references;
/**
* Capabilities specific to the {@code textDocument/documentHighlight}
*/
private DocumentHighlightCapabilities documentHighlight;
/**
* Capabilities specific to the {@code textDocument/documentSymbol}
*/
private DocumentSymbolCapabilities documentSymbol;
/**
* Capabilities specific to the {@code textDocument/formatting}
*/
private FormattingCapabilities formatting;
/**
* Capabilities specific to the {@code textDocument/rangeFormatting}
*/
private RangeFormattingCapabilities rangeFormatting;
/**
* Capabilities specific to the {@code textDocument/onTypeFormatting}
*/
private OnTypeFormattingCapabilities onTypeFormatting;
/**
* Capabilities specific to the {@code textDocument/declaration}
* <p>
* Since 3.14.0
*/
private DeclarationCapabilities declaration;
/**
* Capabilities specific to the {@code textDocument/definition}
* <p>
* Since 3.14.0
*/
private DefinitionCapabilities definition;
/**
* Capabilities specific to the {@code textDocument/typeDefinition}
* <p>
* Since 3.6.0
*/
private TypeDefinitionCapabilities typeDefinition;
/**
* Capabilities specific to the {@code textDocument/implementation}
* <p>
* Since 3.6.0
*/
private ImplementationCapabilities implementation;
/**
* Capabilities specific to the {@code textDocument/codeAction}
*/
private CodeActionCapabilities codeAction;
/**
* Capabilities specific to the {@code textDocument/codeLens}
*/
private CodeLensCapabilities codeLens;
/**
* Capabilities specific to the {@code textDocument/documentLink}
*/
private DocumentLinkCapabilities documentLink;
/**
* Capabilities specific to the {@code textDocument/documentColor} and the
* {@code textDocument/colorPresentation} request.
* <p>
* Since 3.6.0
*/
private ColorProviderCapabilities colorProvider;
/**
* Capabilities specific to the {@code textDocument/rename}
*/
private RenameCapabilities rename;
/**
* Capabilities specific to {@code textDocument/publishDiagnostics}.
*/
private PublishDiagnosticsCapabilities publishDiagnostics;
/**
* Capabilities specific to {@code textDocument/foldingRange} requests.
* <p>
* Since 3.10.0
*/
private FoldingRangeCapabilities foldingRange;
/**
* Capabilities specific to {@code textDocument/typeHierarchy}.
*/
@Beta
private TypeHierarchyCapabilities typeHierarchyCapabilities;
/**
* Capabilities specific to {@code textDocument/prepareCallHierarchy}.
* <p>
* Since 3.16.0
*/
private CallHierarchyCapabilities callHierarchy;
/**
* Capabilities specific to `textDocument/selectionRange` requests
* <p>
* Since 3.15.0
*/
private SelectionRangeCapabilities selectionRange;
/**
* Capabilities specific to {@code textDocument/semanticTokens}.
* <p>
* Since 3.16.0
*/
private SemanticTokensCapabilities semanticTokens;
/**
* Capabilities specific to the {@code textDocument/moniker} request.
* <p>
* Since 3.16.0
*/
private MonikerCapabilities moniker;
/**
* Capabilities specific to the {@code textDocument/linkedEditingRange} request.
* <p>
* Since 3.16.0
*/
private LinkedEditingRangeCapabilities linkedEditingRange;
@Pure
public SynchronizationCapabilities getSynchronization() {
return this.synchronization;
}
public void setSynchronization(final SynchronizationCapabilities synchronization) {
this.synchronization = synchronization;
}
/**
* Capabilities specific to the {@code textDocument/completion}
*/
@Pure
public CompletionCapabilities getCompletion() {
return this.completion;
}
/**
* Capabilities specific to the {@code textDocument/completion}
*/
public void setCompletion(final CompletionCapabilities completion) {
this.completion = completion;
}
/**
* Capabilities specific to the {@code textDocument/hover}
*/
@Pure
public HoverCapabilities getHover() {
return this.hover;
}
/**
* Capabilities specific to the {@code textDocument/hover}
*/
public void setHover(final HoverCapabilities hover) {
this.hover = hover;
}
/**
* Capabilities specific to the {@code textDocument/signatureHelp}
*/
@Pure
public SignatureHelpCapabilities getSignatureHelp() {
return this.signatureHelp;
}
/**
* Capabilities specific to the {@code textDocument/signatureHelp}
*/
public void setSignatureHelp(final SignatureHelpCapabilities signatureHelp) {
this.signatureHelp = signatureHelp;
}
/**
* Capabilities specific to the {@code textDocument/references}
*/
@Pure
public ReferencesCapabilities getReferences() {
return this.references;
}
/**
* Capabilities specific to the {@code textDocument/references}
*/
public void setReferences(final ReferencesCapabilities references) {
this.references = references;
}
/**
* Capabilities specific to the {@code textDocument/documentHighlight}
*/
@Pure
public DocumentHighlightCapabilities getDocumentHighlight() {
return this.documentHighlight;
}
/**
* Capabilities specific to the {@code textDocument/documentHighlight}
*/
public void setDocumentHighlight(final DocumentHighlightCapabilities documentHighlight) {
this.documentHighlight = documentHighlight;
}
/**
* Capabilities specific to the {@code textDocument/documentSymbol}
*/
@Pure
public DocumentSymbolCapabilities getDocumentSymbol() {
return this.documentSymbol;
}
/**
* Capabilities specific to the {@code textDocument/documentSymbol}
*/
public void setDocumentSymbol(final DocumentSymbolCapabilities documentSymbol) {
this.documentSymbol = documentSymbol;
}
/**
* Capabilities specific to the {@code textDocument/formatting}
*/
@Pure
public FormattingCapabilities getFormatting() {
return this.formatting;
}
/**
* Capabilities specific to the {@code textDocument/formatting}
*/
public void setFormatting(final FormattingCapabilities formatting) {
this.formatting = formatting;
}
/**
* Capabilities specific to the {@code textDocument/rangeFormatting}
*/
@Pure
public RangeFormattingCapabilities getRangeFormatting() {
return this.rangeFormatting;
}
/**
* Capabilities specific to the {@code textDocument/rangeFormatting}
*/
public void setRangeFormatting(final RangeFormattingCapabilities rangeFormatting) {
this.rangeFormatting = rangeFormatting;
}
/**
* Capabilities specific to the {@code textDocument/onTypeFormatting}
*/
@Pure
public OnTypeFormattingCapabilities getOnTypeFormatting() {
return this.onTypeFormatting;
}
/**
* Capabilities specific to the {@code textDocument/onTypeFormatting}
*/
public void setOnTypeFormatting(final OnTypeFormattingCapabilities onTypeFormatting) {
this.onTypeFormatting = onTypeFormatting;
}
/**
* Capabilities specific to the {@code textDocument/declaration}
* <p>
* Since 3.14.0
*/
@Pure
public DeclarationCapabilities getDeclaration() {
return this.declaration;
}
/**
* Capabilities specific to the {@code textDocument/declaration}
* <p>
* Since 3.14.0
*/
public void setDeclaration(final DeclarationCapabilities declaration) {
this.declaration = declaration;
}
/**
* Capabilities specific to the {@code textDocument/definition}
* <p>
* Since 3.14.0
*/
@Pure
public DefinitionCapabilities getDefinition() {
return this.definition;
}
/**
* Capabilities specific to the {@code textDocument/definition}
* <p>
* Since 3.14.0
*/
public void setDefinition(final DefinitionCapabilities definition) {
this.definition = definition;
}
/**
* Capabilities specific to the {@code textDocument/typeDefinition}
* <p>
* Since 3.6.0
*/
@Pure
public TypeDefinitionCapabilities getTypeDefinition() {
return this.typeDefinition;
}
/**
* Capabilities specific to the {@code textDocument/typeDefinition}
* <p>
* Since 3.6.0
*/
public void setTypeDefinition(final TypeDefinitionCapabilities typeDefinition) {
this.typeDefinition = typeDefinition;
}
/**
* Capabilities specific to the {@code textDocument/implementation}
* <p>
* Since 3.6.0
*/
@Pure
public ImplementationCapabilities getImplementation() {
return this.implementation;
}
/**
* Capabilities specific to the {@code textDocument/implementation}
* <p>
* Since 3.6.0
*/
public void setImplementation(final ImplementationCapabilities implementation) {
this.implementation = implementation;
}
/**
* Capabilities specific to the {@code textDocument/codeAction}
*/
@Pure
public CodeActionCapabilities getCodeAction() {
return this.codeAction;
}
/**
* Capabilities specific to the {@code textDocument/codeAction}
*/
public void setCodeAction(final CodeActionCapabilities codeAction) {
this.codeAction = codeAction;
}
/**
* Capabilities specific to the {@code textDocument/codeLens}
*/
@Pure
public CodeLensCapabilities getCodeLens() {
return this.codeLens;
}
/**
* Capabilities specific to the {@code textDocument/codeLens}
*/
public void setCodeLens(final CodeLensCapabilities codeLens) {
this.codeLens = codeLens;
}
/**
* Capabilities specific to the {@code textDocument/documentLink}
*/
@Pure
public DocumentLinkCapabilities getDocumentLink() {
return this.documentLink;
}
/**
* Capabilities specific to the {@code textDocument/documentLink}
*/
public void setDocumentLink(final DocumentLinkCapabilities documentLink) {
this.documentLink = documentLink;
}
/**
* Capabilities specific to the {@code textDocument/documentColor} and the
* {@code textDocument/colorPresentation} request.
* <p>
* Since 3.6.0
*/
@Pure
public ColorProviderCapabilities getColorProvider() {
return this.colorProvider;
}
/**
* Capabilities specific to the {@code textDocument/documentColor} and the
* {@code textDocument/colorPresentation} request.
* <p>
* Since 3.6.0
*/
public void setColorProvider(final ColorProviderCapabilities colorProvider) {
this.colorProvider = colorProvider;
}
/**
* Capabilities specific to the {@code textDocument/rename}
*/
@Pure
public RenameCapabilities getRename() {
return this.rename;
}
/**
* Capabilities specific to the {@code textDocument/rename}
*/
public void setRename(final RenameCapabilities rename) {
this.rename = rename;
}
/**
* Capabilities specific to {@code textDocument/publishDiagnostics}.
*/
@Pure
public PublishDiagnosticsCapabilities getPublishDiagnostics() {
return this.publishDiagnostics;
}
/**
* Capabilities specific to {@code textDocument/publishDiagnostics}.
*/
public void setPublishDiagnostics(final PublishDiagnosticsCapabilities publishDiagnostics) {
this.publishDiagnostics = publishDiagnostics;
}
/**
* Capabilities specific to {@code textDocument/foldingRange} requests.
* <p>
* Since 3.10.0
*/
@Pure
public FoldingRangeCapabilities getFoldingRange() {
return this.foldingRange;
}
/**
* Capabilities specific to {@code textDocument/foldingRange} requests.
* <p>
* Since 3.10.0
*/
public void setFoldingRange(final FoldingRangeCapabilities foldingRange) {
this.foldingRange = foldingRange;
}
/**
* Capabilities specific to {@code textDocument/typeHierarchy}.
*/
@Pure
public TypeHierarchyCapabilities getTypeHierarchyCapabilities() {
return this.typeHierarchyCapabilities;
}
/**
* Capabilities specific to {@code textDocument/typeHierarchy}.
*/
public void setTypeHierarchyCapabilities(final TypeHierarchyCapabilities typeHierarchyCapabilities) {
this.typeHierarchyCapabilities = typeHierarchyCapabilities;
}
/**
* Capabilities specific to {@code textDocument/prepareCallHierarchy}.
* <p>
* Since 3.16.0
*/
@Pure
public CallHierarchyCapabilities getCallHierarchy() {
return this.callHierarchy;
}
/**
* Capabilities specific to {@code textDocument/prepareCallHierarchy}.
* <p>
* Since 3.16.0
*/
public void setCallHierarchy(final CallHierarchyCapabilities callHierarchy) {
this.callHierarchy = callHierarchy;
}
/**
* Capabilities specific to `textDocument/selectionRange` requests
* <p>
* Since 3.15.0
*/
@Pure
public SelectionRangeCapabilities getSelectionRange() {
return this.selectionRange;
}
/**
* Capabilities specific to `textDocument/selectionRange` requests
* <p>
* Since 3.15.0
*/
public void setSelectionRange(final SelectionRangeCapabilities selectionRange) {
this.selectionRange = selectionRange;
}
/**
* Capabilities specific to {@code textDocument/semanticTokens}.
* <p>
* Since 3.16.0
*/
@Pure
public SemanticTokensCapabilities getSemanticTokens() {
return this.semanticTokens;
}
/**
* Capabilities specific to {@code textDocument/semanticTokens}.
* <p>
* Since 3.16.0
*/
public void setSemanticTokens(final SemanticTokensCapabilities semanticTokens) {
this.semanticTokens = semanticTokens;
}
/**
* Capabilities specific to the {@code textDocument/moniker} request.
* <p>
* Since 3.16.0
*/
@Pure
public MonikerCapabilities getMoniker() {
return this.moniker;
}
/**
* Capabilities specific to the {@code textDocument/moniker} request.
* <p>
* Since 3.16.0
*/
public void setMoniker(final MonikerCapabilities moniker) {
this.moniker = moniker;
}
/**
* Capabilities specific to the {@code textDocument/linkedEditingRange} request.
* <p>
* Since 3.16.0
*/
@Pure
public LinkedEditingRangeCapabilities getLinkedEditingRange() {
return this.linkedEditingRange;
}
/**
* Capabilities specific to the {@code textDocument/linkedEditingRange} request.
* <p>
* Since 3.16.0
*/
public void setLinkedEditingRange(final LinkedEditingRangeCapabilities linkedEditingRange) {
this.linkedEditingRange = linkedEditingRange;
}
@Override
@Pure
public String toString() {
ToStringBuilder b = new ToStringBuilder(this);
b.add("synchronization", this.synchronization);
b.add("completion", this.completion);
b.add("hover", this.hover);
b.add("signatureHelp", this.signatureHelp);
b.add("references", this.references);
b.add("documentHighlight", this.documentHighlight);
b.add("documentSymbol", this.documentSymbol);
b.add("formatting", this.formatting);
b.add("rangeFormatting", this.rangeFormatting);
b.add("onTypeFormatting", this.onTypeFormatting);
b.add("declaration", this.declaration);
b.add("definition", this.definition);
b.add("typeDefinition", this.typeDefinition);
b.add("implementation", this.implementation);
b.add("codeAction", this.codeAction);
b.add("codeLens", this.codeLens);
b.add("documentLink", this.documentLink);
b.add("colorProvider", this.colorProvider);
b.add("rename", this.rename);
b.add("publishDiagnostics", this.publishDiagnostics);
b.add("foldingRange", this.foldingRange);
b.add("typeHierarchyCapabilities", this.typeHierarchyCapabilities);
b.add("callHierarchy", this.callHierarchy);
b.add("selectionRange", this.selectionRange);
b.add("semanticTokens", this.semanticTokens);
b.add("moniker", this.moniker);
b.add("linkedEditingRange", this.linkedEditingRange);
return b.toString();
}
@Override
@Pure
public boolean equals(final Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (getClass() != obj.getClass())
return false;
TextDocumentClientCapabilities other = (TextDocumentClientCapabilities) obj;
if (this.synchronization == null) {
if (other.synchronization != null)
return false;
} else if (!this.synchronization.equals(other.synchronization))
return false;
if (this.completion == null) {
if (other.completion != null)
return false;
} else if (!this.completion.equals(other.completion))
return false;
if (this.hover == null) {
if (other.hover != null)
return false;
} else if (!this.hover.equals(other.hover))
return false;
if (this.signatureHelp == null) {
if (other.signatureHelp != null)
return false;
} else if (!this.signatureHelp.equals(other.signatureHelp))
return false;
if (this.references == null) {
if (other.references != null)
return false;
} else if (!this.references.equals(other.references))
return false;
if (this.documentHighlight == null) {
if (other.documentHighlight != null)
return false;
} else if (!this.documentHighlight.equals(other.documentHighlight))
return false;
if (this.documentSymbol == null) {
if (other.documentSymbol != null)
return false;
} else if (!this.documentSymbol.equals(other.documentSymbol))
return false;
if (this.formatting == null) {
if (other.formatting != null)
return false;
} else if (!this.formatting.equals(other.formatting))
return false;
if (this.rangeFormatting == null) {
if (other.rangeFormatting != null)
return false;
} else if (!this.rangeFormatting.equals(other.rangeFormatting))
return false;
if (this.onTypeFormatting == null) {
if (other.onTypeFormatting != null)
return false;
} else if (!this.onTypeFormatting.equals(other.onTypeFormatting))
return false;
if (this.declaration == null) {
if (other.declaration != null)
return false;
} else if (!this.declaration.equals(other.declaration))
return false;
if (this.definition == null) {
if (other.definition != null)
return false;
} else if (!this.definition.equals(other.definition))
return false;
if (this.typeDefinition == null) {
if (other.typeDefinition != null)
return false;
} else if (!this.typeDefinition.equals(other.typeDefinition))
return false;
if (this.implementation == null) {
if (other.implementation != null)
return false;
} else if (!this.implementation.equals(other.implementation))
return false;
if (this.codeAction == null) {
if (other.codeAction != null)
return false;
} else if (!this.codeAction.equals(other.codeAction))
return false;
if (this.codeLens == null) {
if (other.codeLens != null)
return false;
} else if (!this.codeLens.equals(other.codeLens))
return false;
if (this.documentLink == null) {
if (other.documentLink != null)
return false;
} else if (!this.documentLink.equals(other.documentLink))
return false;
if (this.colorProvider == null) {
if (other.colorProvider != null)
return false;
} else if (!this.colorProvider.equals(other.colorProvider))
return false;
if (this.rename == null) {
if (other.rename != null)
return false;
} else if (!this.rename.equals(other.rename))
return false;
if (this.publishDiagnostics == null) {
if (other.publishDiagnostics != null)
return false;
} else if (!this.publishDiagnostics.equals(other.publishDiagnostics))
return false;
if (this.foldingRange == null) {
if (other.foldingRange != null)
return false;
} else if (!this.foldingRange.equals(other.foldingRange))
return false;
if (this.typeHierarchyCapabilities == null) {
if (other.typeHierarchyCapabilities != null)
return false;
} else if (!this.typeHierarchyCapabilities.equals(other.typeHierarchyCapabilities))
return false;
if (this.callHierarchy == null) {
if (other.callHierarchy != null)
return false;
} else if (!this.callHierarchy.equals(other.callHierarchy))
return false;
if (this.selectionRange == null) {
if (other.selectionRange != null)
return false;
} else if (!this.selectionRange.equals(other.selectionRange))
return false;
if (this.semanticTokens == null) {
if (other.semanticTokens != null)
return false;
} else if (!this.semanticTokens.equals(other.semanticTokens))
return false;
if (this.moniker == null) {
if (other.moniker != null)
return false;
} else if (!this.moniker.equals(other.moniker))
return false;
if (this.linkedEditingRange == null) {
if (other.linkedEditingRange != null)
return false;
} else if (!this.linkedEditingRange.equals(other.linkedEditingRange))
return false;
return true;
}
@Override
@Pure
public int hashCode() {
final int prime = 31;
int result = 1;
result = prime * result + ((this.synchronization== null) ? 0 : this.synchronization.hashCode());
result = prime * result + ((this.completion== null) ? 0 : this.completion.hashCode());
result = prime * result + ((this.hover== null) ? 0 : this.hover.hashCode());
result = prime * result + ((this.signatureHelp== null) ? 0 : this.signatureHelp.hashCode());
result = prime * result + ((this.references== null) ? 0 : this.references.hashCode());
result = prime * result + ((this.documentHighlight== null) ? 0 : this.documentHighlight.hashCode());
result = prime * result + ((this.documentSymbol== null) ? 0 : this.documentSymbol.hashCode());
result = prime * result + ((this.formatting== null) ? 0 : this.formatting.hashCode());
result = prime * result + ((this.rangeFormatting== null) ? 0 : this.rangeFormatting.hashCode());
result = prime * result + ((this.onTypeFormatting== null) ? 0 : this.onTypeFormatting.hashCode());
result = prime * result + ((this.declaration== null) ? 0 : this.declaration.hashCode());
result = prime * result + ((this.definition== null) ? 0 : this.definition.hashCode());
result = prime * result + ((this.typeDefinition== null) ? 0 : this.typeDefinition.hashCode());
result = prime * result + ((this.implementation== null) ? 0 : this.implementation.hashCode());
result = prime * result + ((this.codeAction== null) ? 0 : this.codeAction.hashCode());
result = prime * result + ((this.codeLens== null) ? 0 : this.codeLens.hashCode());
result = prime * result + ((this.documentLink== null) ? 0 : this.documentLink.hashCode());
result = prime * result + ((this.colorProvider== null) ? 0 : this.colorProvider.hashCode());
result = prime * result + ((this.rename== null) ? 0 : this.rename.hashCode());
result = prime * result + ((this.publishDiagnostics== null) ? 0 : this.publishDiagnostics.hashCode());
result = prime * result + ((this.foldingRange== null) ? 0 : this.foldingRange.hashCode());
result = prime * result + ((this.typeHierarchyCapabilities== null) ? 0 : this.typeHierarchyCapabilities.hashCode());
result = prime * result + ((this.callHierarchy== null) ? 0 : this.callHierarchy.hashCode());
result = prime * result + ((this.selectionRange== null) ? 0 : this.selectionRange.hashCode());
result = prime * result + ((this.semanticTokens== null) ? 0 : this.semanticTokens.hashCode());
result = prime * result + ((this.moniker== null) ? 0 : this.moniker.hashCode());
return prime * result + ((this.linkedEditingRange== null) ? 0 : this.linkedEditingRange.hashCode());
}
}