Community
Participate
Working Groups
It would be useful to have a "Let" model operation. This model operation would allow one to define custom variables. I know we can define custom variables below predefined variables but there are 2 main problems with this approach : - one has to define every variables as a first step - this is not possible in certain places (inside a quick fix for example)
New Gerrit change created: https://git.eclipse.org/r/91605
Gerrit change https://git.eclipse.org/r/91605 was merged to [master]. Commit: http://git.eclipse.org/c/sirius/org.eclipse.sirius.git/commit/?id=f0fd720b4f1b412841ea30ca9b7e235799923eee
Most of the basic behavior is done, but there may be some adjustments needed (see the comment patch set 6 (https://git.eclipse.org/r/#/c/91605/6), and we'll need to add proper documentation. Moving to M7 for these remaining tasks.
New Gerrit change created: https://git.eclipse.org/r/93850
It seems the completion-related code is buggy/not precise enough. In a simple case of: Let newName = aql:self.askForName('default') Set name to var:newN<cursor> where askForName is a service which returns a String, the completion finds the newName variable, but its infered type (as visible on the tooltip) is: [ecore.EString,traceability.path,scxml.CondLangDatatype,scxml.DurationDatatype,scxml.EventTypeDatatype,scxml.EventTypesDatatype,scxml.LocLangDatatype,scxml.URIDatatype,scxml.ValueLangDatatype,description.TypeName,description.InterpretedExpression,description.FeatureName,description.ImagePath,description.TranslatableMessage,type.AnyURI,type.ENTITY,type.ID,type.IDREF,type.Language,type.Name,type.NCName,type.NMTOKEN,type.NormalizedString,type.String,type.Token,types.String,namespace.LangType,namespace.LangTypeNull]
(In reply to Pierre-Charles David from comment #5) > It seems the completion-related code is buggy/not precise enough. In a > simple case of: > > Let newName = aql:self.askForName('default') > Set name to var:newN<cursor> > > where askForName is a service which returns a String, the completion finds > the newName variable, but its infered type (as visible on the tooltip) is: > [ecore.EString,traceability.path,scxml.CondLangDatatype,scxml. > DurationDatatype,scxml.EventTypeDatatype,scxml.EventTypesDatatype,scxml. > LocLangDatatype,scxml.URIDatatype,scxml.ValueLangDatatype,description. > TypeName,description.InterpretedExpression,description.FeatureName, > description.ImagePath,description.TranslatableMessage,type.AnyURI,type. > ENTITY,type.ID,type.IDREF,type.Language,type.Name,type.NCName,type.NMTOKEN, > type.NormalizedString,type.String,type.Token,types.String,namespace.LangType, > namespace.LangTypeNull] Actually, the problem does not seem related to "Let" at all. Forget about the previous comment.
New Gerrit change created: https://git.eclipse.org/r/94218
Gerrit change https://git.eclipse.org/r/94218 was merged to [master]. Commit: http://git.eclipse.org/c/sirius/org.eclipse.sirius.git/commit/?id=53b6285b6c50737e577be14e9698f37b41092403
Gerrit change https://git.eclipse.org/r/93850 was merged to [master]. Commit: http://git.eclipse.org/c/sirius/org.eclipse.sirius.git/commit/?id=d6d6d653aa9c7ebfcd99dad25d61807f8c33731f
Still left to do: add specifier documentation (and release notes).
Marking as resolved so that the actual behavior can be validated. I've added a "needdoc" tag to remember that this needs to be documented before the release.
Validated (runtime+completion) on ODCE_20170521
Available in Sirius 5.0.0, see https://wiki.eclipse.org/Sirius/5.0.0 for details.