[ATL] empty Sequence [message #535136] |
Fri, 21 May 2010 08:22  |
Eclipse User |
|
|
|
hi,
i have this sequence i would like to reject all empty sequence
how i can do it?
iniseq=Sequence {Sequence {Sequence {IN2!G1:uml!AbstractGoal}, Sequence {IN2!G2:uml!AbstractGoal}}, Sequence {Sequence {Sequence {IN2!G11:uml!AbstractGoal}, Sequence {IN2!G12:uml!AbstractGoal}}, Sequence {Sequence {IN2!g22:uml!ElementryGoal}, Sequence {IN2!G21:uml!ElementryGoal}}}, Sequence {Sequence {}, Sequence {Sequence {IN2!G121:uml!ElementryGoal}, Sequence {IN2!G122:uml!ElementryGoal}}}, Sequence {Sequence {}, Sequence {}}, Sequence {Sequence {}, Sequence {}}}
thanks
|
|
|
|
Re: [ATL] empty Sequence [message #535171 is a reply to message #535136] |
Fri, 21 May 2010 09:25  |
Eclipse User |
|
|
|
Here is a helper that should remove all empty sequences recursively:
helper def : removeEmptySequences(seq : Sequence(OclAny)) : Sequence(OclAny) =
seq->collect(s | if s.oclIsKindOf(Sequence(OclAny)) then thisModule.removeEmptySequences( s.asSequence() ) else s endif)
->reject( s | if s.oclIsKindOf(Sequence(OclAny)) then s->size() = 0 else false endif );
|
|
|
Powered by
FUDForum. Page generated in 0.03577 seconds