[Kde-hardware-devel] Solid device action predicates

Christopher Blauvelt cblauvelt at gmail.com
Wed Jul 8 17:36:14 CEST 2009


2009/7/7 Kevin Ottens <ervin at kde.org>

> On Thursday 2 July 2009 22:15:07 Ozan Çağlayan wrote:
> > Where can I find the complete reference of the predicate rules used in
> > solid device action files?
>
> It's currently missing. And for sure it'd deserve a page on techbase.
> Unfortunately no one stepped up for it yet, and I'm lacking the time and
> motivation to do it myself.
>
> The syntax is quite simple though, there's not that many constructs:
>  * "[ termA OR termB ]" or "[ termA AND termB ]" for logical combinations;
>  * "Interface.property == value" to match a given value for a given
> property
> if the given Interface is supported by the device;
>  * "Interface.property & value" to match a given value but using the binary
> AND operator (checking if property has the value flag set).
>
> And then the | operator that you ask for below:
>
> > I'm seeing different usages of different
> > operators in many projects but I can't get the expected results when I
> > evaluate them using solid-hardware. One such example is the pipe
> operator:
> >
> > $ solid-hardware query "foo.bar == 'PropertyX|PropertyY'"
>
> Those are enums/flags values, so the syntax closely follow the C++ one by
> using a binary OR operator (pipe operator in C/C++).
>
> > looking at it, one can think that | acts like an OR operator between
> > PropertyX and PropertyY but that doesn't work in that way, so I wonder
> > what's the aim of that operator.
>
> It exactly acts like an OR operator, but the binary one so foo.bar == 'X|Y'
> means that foo.bar should have both X and Y.
>
I committed an example called tutorial7 under the examples folder that
should be a good starting point.
Chris
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.kde.org/pipermail/kde-hardware-devel/attachments/20090708/5d8cd762/attachment.htm 


More information about the Kde-hardware-devel mailing list