mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-04-21 21:52:10 +02:00
Bug 540978 Rename lsp plugins to be org.eclipse.cdt.lsp.*
To make it clear these are CDT's future :). Change-Id: I64935e3998a46632f4f4006589a17eb01959eb27
This commit is contained in:
parent
f9250cb361
commit
afe7d18793
58 changed files with 183 additions and 492 deletions
|
@ -1,6 +1,6 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<projectDescription>
|
<projectDescription>
|
||||||
<name>org.eclipse.lsp4e.cpp</name>
|
<name>org.eclipse.cdt.lsp-feature</name>
|
||||||
<comment></comment>
|
<comment></comment>
|
||||||
<projects>
|
<projects>
|
||||||
</projects>
|
</projects>
|
|
@ -1,6 +1,6 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<feature
|
<feature
|
||||||
id="org.eclipse.lsp4e.cpp"
|
id="org.eclipse.cdt.lsp"
|
||||||
label="%featureName"
|
label="%featureName"
|
||||||
version="9.6.0.qualifier"
|
version="9.6.0.qualifier"
|
||||||
provider-name="%featureProvider"
|
provider-name="%featureProvider"
|
||||||
|
@ -20,7 +20,7 @@
|
||||||
</license>
|
</license>
|
||||||
|
|
||||||
<plugin
|
<plugin
|
||||||
id="org.eclipse.lsp4e.cpp.language"
|
id="org.eclipse.cdt.lsp.core"
|
||||||
download-size="0"
|
download-size="0"
|
||||||
install-size="0"
|
install-size="0"
|
||||||
version="0.0.0"/>
|
version="0.0.0"/>
|
|
@ -1,6 +1,6 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<projectDescription>
|
<projectDescription>
|
||||||
<name>org.eclipse.lsp4e.cpp.language</name>
|
<name>org.eclipse.cdt.lsp.core.tests</name>
|
||||||
<comment></comment>
|
<comment></comment>
|
||||||
<projects>
|
<projects>
|
||||||
</projects>
|
</projects>
|
|
@ -1,13 +1,13 @@
|
||||||
Manifest-Version: 1.0
|
Manifest-Version: 1.0
|
||||||
Bundle-ManifestVersion: 2
|
Bundle-ManifestVersion: 2
|
||||||
Bundle-Name: "Tests for LSP4E C/C++ Support"
|
Bundle-Name: "Tests for LSP4E C/C++ Support"
|
||||||
Bundle-SymbolicName: org.eclipse.lsp4e.cpp.language.tests
|
Bundle-SymbolicName: org.eclipse.cdt.lsp.core.tests
|
||||||
Bundle-Version: 1.0.0.qualifier
|
Bundle-Version: 1.0.0.qualifier
|
||||||
Automatic-Module-Name: org.eclipse.lsp4e.cpp.language.tests
|
Automatic-Module-Name: org.eclipse.lsp4e.cpp.language.tests
|
||||||
Bundle-RequiredExecutionEnvironment: JavaSE-1.8
|
Bundle-RequiredExecutionEnvironment: JavaSE-1.8
|
||||||
Require-Bundle: org.eclipse.lsp4e,
|
Require-Bundle: org.eclipse.lsp4e,
|
||||||
org.eclipse.lsp4j,
|
org.eclipse.lsp4j,
|
||||||
org.eclipse.lsp4j.jsonrpc,
|
org.eclipse.lsp4j.jsonrpc,
|
||||||
org.eclipse.lsp4e.cpp.language,
|
org.eclipse.cdt.lsp.core,
|
||||||
com.google.gson;bundle-version="2.8.2",
|
com.google.gson;bundle-version="2.8.2",
|
||||||
org.junit
|
org.junit
|
|
@ -6,18 +6,15 @@
|
||||||
|
|
||||||
<parent>
|
<parent>
|
||||||
<groupId>org.eclipse.cdt</groupId>
|
<groupId>org.eclipse.cdt</groupId>
|
||||||
<artifactId>org.eclipse.lsp4e.cpp-parent</artifactId>
|
<artifactId>cdt-parent</artifactId>
|
||||||
<version>9.6.0-SNAPSHOT</version>
|
<version>9.6.0-SNAPSHOT</version>
|
||||||
<relativePath>../pom.xml</relativePath>
|
<relativePath>../../pom.xml</relativePath>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
<version>1.0.0-SNAPSHOT</version>
|
<version>1.0.0-SNAPSHOT</version>
|
||||||
<artifactId>org.eclipse.lsp4e.cpp.language.tests</artifactId>
|
<artifactId>org.eclipse.cdt.lsp.core.tests</artifactId>
|
||||||
<packaging>eclipse-test-plugin</packaging>
|
<packaging>eclipse-test-plugin</packaging>
|
||||||
|
|
||||||
<properties>
|
|
||||||
<skipTests>${lsp4e-cpp.skip.tests}</skipTests>
|
|
||||||
</properties>
|
|
||||||
<build>
|
<build>
|
||||||
<plugins>
|
<plugins>
|
||||||
<plugin>
|
<plugin>
|
|
@ -6,15 +6,15 @@
|
||||||
* http://www.eclipse.org/legal/epl-v10.html
|
* http://www.eclipse.org/legal/epl-v10.html
|
||||||
*******************************************************************************/
|
*******************************************************************************/
|
||||||
|
|
||||||
package org.eclipse.lsp4e.cpp.language.tests.cquery;
|
package org.eclipse.cdt.lsp.core.tests.cquery;
|
||||||
|
|
||||||
import java.net.URI;
|
import java.net.URI;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
import org.eclipse.lsp4e.cpp.language.Server2ClientProtocolExtension;
|
import org.eclipse.cdt.lsp.core.Server2ClientProtocolExtension;
|
||||||
import org.eclipse.lsp4e.cpp.language.cquery.*;
|
import org.eclipse.cdt.lsp.core.cquery.*;
|
||||||
import org.eclipse.lsp4j.Position;
|
import org.eclipse.lsp4j.Position;
|
||||||
import org.eclipse.lsp4j.Range;
|
import org.eclipse.lsp4j.Range;
|
||||||
import org.eclipse.lsp4j.jsonrpc.json.JsonRpcMethod;
|
import org.eclipse.lsp4j.jsonrpc.json.JsonRpcMethod;
|
|
@ -1,6 +1,6 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<projectDescription>
|
<projectDescription>
|
||||||
<name>org.eclipse.lsp4e.cpp.language.tests</name>
|
<name>org.eclipse.cdt.lsp.core</name>
|
||||||
<comment></comment>
|
<comment></comment>
|
||||||
<projects>
|
<projects>
|
||||||
</projects>
|
</projects>
|
|
@ -1,7 +1,7 @@
|
||||||
Manifest-Version: 1.0
|
Manifest-Version: 1.0
|
||||||
Bundle-ManifestVersion: 2
|
Bundle-ManifestVersion: 2
|
||||||
Bundle-Name: %Bundle-Name
|
Bundle-Name: %Bundle-Name
|
||||||
Bundle-SymbolicName: org.eclipse.lsp4e.cpp.language;singleton:=true
|
Bundle-SymbolicName: org.eclipse.cdt.lsp.core;singleton:=true
|
||||||
Bundle-Version: 1.0.0.qualifier
|
Bundle-Version: 1.0.0.qualifier
|
||||||
Bundle-RequiredExecutionEnvironment: JavaSE-1.8
|
Bundle-RequiredExecutionEnvironment: JavaSE-1.8
|
||||||
Require-Bundle: org.apache.commons.io,
|
Require-Bundle: org.apache.commons.io,
|
||||||
|
@ -20,9 +20,9 @@ Require-Bundle: org.apache.commons.io,
|
||||||
com.google.gson;bundle-version="2.8.2",
|
com.google.gson;bundle-version="2.8.2",
|
||||||
org.eclipse.lsp4j.jsonrpc
|
org.eclipse.lsp4j.jsonrpc
|
||||||
Bundle-Vendor: %Bundle-Vendor
|
Bundle-Vendor: %Bundle-Vendor
|
||||||
Export-Package: org.eclipse.lsp4e.cpp.language,
|
Export-Package: org.eclipse.cdt.lsp.core,
|
||||||
org.eclipse.lsp4e.cpp.language.cquery
|
org.eclipse.cdt.lsp.core.cquery
|
||||||
Bundle-Activator: org.eclipse.lsp4e.cpp.language.Activator
|
Bundle-Activator: org.eclipse.cdt.lsp.core.Activator
|
||||||
Bundle-ActivationPolicy: lazy
|
Bundle-ActivationPolicy: lazy
|
||||||
Import-Package: org.eclipse.ui.editors.text,
|
Import-Package: org.eclipse.ui.editors.text,
|
||||||
org.eclipse.ui.texteditor
|
org.eclipse.ui.texteditor
|
|
@ -14,10 +14,10 @@
|
||||||
<extension
|
<extension
|
||||||
point="org.eclipse.lsp4e.languageServer">
|
point="org.eclipse.lsp4e.languageServer">
|
||||||
<server
|
<server
|
||||||
class="org.eclipse.lsp4e.cpp.language.CPPStreamConnectionProvider"
|
class="org.eclipse.cdt.lsp.core.CPPStreamConnectionProvider"
|
||||||
id="org.eclipse.lsp4e.languages.cpp"
|
id="org.eclipse.lsp4e.languages.cpp"
|
||||||
label="%server.label"
|
label="%server.label"
|
||||||
clientImpl="org.eclipse.lsp4e.cpp.language.Server2ClientProtocolExtension" >
|
clientImpl="org.eclipse.cdt.lsp.core.Server2ClientProtocolExtension" >
|
||||||
</server>
|
</server>
|
||||||
<contentTypeMapping
|
<contentTypeMapping
|
||||||
contentType="org.eclipse.lsp4e.languages.cpp"
|
contentType="org.eclipse.lsp4e.languages.cpp"
|
||||||
|
@ -43,14 +43,14 @@
|
||||||
<extension
|
<extension
|
||||||
point="org.eclipse.ui.genericeditor.presentationReconcilers">
|
point="org.eclipse.ui.genericeditor.presentationReconcilers">
|
||||||
<presentationReconciler
|
<presentationReconciler
|
||||||
class="org.eclipse.lsp4e.cpp.language.PresentationReconcilerCPP"
|
class="org.eclipse.cdt.lsp.core.PresentationReconcilerCPP"
|
||||||
contentType="org.eclipse.lsp4e.languages.cpp">
|
contentType="org.eclipse.lsp4e.languages.cpp">
|
||||||
</presentationReconciler>
|
</presentationReconciler>
|
||||||
</extension>
|
</extension>
|
||||||
<extension
|
<extension
|
||||||
point="org.eclipse.ui.preferencePages">
|
point="org.eclipse.ui.preferencePages">
|
||||||
<page
|
<page
|
||||||
class="org.eclipse.lsp4e.cpp.language.CPPLanguageServerPreferencePage"
|
class="org.eclipse.cdt.lsp.core.CPPLanguageServerPreferencePage"
|
||||||
category="org.eclipse.cdt.ui.preferences.CPluginPreferencePage"
|
category="org.eclipse.cdt.ui.preferences.CPluginPreferencePage"
|
||||||
id="org.eclipse.lsp4e.cpp.language.CPPLanguageServerPreferencePage"
|
id="org.eclipse.lsp4e.cpp.language.CPPLanguageServerPreferencePage"
|
||||||
name="%PreferencePageTitle">
|
name="%PreferencePageTitle">
|
||||||
|
@ -59,13 +59,13 @@
|
||||||
<extension
|
<extension
|
||||||
point="org.eclipse.core.runtime.preferences">
|
point="org.eclipse.core.runtime.preferences">
|
||||||
<initializer
|
<initializer
|
||||||
class="org.eclipse.lsp4e.cpp.language.PreferenceInitializer">
|
class="org.eclipse.cdt.lsp.core.PreferenceInitializer">
|
||||||
</initializer>
|
</initializer>
|
||||||
</extension>
|
</extension>
|
||||||
<extension
|
<extension
|
||||||
point="org.eclipse.ui.genericeditor.autoEditStrategies">
|
point="org.eclipse.ui.genericeditor.autoEditStrategies">
|
||||||
<autoEditStrategy
|
<autoEditStrategy
|
||||||
class="org.eclipse.lsp4e.cpp.language.AutoIndentStrategyCPP"
|
class="org.eclipse.cdt.lsp.core.AutoIndentStrategyCPP"
|
||||||
contentType="org.eclipse.lsp4e.languages.cpp">
|
contentType="org.eclipse.lsp4e.languages.cpp">
|
||||||
</autoEditStrategy>
|
</autoEditStrategy>
|
||||||
</extension>
|
</extension>
|
|
@ -6,7 +6,7 @@
|
||||||
* http://www.eclipse.org/legal/epl-v10.html
|
* http://www.eclipse.org/legal/epl-v10.html
|
||||||
*******************************************************************************/
|
*******************************************************************************/
|
||||||
|
|
||||||
package org.eclipse.lsp4e.cpp.language;
|
package org.eclipse.cdt.lsp.core;
|
||||||
|
|
||||||
import org.eclipse.core.runtime.IStatus;
|
import org.eclipse.core.runtime.IStatus;
|
||||||
import org.eclipse.core.runtime.Status;
|
import org.eclipse.core.runtime.Status;
|
|
@ -6,7 +6,7 @@
|
||||||
* http://www.eclipse.org/legal/epl-v10.html
|
* http://www.eclipse.org/legal/epl-v10.html
|
||||||
*******************************************************************************/
|
*******************************************************************************/
|
||||||
|
|
||||||
package org.eclipse.lsp4e.cpp.language;
|
package org.eclipse.cdt.lsp.core;
|
||||||
|
|
||||||
import org.eclipse.cdt.internal.ui.text.CAutoIndentStrategy;
|
import org.eclipse.cdt.internal.ui.text.CAutoIndentStrategy;
|
||||||
import org.eclipse.cdt.ui.CUIPlugin;
|
import org.eclipse.cdt.ui.CUIPlugin;
|
|
@ -6,7 +6,7 @@
|
||||||
* http://www.eclipse.org/legal/epl-v10.html
|
* http://www.eclipse.org/legal/epl-v10.html
|
||||||
*******************************************************************************/
|
*******************************************************************************/
|
||||||
|
|
||||||
package org.eclipse.lsp4e.cpp.language;
|
package org.eclipse.cdt.lsp.core;
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
|
|
|
@ -1,118 +1,118 @@
|
||||||
/*******************************************************************************
|
/*******************************************************************************
|
||||||
* Copyright (c) 2017 Ericsson and others.
|
* Copyright (c) 2017 Ericsson and others.
|
||||||
* All rights reserved. This program and the accompanying materials
|
* All rights reserved. This program and the accompanying materials
|
||||||
* are made available under the terms of the Eclipse Public License v1.0
|
* are made available under the terms of the Eclipse Public License v1.0
|
||||||
* which accompanies this distribution, and is available at
|
* which accompanies this distribution, and is available at
|
||||||
* http://www.eclipse.org/legal/epl-v10.html
|
* http://www.eclipse.org/legal/epl-v10.html
|
||||||
*******************************************************************************/
|
*******************************************************************************/
|
||||||
|
|
||||||
package org.eclipse.lsp4e.cpp.language;
|
package org.eclipse.cdt.lsp.core;
|
||||||
|
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.net.URI;
|
import java.net.URI;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import org.eclipse.core.resources.IFile;
|
import org.eclipse.core.resources.IFile;
|
||||||
import org.eclipse.core.resources.IProject;
|
import org.eclipse.core.resources.IProject;
|
||||||
import org.eclipse.core.resources.IResourceChangeEvent;
|
import org.eclipse.core.resources.IResourceChangeEvent;
|
||||||
import org.eclipse.core.resources.IResourceChangeListener;
|
import org.eclipse.core.resources.IResourceChangeListener;
|
||||||
import org.eclipse.core.resources.IResourceDelta;
|
import org.eclipse.core.resources.IResourceDelta;
|
||||||
import org.eclipse.core.runtime.CoreException;
|
import org.eclipse.core.runtime.CoreException;
|
||||||
import org.eclipse.lsp4e.LanguageServersRegistry;
|
import org.eclipse.lsp4e.LanguageServersRegistry;
|
||||||
import org.eclipse.lsp4e.LanguageServersRegistry.LanguageServerDefinition;
|
import org.eclipse.lsp4e.LanguageServersRegistry.LanguageServerDefinition;
|
||||||
import org.eclipse.lsp4e.LanguageServiceAccessor;
|
import org.eclipse.lsp4e.LanguageServiceAccessor;
|
||||||
import org.eclipse.lsp4e.ProjectSpecificLanguageServerWrapper;
|
import org.eclipse.lsp4e.ProjectSpecificLanguageServerWrapper;
|
||||||
import org.eclipse.lsp4j.DidChangeWatchedFilesParams;
|
import org.eclipse.lsp4j.DidChangeWatchedFilesParams;
|
||||||
import org.eclipse.lsp4j.FileChangeType;
|
import org.eclipse.lsp4j.FileChangeType;
|
||||||
import org.eclipse.lsp4j.FileEvent;
|
import org.eclipse.lsp4j.FileEvent;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* A resource listener used to generate FileEvents, as part of the LSP. This
|
* A resource listener used to generate FileEvents, as part of the LSP. This
|
||||||
* only listens to Added, Changed, Removed event on a specific project that as a
|
* only listens to Added, Changed, Removed event on a specific project that as a
|
||||||
* C/C++ language server started.
|
* C/C++ language server started.
|
||||||
*/
|
*/
|
||||||
@SuppressWarnings("restriction")
|
@SuppressWarnings("restriction")
|
||||||
final class CPPResourceChangeListener implements IResourceChangeListener {
|
final class CPPResourceChangeListener implements IResourceChangeListener {
|
||||||
private final IProject fProject;
|
private final IProject fProject;
|
||||||
|
|
||||||
CPPResourceChangeListener(IProject project) {
|
CPPResourceChangeListener(IProject project) {
|
||||||
fProject = project;
|
fProject = project;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void resourceChanged(IResourceChangeEvent event) {
|
public void resourceChanged(IResourceChangeEvent event) {
|
||||||
LanguageServerDefinition definition = LanguageServersRegistry.getInstance().getDefinition(CPPStreamConnectionProvider.ID);
|
LanguageServerDefinition definition = LanguageServersRegistry.getInstance().getDefinition(CPPStreamConnectionProvider.ID);
|
||||||
ProjectSpecificLanguageServerWrapper wrapper = getLanguageSeverWrapper(definition);
|
ProjectSpecificLanguageServerWrapper wrapper = getLanguageSeverWrapper(definition);
|
||||||
if (event.getType() != IResourceChangeEvent.POST_CHANGE || !isRelevantDelta(event.getDelta())
|
if (event.getType() != IResourceChangeEvent.POST_CHANGE || !isRelevantDelta(event.getDelta())
|
||||||
|| wrapper == null) {
|
|| wrapper == null) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
sendFileEvents(wrapper, createFileEventsFromResourceEvent(event));
|
sendFileEvents(wrapper, createFileEventsFromResourceEvent(event));
|
||||||
}
|
}
|
||||||
|
|
||||||
private static void sendFileEvents(ProjectSpecificLanguageServerWrapper wrapper, List<FileEvent> fileEvents) {
|
private static void sendFileEvents(ProjectSpecificLanguageServerWrapper wrapper, List<FileEvent> fileEvents) {
|
||||||
if (!fileEvents.isEmpty()) {
|
if (!fileEvents.isEmpty()) {
|
||||||
DidChangeWatchedFilesParams params = new DidChangeWatchedFilesParams(fileEvents);
|
DidChangeWatchedFilesParams params = new DidChangeWatchedFilesParams(fileEvents);
|
||||||
wrapper.getServer().getWorkspaceService().didChangeWatchedFiles(params);
|
wrapper.getServer().getWorkspaceService().didChangeWatchedFiles(params);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private static List<FileEvent> createFileEventsFromResourceEvent(IResourceChangeEvent event) {
|
private static List<FileEvent> createFileEventsFromResourceEvent(IResourceChangeEvent event) {
|
||||||
List<FileEvent> fileEvents = new ArrayList<>();
|
List<FileEvent> fileEvents = new ArrayList<>();
|
||||||
try {
|
try {
|
||||||
event.getDelta().accept((delta) -> {
|
event.getDelta().accept((delta) -> {
|
||||||
if (delta.getResource() instanceof IFile && isRelevantDelta(delta)) {
|
if (delta.getResource() instanceof IFile && isRelevantDelta(delta)) {
|
||||||
FileEvent fileEvent = createFileEventFromDelta(delta);
|
FileEvent fileEvent = createFileEventFromDelta(delta);
|
||||||
if (fileEvent != null) {
|
if (fileEvent != null) {
|
||||||
fileEvents.add(fileEvent);
|
fileEvents.add(fileEvent);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
}, false);
|
}, false);
|
||||||
} catch (CoreException e) {
|
} catch (CoreException e) {
|
||||||
// Do nothing
|
// Do nothing
|
||||||
}
|
}
|
||||||
return fileEvents;
|
return fileEvents;
|
||||||
}
|
}
|
||||||
|
|
||||||
private ProjectSpecificLanguageServerWrapper getLanguageSeverWrapper(LanguageServerDefinition definition) {
|
private ProjectSpecificLanguageServerWrapper getLanguageSeverWrapper(LanguageServerDefinition definition) {
|
||||||
try {
|
try {
|
||||||
return LanguageServiceAccessor.getLSWrapperForConnection(fProject, definition);
|
return LanguageServiceAccessor.getLSWrapperForConnection(fProject, definition);
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
// Do nothing
|
// Do nothing
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private static boolean isRelevantDelta(IResourceDelta delta) {
|
private static boolean isRelevantDelta(IResourceDelta delta) {
|
||||||
int kind = delta.getKind();
|
int kind = delta.getKind();
|
||||||
int flags = delta.getFlags();
|
int flags = delta.getFlags();
|
||||||
if (delta.getResource() instanceof IFile && kind == IResourceDelta.CHANGED) {
|
if (delta.getResource() instanceof IFile && kind == IResourceDelta.CHANGED) {
|
||||||
return (flags & IResourceDelta.CONTENT) != 0;
|
return (flags & IResourceDelta.CONTENT) != 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
return kind == IResourceDelta.ADDED || kind == IResourceDelta.CHANGED || kind == IResourceDelta.REMOVED;
|
return kind == IResourceDelta.ADDED || kind == IResourceDelta.CHANGED || kind == IResourceDelta.REMOVED;
|
||||||
}
|
}
|
||||||
|
|
||||||
private static FileEvent createFileEventFromDelta(IResourceDelta delta) {
|
private static FileEvent createFileEventFromDelta(IResourceDelta delta) {
|
||||||
URI locationURI = delta.getResource().getLocationURI();
|
URI locationURI = delta.getResource().getLocationURI();
|
||||||
if (locationURI == null) {
|
if (locationURI == null) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
FileChangeType changeType = null;
|
FileChangeType changeType = null;
|
||||||
if (delta.getKind() == IResourceDelta.ADDED) {
|
if (delta.getKind() == IResourceDelta.ADDED) {
|
||||||
changeType = FileChangeType.Created;
|
changeType = FileChangeType.Created;
|
||||||
} else if (delta.getKind() == IResourceDelta.CHANGED) {
|
} else if (delta.getKind() == IResourceDelta.CHANGED) {
|
||||||
changeType = FileChangeType.Changed;
|
changeType = FileChangeType.Changed;
|
||||||
} else if (delta.getKind() == IResourceDelta.REMOVED) {
|
} else if (delta.getKind() == IResourceDelta.REMOVED) {
|
||||||
changeType = FileChangeType.Deleted;
|
changeType = FileChangeType.Deleted;
|
||||||
} else {
|
} else {
|
||||||
throw new IllegalStateException("Unsupported resource delta kind: " + delta.getKind()); //$NON-NLS-1$
|
throw new IllegalStateException("Unsupported resource delta kind: " + delta.getKind()); //$NON-NLS-1$
|
||||||
}
|
}
|
||||||
|
|
||||||
return new FileEvent(locationURI.toString(), changeType);
|
return new FileEvent(locationURI.toString(), changeType);
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -6,7 +6,7 @@
|
||||||
* http://www.eclipse.org/legal/epl-v10.html
|
* http://www.eclipse.org/legal/epl-v10.html
|
||||||
*******************************************************************************/
|
*******************************************************************************/
|
||||||
|
|
||||||
package org.eclipse.lsp4e.cpp.language;
|
package org.eclipse.cdt.lsp.core;
|
||||||
|
|
||||||
import java.io.BufferedReader;
|
import java.io.BufferedReader;
|
||||||
import java.io.File;
|
import java.io.File;
|
|
@ -6,7 +6,7 @@
|
||||||
* http://www.eclipse.org/legal/epl-v10.html
|
* http://www.eclipse.org/legal/epl-v10.html
|
||||||
*******************************************************************************/
|
*******************************************************************************/
|
||||||
|
|
||||||
package org.eclipse.lsp4e.cpp.language;
|
package org.eclipse.cdt.lsp.core;
|
||||||
|
|
||||||
import java.net.URI;
|
import java.net.URI;
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
* http://www.eclipse.org/legal/epl-v10.html
|
* http://www.eclipse.org/legal/epl-v10.html
|
||||||
*******************************************************************************/
|
*******************************************************************************/
|
||||||
|
|
||||||
package org.eclipse.lsp4e.cpp.language;
|
package org.eclipse.cdt.lsp.core;
|
||||||
|
|
||||||
import java.net.URI;
|
import java.net.URI;
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
* http://www.eclipse.org/legal/epl-v10.html
|
* http://www.eclipse.org/legal/epl-v10.html
|
||||||
*******************************************************************************/
|
*******************************************************************************/
|
||||||
|
|
||||||
package org.eclipse.lsp4e.cpp.language;
|
package org.eclipse.cdt.lsp.core;
|
||||||
|
|
||||||
import java.net.URI;
|
import java.net.URI;
|
||||||
/*
|
/*
|
|
@ -6,7 +6,7 @@
|
||||||
* http://www.eclipse.org/legal/epl-v10.html
|
* http://www.eclipse.org/legal/epl-v10.html
|
||||||
*******************************************************************************/
|
*******************************************************************************/
|
||||||
|
|
||||||
package org.eclipse.lsp4e.cpp.language;
|
package org.eclipse.cdt.lsp.core;
|
||||||
|
|
||||||
import org.eclipse.cdt.internal.ui.editor.CEditor;
|
import org.eclipse.cdt.internal.ui.editor.CEditor;
|
||||||
import org.eclipse.cdt.ui.CUIPlugin;
|
import org.eclipse.cdt.ui.CUIPlugin;
|
|
@ -6,7 +6,7 @@
|
||||||
* http://www.eclipse.org/legal/epl-v10.html
|
* http://www.eclipse.org/legal/epl-v10.html
|
||||||
*******************************************************************************/
|
*******************************************************************************/
|
||||||
|
|
||||||
package org.eclipse.lsp4e.cpp.language;
|
package org.eclipse.cdt.lsp.core;
|
||||||
|
|
||||||
import org.eclipse.osgi.util.NLS;
|
import org.eclipse.osgi.util.NLS;
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
* http://www.eclipse.org/legal/epl-v10.html
|
* http://www.eclipse.org/legal/epl-v10.html
|
||||||
*******************************************************************************/
|
*******************************************************************************/
|
||||||
|
|
||||||
package org.eclipse.lsp4e.cpp.language;
|
package org.eclipse.cdt.lsp.core;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Constant definitions for LSP4E-CPP plug-in preferences.
|
* Constant definitions for LSP4E-CPP plug-in preferences.
|
|
@ -6,7 +6,7 @@
|
||||||
* http://www.eclipse.org/legal/epl-v10.html
|
* http://www.eclipse.org/legal/epl-v10.html
|
||||||
*******************************************************************************/
|
*******************************************************************************/
|
||||||
|
|
||||||
package org.eclipse.lsp4e.cpp.language;
|
package org.eclipse.cdt.lsp.core;
|
||||||
|
|
||||||
import org.eclipse.core.runtime.preferences.AbstractPreferenceInitializer;
|
import org.eclipse.core.runtime.preferences.AbstractPreferenceInitializer;
|
||||||
import org.eclipse.jface.preference.IPreferenceStore;
|
import org.eclipse.jface.preference.IPreferenceStore;
|
|
@ -15,7 +15,7 @@
|
||||||
* Manish Khurana
|
* Manish Khurana
|
||||||
*******************************************************************************/
|
*******************************************************************************/
|
||||||
|
|
||||||
package org.eclipse.lsp4e.cpp.language;
|
package org.eclipse.cdt.lsp.core;
|
||||||
|
|
||||||
import java.net.URI;
|
import java.net.URI;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
|
@ -6,7 +6,7 @@
|
||||||
* http://www.eclipse.org/legal/epl-v10.html
|
* http://www.eclipse.org/legal/epl-v10.html
|
||||||
*******************************************************************************/
|
*******************************************************************************/
|
||||||
|
|
||||||
package org.eclipse.lsp4e.cpp.language;
|
package org.eclipse.cdt.lsp.core;
|
||||||
|
|
||||||
import java.net.URI;
|
import java.net.URI;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
@ -14,6 +14,10 @@ import java.util.List;
|
||||||
|
|
||||||
import org.eclipse.cdt.internal.ui.editor.SemanticHighlightingManager.HighlightedPosition;
|
import org.eclipse.cdt.internal.ui.editor.SemanticHighlightingManager.HighlightedPosition;
|
||||||
import org.eclipse.cdt.internal.ui.editor.SemanticHighlightingManager.HighlightingStyle;
|
import org.eclipse.cdt.internal.ui.editor.SemanticHighlightingManager.HighlightingStyle;
|
||||||
|
import org.eclipse.cdt.lsp.core.cquery.CqueryInactiveRegions;
|
||||||
|
import org.eclipse.cdt.lsp.core.cquery.CquerySemanticHighlights;
|
||||||
|
import org.eclipse.cdt.lsp.core.cquery.HighlightSymbol;
|
||||||
|
import org.eclipse.cdt.lsp.core.cquery.IndexingProgressStats;
|
||||||
import org.eclipse.cdt.ui.CUIPlugin;
|
import org.eclipse.cdt.ui.CUIPlugin;
|
||||||
import org.eclipse.cdt.ui.PreferenceConstants;
|
import org.eclipse.cdt.ui.PreferenceConstants;
|
||||||
import org.eclipse.core.resources.IFile;
|
import org.eclipse.core.resources.IFile;
|
||||||
|
@ -30,10 +34,6 @@ import org.eclipse.jface.text.TextAttribute;
|
||||||
import org.eclipse.jface.text.TextPresentation;
|
import org.eclipse.jface.text.TextPresentation;
|
||||||
import org.eclipse.lsp4e.LSPEclipseUtils;
|
import org.eclipse.lsp4e.LSPEclipseUtils;
|
||||||
import org.eclipse.lsp4e.LanguageClientImpl;
|
import org.eclipse.lsp4e.LanguageClientImpl;
|
||||||
import org.eclipse.lsp4e.cpp.language.cquery.CqueryInactiveRegions;
|
|
||||||
import org.eclipse.lsp4e.cpp.language.cquery.CquerySemanticHighlights;
|
|
||||||
import org.eclipse.lsp4e.cpp.language.cquery.HighlightSymbol;
|
|
||||||
import org.eclipse.lsp4e.cpp.language.cquery.IndexingProgressStats;
|
|
||||||
import org.eclipse.lsp4j.Range;
|
import org.eclipse.lsp4j.Range;
|
||||||
import org.eclipse.lsp4j.jsonrpc.services.JsonNotification;
|
import org.eclipse.lsp4j.jsonrpc.services.JsonNotification;
|
||||||
import org.eclipse.osgi.util.NLS;
|
import org.eclipse.osgi.util.NLS;
|
|
@ -6,7 +6,7 @@
|
||||||
* http://www.eclipse.org/legal/epl-v10.html
|
* http://www.eclipse.org/legal/epl-v10.html
|
||||||
*******************************************************************************/
|
*******************************************************************************/
|
||||||
|
|
||||||
package org.eclipse.lsp4e.cpp.language.cquery;
|
package org.eclipse.cdt.lsp.core.cquery;
|
||||||
|
|
||||||
import java.net.URI;
|
import java.net.URI;
|
||||||
import java.util.List;
|
import java.util.List;
|
|
@ -6,7 +6,7 @@
|
||||||
* http://www.eclipse.org/legal/epl-v10.html
|
* http://www.eclipse.org/legal/epl-v10.html
|
||||||
*******************************************************************************/
|
*******************************************************************************/
|
||||||
|
|
||||||
package org.eclipse.lsp4e.cpp.language.cquery;
|
package org.eclipse.cdt.lsp.core.cquery;
|
||||||
|
|
||||||
import java.net.URI;
|
import java.net.URI;
|
||||||
import java.util.List;
|
import java.util.List;
|
|
@ -6,7 +6,7 @@
|
||||||
* http://www.eclipse.org/legal/epl-v10.html
|
* http://www.eclipse.org/legal/epl-v10.html
|
||||||
*******************************************************************************/
|
*******************************************************************************/
|
||||||
|
|
||||||
package org.eclipse.lsp4e.cpp.language.cquery;
|
package org.eclipse.cdt.lsp.core.cquery;
|
||||||
|
|
||||||
enum CquerySymbolKind {
|
enum CquerySymbolKind {
|
||||||
Unknown(0), TypeAlias(252), Parameter(253), StaticMethod(254), Macro(255);
|
Unknown(0), TypeAlias(252), Parameter(253), StaticMethod(254), Macro(255);
|
|
@ -6,7 +6,7 @@
|
||||||
* http://www.eclipse.org/legal/epl-v10.html
|
* http://www.eclipse.org/legal/epl-v10.html
|
||||||
*******************************************************************************/
|
*******************************************************************************/
|
||||||
|
|
||||||
package org.eclipse.lsp4e.cpp.language.cquery;
|
package org.eclipse.cdt.lsp.core.cquery;
|
||||||
|
|
||||||
import java.lang.reflect.Type;
|
import java.lang.reflect.Type;
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
* http://www.eclipse.org/legal/epl-v10.html
|
* http://www.eclipse.org/legal/epl-v10.html
|
||||||
*******************************************************************************/
|
*******************************************************************************/
|
||||||
|
|
||||||
package org.eclipse.lsp4e.cpp.language.cquery;
|
package org.eclipse.cdt.lsp.core.cquery;
|
||||||
|
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
|
@ -6,7 +6,7 @@
|
||||||
* http://www.eclipse.org/legal/epl-v10.html
|
* http://www.eclipse.org/legal/epl-v10.html
|
||||||
*******************************************************************************/
|
*******************************************************************************/
|
||||||
|
|
||||||
package org.eclipse.lsp4e.cpp.language.cquery;
|
package org.eclipse.cdt.lsp.core.cquery;
|
||||||
|
|
||||||
public class IndexingProgressStats {
|
public class IndexingProgressStats {
|
||||||
private int indexRequestCount;
|
private int indexRequestCount;
|
|
@ -6,7 +6,7 @@
|
||||||
* http://www.eclipse.org/legal/epl-v10.html
|
* http://www.eclipse.org/legal/epl-v10.html
|
||||||
*******************************************************************************/
|
*******************************************************************************/
|
||||||
|
|
||||||
package org.eclipse.lsp4e.cpp.language.cquery;
|
package org.eclipse.cdt.lsp.core.cquery;
|
||||||
|
|
||||||
public enum StorageClass {
|
public enum StorageClass {
|
||||||
Invalid(0), None(1), Extern(2), Static(3), PrivateExtern(4), Auto(5), Register(6);
|
Invalid(0), None(1), Extern(2), Static(3), PrivateExtern(4), Auto(5), Register(6);
|
15
lsp/pom.xml
Normal file
15
lsp/pom.xml
Normal file
|
@ -0,0 +1,15 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project
|
||||||
|
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
|
||||||
|
xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
||||||
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
|
||||||
|
<parent>
|
||||||
|
<groupId>org.eclipse.cdt</groupId>
|
||||||
|
<artifactId>cdt-parent</artifactId>
|
||||||
|
<version>9.6.0-SNAPSHOT</version>
|
||||||
|
</parent>
|
||||||
|
|
||||||
|
<artifactId>org.eclipse.cdt.lsp-parent</artifactId>
|
||||||
|
<packaging>pom</packaging>
|
||||||
|
</project>
|
|
@ -1,9 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<extensions>
|
|
||||||
<extension>
|
|
||||||
<groupId>org.eclipse.tycho.extras</groupId>
|
|
||||||
<artifactId>tycho-pomless</artifactId>
|
|
||||||
<version>1.0.0</version>
|
|
||||||
</extension>
|
|
||||||
</extensions>
|
|
||||||
|
|
|
@ -1,203 +0,0 @@
|
||||||
Eclipse Public License - v 1.0
|
|
||||||
|
|
||||||
THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE PUBLIC
|
|
||||||
LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THE PROGRAM
|
|
||||||
CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS AGREEMENT.
|
|
||||||
|
|
||||||
1. DEFINITIONS
|
|
||||||
|
|
||||||
"Contribution" means:
|
|
||||||
|
|
||||||
a) in the case of the initial Contributor, the initial code and documentation
|
|
||||||
distributed under this Agreement, and
|
|
||||||
b) in the case of each subsequent Contributor:
|
|
||||||
i) changes to the Program, and
|
|
||||||
ii) additions to the Program;
|
|
||||||
|
|
||||||
where such changes and/or additions to the Program originate from and are
|
|
||||||
distributed by that particular Contributor. A Contribution 'originates'
|
|
||||||
from a Contributor if it was added to the Program by such Contributor
|
|
||||||
itself or anyone acting on such Contributor's behalf. Contributions do not
|
|
||||||
include additions to the Program which: (i) are separate modules of
|
|
||||||
software distributed in conjunction with the Program under their own
|
|
||||||
license agreement, and (ii) are not derivative works of the Program.
|
|
||||||
|
|
||||||
"Contributor" means any person or entity that distributes the Program.
|
|
||||||
|
|
||||||
"Licensed Patents" mean patent claims licensable by a Contributor which are
|
|
||||||
necessarily infringed by the use or sale of its Contribution alone or when
|
|
||||||
combined with the Program.
|
|
||||||
|
|
||||||
"Program" means the Contributions distributed in accordance with this
|
|
||||||
Agreement.
|
|
||||||
|
|
||||||
"Recipient" means anyone who receives the Program under this Agreement,
|
|
||||||
including all Contributors.
|
|
||||||
|
|
||||||
2. GRANT OF RIGHTS
|
|
||||||
a) Subject to the terms of this Agreement, each Contributor hereby grants
|
|
||||||
Recipient a non-exclusive, worldwide, royalty-free copyright license to
|
|
||||||
reproduce, prepare derivative works of, publicly display, publicly
|
|
||||||
perform, distribute and sublicense the Contribution of such Contributor,
|
|
||||||
if any, and such derivative works, in source code and object code form.
|
|
||||||
b) Subject to the terms of this Agreement, each Contributor hereby grants
|
|
||||||
Recipient a non-exclusive, worldwide, royalty-free patent license under
|
|
||||||
Licensed Patents to make, use, sell, offer to sell, import and otherwise
|
|
||||||
transfer the Contribution of such Contributor, if any, in source code and
|
|
||||||
object code form. This patent license shall apply to the combination of
|
|
||||||
the Contribution and the Program if, at the time the Contribution is
|
|
||||||
added by the Contributor, such addition of the Contribution causes such
|
|
||||||
combination to be covered by the Licensed Patents. The patent license
|
|
||||||
shall not apply to any other combinations which include the Contribution.
|
|
||||||
No hardware per se is licensed hereunder.
|
|
||||||
c) Recipient understands that although each Contributor grants the licenses
|
|
||||||
to its Contributions set forth herein, no assurances are provided by any
|
|
||||||
Contributor that the Program does not infringe the patent or other
|
|
||||||
intellectual property rights of any other entity. Each Contributor
|
|
||||||
disclaims any liability to Recipient for claims brought by any other
|
|
||||||
entity based on infringement of intellectual property rights or
|
|
||||||
otherwise. As a condition to exercising the rights and licenses granted
|
|
||||||
hereunder, each Recipient hereby assumes sole responsibility to secure
|
|
||||||
any other intellectual property rights needed, if any. For example, if a
|
|
||||||
third party patent license is required to allow Recipient to distribute
|
|
||||||
the Program, it is Recipient's responsibility to acquire that license
|
|
||||||
before distributing the Program.
|
|
||||||
d) Each Contributor represents that to its knowledge it has sufficient
|
|
||||||
copyright rights in its Contribution, if any, to grant the copyright
|
|
||||||
license set forth in this Agreement.
|
|
||||||
|
|
||||||
3. REQUIREMENTS
|
|
||||||
|
|
||||||
A Contributor may choose to distribute the Program in object code form under
|
|
||||||
its own license agreement, provided that:
|
|
||||||
|
|
||||||
a) it complies with the terms and conditions of this Agreement; and
|
|
||||||
b) its license agreement:
|
|
||||||
i) effectively disclaims on behalf of all Contributors all warranties
|
|
||||||
and conditions, express and implied, including warranties or
|
|
||||||
conditions of title and non-infringement, and implied warranties or
|
|
||||||
conditions of merchantability and fitness for a particular purpose;
|
|
||||||
ii) effectively excludes on behalf of all Contributors all liability for
|
|
||||||
damages, including direct, indirect, special, incidental and
|
|
||||||
consequential damages, such as lost profits;
|
|
||||||
iii) states that any provisions which differ from this Agreement are
|
|
||||||
offered by that Contributor alone and not by any other party; and
|
|
||||||
iv) states that source code for the Program is available from such
|
|
||||||
Contributor, and informs licensees how to obtain it in a reasonable
|
|
||||||
manner on or through a medium customarily used for software exchange.
|
|
||||||
|
|
||||||
When the Program is made available in source code form:
|
|
||||||
|
|
||||||
a) it must be made available under this Agreement; and
|
|
||||||
b) a copy of this Agreement must be included with each copy of the Program.
|
|
||||||
Contributors may not remove or alter any copyright notices contained
|
|
||||||
within the Program.
|
|
||||||
|
|
||||||
Each Contributor must identify itself as the originator of its Contribution,
|
|
||||||
if
|
|
||||||
any, in a manner that reasonably allows subsequent Recipients to identify the
|
|
||||||
originator of the Contribution.
|
|
||||||
|
|
||||||
4. COMMERCIAL DISTRIBUTION
|
|
||||||
|
|
||||||
Commercial distributors of software may accept certain responsibilities with
|
|
||||||
respect to end users, business partners and the like. While this license is
|
|
||||||
intended to facilitate the commercial use of the Program, the Contributor who
|
|
||||||
includes the Program in a commercial product offering should do so in a manner
|
|
||||||
which does not create potential liability for other Contributors. Therefore,
|
|
||||||
if a Contributor includes the Program in a commercial product offering, such
|
|
||||||
Contributor ("Commercial Contributor") hereby agrees to defend and indemnify
|
|
||||||
every other Contributor ("Indemnified Contributor") against any losses,
|
|
||||||
damages and costs (collectively "Losses") arising from claims, lawsuits and
|
|
||||||
other legal actions brought by a third party against the Indemnified
|
|
||||||
Contributor to the extent caused by the acts or omissions of such Commercial
|
|
||||||
Contributor in connection with its distribution of the Program in a commercial
|
|
||||||
product offering. The obligations in this section do not apply to any claims
|
|
||||||
or Losses relating to any actual or alleged intellectual property
|
|
||||||
infringement. In order to qualify, an Indemnified Contributor must:
|
|
||||||
a) promptly notify the Commercial Contributor in writing of such claim, and
|
|
||||||
b) allow the Commercial Contributor to control, and cooperate with the
|
|
||||||
Commercial Contributor in, the defense and any related settlement
|
|
||||||
negotiations. The Indemnified Contributor may participate in any such claim at
|
|
||||||
its own expense.
|
|
||||||
|
|
||||||
For example, a Contributor might include the Program in a commercial product
|
|
||||||
offering, Product X. That Contributor is then a Commercial Contributor. If
|
|
||||||
that Commercial Contributor then makes performance claims, or offers
|
|
||||||
warranties related to Product X, those performance claims and warranties are
|
|
||||||
such Commercial Contributor's responsibility alone. Under this section, the
|
|
||||||
Commercial Contributor would have to defend claims against the other
|
|
||||||
Contributors related to those performance claims and warranties, and if a
|
|
||||||
court requires any other Contributor to pay any damages as a result, the
|
|
||||||
Commercial Contributor must pay those damages.
|
|
||||||
|
|
||||||
5. NO WARRANTY
|
|
||||||
|
|
||||||
EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS PROVIDED ON AN
|
|
||||||
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR
|
|
||||||
IMPLIED INCLUDING, WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE,
|
|
||||||
NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each
|
|
||||||
Recipient is solely responsible for determining the appropriateness of using
|
|
||||||
and distributing the Program and assumes all risks associated with its
|
|
||||||
exercise of rights under this Agreement , including but not limited to the
|
|
||||||
risks and costs of program errors, compliance with applicable laws, damage to
|
|
||||||
or loss of data, programs or equipment, and unavailability or interruption of
|
|
||||||
operations.
|
|
||||||
|
|
||||||
6. DISCLAIMER OF LIABILITY
|
|
||||||
|
|
||||||
EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT NOR ANY
|
|
||||||
CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
|
||||||
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING WITHOUT LIMITATION
|
|
||||||
LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
|
||||||
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
|
||||||
ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION OF THE PROGRAM OR THE
|
|
||||||
EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY
|
|
||||||
OF SUCH DAMAGES.
|
|
||||||
|
|
||||||
7. GENERAL
|
|
||||||
|
|
||||||
If any provision of this Agreement is invalid or unenforceable under
|
|
||||||
applicable law, it shall not affect the validity or enforceability of the
|
|
||||||
remainder of the terms of this Agreement, and without further action by the
|
|
||||||
parties hereto, such provision shall be reformed to the minimum extent
|
|
||||||
necessary to make such provision valid and enforceable.
|
|
||||||
|
|
||||||
If Recipient institutes patent litigation against any entity (including a
|
|
||||||
cross-claim or counterclaim in a lawsuit) alleging that the Program itself
|
|
||||||
(excluding combinations of the Program with other software or hardware)
|
|
||||||
infringes such Recipient's patent(s), then such Recipient's rights granted
|
|
||||||
under Section 2(b) shall terminate as of the date such litigation is filed.
|
|
||||||
|
|
||||||
All Recipient's rights under this Agreement shall terminate if it fails to
|
|
||||||
comply with any of the material terms or conditions of this Agreement and does
|
|
||||||
not cure such failure in a reasonable period of time after becoming aware of
|
|
||||||
such noncompliance. If all Recipient's rights under this Agreement terminate,
|
|
||||||
Recipient agrees to cease use and distribution of the Program as soon as
|
|
||||||
reasonably practicable. However, Recipient's obligations under this Agreement
|
|
||||||
and any licenses granted by Recipient relating to the Program shall continue
|
|
||||||
and survive.
|
|
||||||
|
|
||||||
Everyone is permitted to copy and distribute copies of this Agreement, but in
|
|
||||||
order to avoid inconsistency the Agreement is copyrighted and may only be
|
|
||||||
modified in the following manner. The Agreement Steward reserves the right to
|
|
||||||
publish new versions (including revisions) of this Agreement from time to
|
|
||||||
time. No one other than the Agreement Steward has the right to modify this
|
|
||||||
Agreement. The Eclipse Foundation is the initial Agreement Steward. The
|
|
||||||
Eclipse Foundation may assign the responsibility to serve as the Agreement
|
|
||||||
Steward to a suitable separate entity. Each new version of the Agreement will
|
|
||||||
be given a distinguishing version number. The Program (including
|
|
||||||
Contributions) may always be distributed subject to the version of the
|
|
||||||
Agreement under which it was received. In addition, after a new version of the
|
|
||||||
Agreement is published, Contributor may elect to distribute the Program
|
|
||||||
(including its Contributions) under the new version. Except as expressly
|
|
||||||
stated in Sections 2(a) and 2(b) above, Recipient receives no rights or
|
|
||||||
licenses to the intellectual property of any Contributor under this Agreement,
|
|
||||||
whether expressly, by implication, estoppel or otherwise. All rights in the
|
|
||||||
Program not expressly granted under this Agreement are reserved.
|
|
||||||
|
|
||||||
This Agreement is governed by the laws of the State of New York and the
|
|
||||||
intellectual property laws of the United States of America. No party to this
|
|
||||||
Agreement will bring a legal action under this Agreement more than one year
|
|
||||||
after the cause of action arose. Each party waives its rights to a jury trial in
|
|
||||||
any resulting litigation.
|
|
|
@ -1,29 +0,0 @@
|
||||||
# LSP4E-CPP: C/C++ Language Server Support in Eclipse IDE
|
|
||||||
|
|
||||||
Support for C/C++ edition in Eclipse IDE using the Language Server Protocol. Relies on Clangd and the Language Server Protocol.
|
|
||||||
|
|
||||||
## Prerequisites
|
|
||||||
|
|
||||||
You need `Clangd` working on CLI (visible in `PATH` environment variable). Since `Clangd` is very young, you will most likely need to compile it from source, see the [Clang documentation](http://clang.llvm.org/get_started.html) for more instructions. Make sure you you do checkout the `Clang extra Tools`.
|
|
||||||
|
|
||||||
## Build from source
|
|
||||||
|
|
||||||
### Requirements
|
|
||||||
* `Maven 3.3` or greater
|
|
||||||
* `Java 8` (make sure it is seen by Maven with ```mvn -version```)
|
|
||||||
|
|
||||||
With the repository cloned, simply execute ```mvn clean package```. The p2 repository will be in ```$LSP4E_CPP_ROOT/org.eclipse.lsp4e.cpp.site/target/repository```.
|
|
||||||
|
|
||||||
## Installation in Eclipse IDE
|
|
||||||
|
|
||||||
Go to Help > Install new Software. Add the local repository ```$LSP4E_CPP_ROOT/org.eclipse.lsp4e.cpp.site/target/repository```.
|
|
||||||
|
|
||||||
## Usage ##
|
|
||||||
|
|
||||||
Once the plug-in is installed, right-click on a C/C++ source file and open with the `Generic Text Editor`.
|
|
||||||
|
|
||||||
## Concept
|
|
||||||
|
|
||||||
LSP4E-CPP uses the [lsp4e](https://projects.eclipse.org/projects/technology.lsp4e) project to integrate with [Clangd (part of Clang "extra" tools)](http://clang.llvm.org/extra/) with the goal to provide a rich C/C++ editor in the Eclipse IDE.
|
|
||||||
|
|
||||||
Keep in mind that `Clangd` is very young and just getting started so not many features are functional at this moment.
|
|
|
@ -1,11 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<projectDescription>
|
|
||||||
<name>org.eclipse.lsp4e.cpp.site</name>
|
|
||||||
<comment></comment>
|
|
||||||
<projects>
|
|
||||||
</projects>
|
|
||||||
<buildSpec>
|
|
||||||
</buildSpec>
|
|
||||||
<natures>
|
|
||||||
</natures>
|
|
||||||
</projectDescription>
|
|
|
@ -1,13 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<site>
|
|
||||||
<description>
|
|
||||||
Update site for LSP4E C/C++ Support.
|
|
||||||
</description>
|
|
||||||
<feature url="features/org.eclipse.lsp4e.cpp_0.0.0.qualifier.jar" id="org.eclipse.lsp4e.cpp" version="0.0.0">
|
|
||||||
<category name="LSP4E C/C++ Support"/>
|
|
||||||
</feature>
|
|
||||||
<feature url="features/org.eclipse.lsp4e.cpp.source_0.0.0.qualifier.jar" id="org.eclipse.lsp4e.cpp.source" version="0.0.0">
|
|
||||||
<category name="LSP4E C/C++ Support"/>
|
|
||||||
</feature>
|
|
||||||
<category-def name="LSP4E C/C++ Support" label="LSP4E C/C++ Support Main Features"/>
|
|
||||||
</site>
|
|
|
@ -1,29 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<!--
|
|
||||||
Copyright (C) 2016, 2018 Ericsson and others.
|
|
||||||
|
|
||||||
All rights reserved. This program and the accompanying materials
|
|
||||||
are made available under the terms of the Eclipse Public License v1.0
|
|
||||||
which accompanies this distribution, and is available at
|
|
||||||
http://www.eclipse.org/legal/epl-v10.html
|
|
||||||
-->
|
|
||||||
|
|
||||||
<project xmlns="http://maven.apache.org/POM/4.0.0"
|
|
||||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
||||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
|
|
||||||
<modelVersion>4.0.0</modelVersion>
|
|
||||||
|
|
||||||
<parent>
|
|
||||||
<groupId>org.eclipse.cdt</groupId>
|
|
||||||
<artifactId>org.eclipse.lsp4e.cpp-parent</artifactId>
|
|
||||||
<version>9.6.0-SNAPSHOT</version>
|
|
||||||
<relativePath>../pom.xml</relativePath>
|
|
||||||
</parent>
|
|
||||||
|
|
||||||
<artifactId>org.eclipse.lsp4e.cpp.site</artifactId>
|
|
||||||
<packaging>eclipse-repository</packaging>
|
|
||||||
|
|
||||||
<build>
|
|
||||||
<finalName>org.eclipse.lsp4e.cpp.repo</finalName>
|
|
||||||
</build>
|
|
||||||
</project>
|
|
|
@ -1,2 +0,0 @@
|
||||||
eclipse.preferences.version=1
|
|
||||||
encoding/<project>=UTF-8
|
|
|
@ -1,2 +0,0 @@
|
||||||
eclipse.preferences.version=1
|
|
||||||
line.separator=\n
|
|
|
@ -1,22 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<!--
|
|
||||||
Copyright (C) 2017, 2018 Ericsson and others.
|
|
||||||
All rights reserved. This program and the accompanying materials
|
|
||||||
are made available under the terms of the Eclipse Public License v1.0
|
|
||||||
which accompanies this distribution, and is available at
|
|
||||||
http://www.eclipse.org/legal/epl-v10.html
|
|
||||||
-->
|
|
||||||
<project
|
|
||||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
|
|
||||||
xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
||||||
<modelVersion>4.0.0</modelVersion>
|
|
||||||
|
|
||||||
<parent>
|
|
||||||
<groupId>org.eclipse.cdt</groupId>
|
|
||||||
<artifactId>cdt-parent</artifactId>
|
|
||||||
<version>9.6.0-SNAPSHOT</version>
|
|
||||||
</parent>
|
|
||||||
|
|
||||||
<artifactId>org.eclipse.lsp4e.cpp-parent</artifactId>
|
|
||||||
<packaging>pom</packaging>
|
|
||||||
</project>
|
|
7
pom.xml
7
pom.xml
|
@ -167,9 +167,8 @@
|
||||||
<module>lrparser/org.eclipse.cdt.core.lrparser.feature</module>
|
<module>lrparser/org.eclipse.cdt.core.lrparser.feature</module>
|
||||||
<module>lrparser/org.eclipse.cdt.core.lrparser.sdk.feature</module>
|
<module>lrparser/org.eclipse.cdt.core.lrparser.sdk.feature</module>
|
||||||
|
|
||||||
<module>lsp4e-cpp/org.eclipse.lsp4e.cpp</module>
|
<module>lsp/org.eclipse.cdt.lsp.core</module>
|
||||||
<module>lsp4e-cpp/org.eclipse.lsp4e.cpp.language</module>
|
<module>lsp/org.eclipse.cdt.lsp-feature</module>
|
||||||
<module>lsp4e-cpp/org.eclipse.lsp4e.cpp.site</module>
|
|
||||||
|
|
||||||
<module>memory/org.eclipse.cdt.debug.ui.memory.memorybrowser</module>
|
<module>memory/org.eclipse.cdt.debug.ui.memory.memorybrowser</module>
|
||||||
<module>memory/org.eclipse.cdt.debug.ui.memory.floatingpoint</module>
|
<module>memory/org.eclipse.cdt.debug.ui.memory.floatingpoint</module>
|
||||||
|
@ -248,7 +247,7 @@
|
||||||
<module>dsf-gdb/org.eclipse.cdt.tests.dsf.gdb</module>
|
<module>dsf-gdb/org.eclipse.cdt.tests.dsf.gdb</module>
|
||||||
<module>dsf-gdb/org.eclipse.cdt.dsf.gdb.multicorevisualizer.ui.tests</module>
|
<module>dsf-gdb/org.eclipse.cdt.dsf.gdb.multicorevisualizer.ui.tests</module>
|
||||||
<module>jtag/org.eclipse.cdt.debug.gdbjtag.core.tests</module>
|
<module>jtag/org.eclipse.cdt.debug.gdbjtag.core.tests</module>
|
||||||
<module>lsp4e-cpp/org.eclipse.lsp4e.cpp.language.tests</module>
|
<module>lsp/org.eclipse.cdt.lsp.core.tests</module>
|
||||||
<module>qt/org.eclipse.cdt.qt.ui.tests</module>
|
<module>qt/org.eclipse.cdt.qt.ui.tests</module>
|
||||||
<module>testsrunner/org.eclipse.cdt.testsrunner.tests</module>
|
<module>testsrunner/org.eclipse.cdt.testsrunner.tests</module>
|
||||||
<module>xlc/org.eclipse.cdt.errorparsers.xlc.tests</module>
|
<module>xlc/org.eclipse.cdt.errorparsers.xlc.tests</module>
|
||||||
|
|
Loading…
Add table
Reference in a new issue