Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [incquery-dev] eclipsecon example

I should have recognised the symptoms (QBF inside query doesn't work) earlier, but you shouldn't have ignored that warning all the way until now :)

The engine will not traverse a feature when building the pattern matchers if it is not well-behaving, e.g. derived. However, you can specify that a given feature is well-behaving through the WellBehavingDerivedFeatureRegistry (catchy name, huh?). This is actually documented here: http://wiki.eclipse.org/EMFIncQuery/UserDocumentation/Query_Based_Features#Well-behaving_structural_features

In the dynamic case: use the register method at some point, before engine initialisation
In the generated case: put the proper extension into the plugin.xml, this was done by the @QueryBasedFeature code generator, I haven't thought that you forgot to do that.

Cheers,
   Ábel Hegedüs

Fault Tolerant Systems Research Group
Department of Measurement and Information Systems
Budapest University of Technology and Economics


On 22 October 2013 23:44, Istvan Rath <rath@xxxxxxxxxx> wrote:
Two more notes:
- this behavior is observed with the Query Explorer as well as the QBF on the Properties View
- this behavior is observed with the generated domain editor, meaning it probably has nothing to do with our recent code change to avoid using the QuerySpec registry

--
Istvan RATH, PhD
Research fellow
Budapest University of Technology and Economics
Fault Tolerant Systems Research Group

On Tuesday, October 22, 2013 at 11:20 PM, Istvan Rath wrote:

Just to entertain everyone, it seems we've been happy too early to declare that using QBFs inside QBFs work.

@QueryExplorer(display = true)

pattern weirdBook3(B : Book) {

Book.allCitations(B, B); // doesn't work

}


@QueryExplorer(display = true)

pattern weirdBook4(B : Book) {

find allBookCitations(B,B); // works

}



They have the same behavior both in dynamic and generated mode. I also get a warning on weirdBook3 saying I'm using a non-well-behaving DF - can this be eliminated in a short timeframe?

--
Istvan RATH, PhD
Research fellow
Budapest University of Technology and Economics
Fault Tolerant Systems Research Group

On Sunday, October 20, 2013 at 7:58 AM, Istvan Rath wrote:

Hi,

On Saturday, October 19, 2013 at 7:25 PM, Tamas Szabo wrote:

I am a bit confused now; I have just checked this thing and it seems to be working properly. I had the following validation queries (you also had these right?):
It also works for me now. I must have missed something before… (let's hope so)

I have committed my version to the repository now (but it is more or less equivalent to yours).
 
The length call still cannot be used in the check :(
Actually, it can be used, you will get a weird classpath error inside the Ecore editor, but it will work correctly nonetheless (in dynamic mode). Shall we disable the "Errors" tab altogether from the editor for the sake of the demo? :-)


These mysterious cases bother me a bit:
- cyclic dependency error
- indirect referencing
- classpath
- …

I hope these are effects of the "beta-ish" 2.5 Xtext and not our mistakes.

Istvan

--
Istvan RATH, PhD
Research fellow
Budapest University of Technology and Economics
Fault Tolerant Systems Research Group




_______________________________________________
incquery-dev mailing list
incquery-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/incquery-dev



Back to the top