use of org.eclipse.n4js.semver.Semver.VersionNumber in project n4js by eclipse.
the class JSONIdeContentProposalProvider method proposeVersions.
private void proposeVersions(ContentAssistContext context, IIdeContentProposalAcceptor acceptor, List<String> namePath) {
if (namePath.size() >= 2) {
// somewhat poor heuristic: propose all projects that are known in the current workspace
String devOrDep = namePath.get(namePath.size() - 2);
if (PackageJsonProperties.DEPENDENCIES.name.equals(devOrDep) || PackageJsonProperties.DEV_DEPENDENCIES.name.equals(devOrDep)) {
NameValuePair pair = (NameValuePair) context.getCurrentModel();
N4JSProjectConfigSnapshot project = workspaceAccess.findProjectByName(context.getResource(), pair.getName());
if (project != null) {
VersionNumber version = project.getVersion();
ContentAssistEntry versionEntry = getProposalCreator().createProposal('"' + version.toString() + '"', context, ContentAssistEntry.KIND_VALUE, null);
acceptor.accept(versionEntry, getProposalPriorities().getDefaultPriority(versionEntry));
}
ContentAssistEntry wildcard = getProposalCreator().createProposal("\"*\"", context, ContentAssistEntry.KIND_VALUE, null);
acceptor.accept(wildcard, getProposalPriorities().getDefaultPriority(wildcard));
}
}
}
use of org.eclipse.n4js.semver.Semver.VersionNumber in project n4js by eclipse.
the class HyphenVersionRangeImpl method basicSetFrom.
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public NotificationChain basicSetFrom(VersionNumber newFrom, NotificationChain msgs) {
VersionNumber oldFrom = from;
from = newFrom;
if (eNotificationRequired()) {
ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SemverPackage.HYPHEN_VERSION_RANGE__FROM, oldFrom, newFrom);
if (msgs == null)
msgs = notification;
else
msgs.add(notification);
}
return msgs;
}
use of org.eclipse.n4js.semver.Semver.VersionNumber in project n4js by eclipse.
the class SimpleVersionImpl method basicSetNumber.
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public NotificationChain basicSetNumber(VersionNumber newNumber, NotificationChain msgs) {
VersionNumber oldNumber = number;
number = newNumber;
if (eNotificationRequired()) {
ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SemverPackage.SIMPLE_VERSION__NUMBER, oldNumber, newNumber);
if (msgs == null)
msgs = notification;
else
msgs.add(notification);
}
return msgs;
}
use of org.eclipse.n4js.semver.Semver.VersionNumber in project n4js by eclipse.
the class SemverSemanticSequencer method sequence.
@Override
public void sequence(ISerializationContext context, EObject semanticObject) {
EPackage epackage = semanticObject.eClass().getEPackage();
ParserRule rule = context.getParserRule();
Action action = context.getAssignedAction();
Set<Parameter> parameters = context.getEnabledBooleanParameters();
if (epackage == SemverPackage.eINSTANCE)
switch(semanticObject.eClass().getClassifierID()) {
case SemverPackage.GIT_HUB_VERSION_REQUIREMENT:
sequence_GitHubVersionRequirement(context, (GitHubVersionRequirement) semanticObject);
return;
case SemverPackage.HYPHEN_VERSION_RANGE:
sequence_HyphenVersionRange(context, (HyphenVersionRange) semanticObject);
return;
case SemverPackage.LOCAL_PATH_VERSION_REQUIREMENT:
sequence_LocalPathVersionRequirement(context, (LocalPathVersionRequirement) semanticObject);
return;
case SemverPackage.QUALIFIER:
sequence_Qualifier(context, (Qualifier) semanticObject);
return;
case SemverPackage.QUALIFIER_TAG:
sequence_QualifierTag(context, (QualifierTag) semanticObject);
return;
case SemverPackage.SIMPLE_VERSION:
sequence_SimpleVersion(context, (SimpleVersion) semanticObject);
return;
case SemverPackage.TAG_VERSION_REQUIREMENT:
sequence_TagVersionRequirement(context, (TagVersionRequirement) semanticObject);
return;
case SemverPackage.URL_COMMIT_ISH:
sequence_URLVersionSpecifier(context, (URLCommitISH) semanticObject);
return;
case SemverPackage.URL_SEMVER:
sequence_URLSemver(context, (URLSemver) semanticObject);
return;
case SemverPackage.URL_VERSION_REQUIREMENT:
sequence_URLVersionRequirement(context, (URLVersionRequirement) semanticObject);
return;
case SemverPackage.VERSION_NUMBER:
sequence_VersionNumber(context, (VersionNumber) semanticObject);
return;
case SemverPackage.VERSION_PART:
sequence_VersionPart(context, (VersionPart) semanticObject);
return;
case SemverPackage.VERSION_RANGE_CONSTRAINT:
sequence_VersionRangeContraint(context, (VersionRangeConstraint) semanticObject);
return;
case SemverPackage.VERSION_RANGE_SET_REQUIREMENT:
sequence_VersionRangeSetRequirement(context, (VersionRangeSetRequirement) semanticObject);
return;
}
if (errorAcceptor != null)
errorAcceptor.accept(diagnosticProvider.createInvalidContextOrTypeDiagnostic(semanticObject, context));
}
use of org.eclipse.n4js.semver.Semver.VersionNumber in project n4js by eclipse.
the class SemverConverter method simplifyTilde.
private static List<SimpleVersion> simplifyTilde(SimpleVersion sv) {
VersionNumber caretVN = sv.getNumber();
VersionNumberDescriptor vnd = SemverUtils.getVersionNumberDescriptor(caretVN);
VersionNumberDescriptor vndTildeUpper = vnd.getTildeUpperBound();
return packRange(vnd, VersionComparator.GREATER_EQUALS, vndTildeUpper, VersionComparator.SMALLER);
}
Aggregations