[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: [dm-devel] sched: make struct task_struct::state 32-bit



> // FIXME: current not recognized as task_struct*, fixhack with regexp
> identifier current =~ "^current$";

Would you really like to use a regular expression for finding a single word?


> identifier state_var;
> position pos;
> @@
>
> (
>   p->state & state_var pos
> |
>   current->state & state_var pos
> |

I see further opportunities to make such a SmPL disjunction more succinct.

*
( ( \( p \| current \) ) -> state & state_var pos
|
…

* How do you think about to work with a SmPL constraint
  for a metavariable with the type “binary operator”?


>   set_current_state(state_var pos)
> |
>   set_special_state(state_var pos)

| \( set_current_state \| set_special_state \) (state_var pos)


> |
>   signal_pending_state(state_var pos, p)
> |
>   signal_pending_state(state_var pos, current)

| signal_pending_state(state_var pos, \( p \| current \) )


Regards,
Markus


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]