That would be a great feature. Maybe in FB4? The addition of typed collections through Vectors seems like it would allow this as well as:
* the ability to have some good type code hinting while writing loops that iterate Vectors * standard aggregate functions like sum, group, etc through an interface named something like IEnumerable Wait a minute, this is starting to sound a little too much like C#. :) Would still be some awesome features though! I'm all for it. ________________________________ From: flexcoders@yahoogroups.com [mailto:[EMAIL PROTECTED] On Behalf Of Josh McDonald Sent: Thursday, November 06, 2008 3:46 PM To: flexcoders@yahoogroups.com Subject: Re: [flexcoders] E4X equivalent to SQL where 'like %' expression ? It's a great syntax. The real question now becomes: "When are we going to get to run .() on Array, Proxy, and IList?" On Fri, Nov 7, 2008 at 8:32 AM, Ryan Graham <[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]> > wrote: Ah, like a true lambda expression -- good tip! ________________________________ From: flexcoders@yahoogroups.com <mailto:flexcoders@yahoogroups.com> [mailto:flexcoders@yahoogroups.com <mailto:flexcoders@yahoogroups.com> ] On Behalf Of Tracy Spratt Sent: Thursday, November 06, 2008 3:46 PM To: flexcoders@yahoogroups.com <mailto:flexcoders@yahoogroups.com> Subject: RE: [flexcoders] E4X equivalent to SQL where 'like %' expression ? If you need complex calculations within an e4x expression, you can call out to a function of your own. The () just requires a boolean value, so you can do something like below, where I wanted to a bit of string manipulation within the expression: xlFilteredItems = _xmlData..item.(itemContains(attribute("item"),sFilterString)) and the function: private function itemContains(sItem:String, sMatch:String):Boolean { sItem = sItem.toLowerCase(); sMatch = sMatch.toLowerCase(); return (sItem.indexOf(sMatch) != -1); }//itemContains Obviously you can do just about anything inside such a function including traversing the xml, and looping etc. Tracy ________________________________ From: flexcoders@yahoogroups.com <mailto:flexcoders@yahoogroups.com> [mailto:flexcoders@yahoogroups.com <mailto:flexcoders@yahoogroups.com> ] On Behalf Of Ryan Graham Sent: Thursday, November 06, 2008 5:07 PM To: flexcoders@yahoogroups.com <mailto:flexcoders@yahoogroups.com> Subject: RE: [flexcoders] E4X equivalent to SQL where 'like %' expression ? Haha, looking at that, a more intuitive option would probably use the indexOf() function instead of substring, that way indexOf(input) == 0; //starts-with behavior indexOf(input) > -1; //contains behavior HTH, Ryan ________________________________ From: flexcoders@yahoogroups.com <mailto:flexcoders@yahoogroups.com> [mailto:flexcoders@yahoogroups.com <mailto:flexcoders@yahoogroups.com> ] On Behalf Of Ryan Graham Sent: Thursday, November 06, 2008 3:00 PM To: flexcoders@yahoogroups.com <mailto:flexcoders@yahoogroups.com> Subject: RE: [flexcoders] E4X equivalent to SQL where 'like %' expression ? The child nodes can be accessed like properties. For a starts-with effect, you would use a similar expression that compares the what you want to search for with the equivalent substring of the name nodes in that list. You can get more complex and robust searches using string functions like toLowerCase or RegExps, but this will return the 2 emp nodes for Johnson and Jones given your input list: var input:String = "Jo"; trace(emplist.(name.substring(0, input.length) == input)); HTH, Ryan ________________________________ From: flexcoders@yahoogroups.com <mailto:flexcoders@yahoogroups.com> [mailto:flexcoders@yahoogroups.com <mailto:flexcoders@yahoogroups.com> ] On Behalf Of pbrendanc Sent: Thursday, November 06, 2008 12:03 PM To: flexcoders@yahoogroups.com <mailto:flexcoders@yahoogroups.com> Subject: [flexcoders] E4X equivalent to SQL where 'like %' expression ? I'd like to extract the list of emps from the following XML where name starts with 'Jo' (returns Jones, Johnson). In SQL I can use the expression 'where name like 'Jo%'. Anyone have examples of how this be done via an E4X expression (I could not find any examples of this in the docs). TIA, Patrick <mx:XMLList id="emplist"> <emp> <id>1</id> <name>Smith</name> <mrn>1000</mrn> <dob>1/1/1964</dob> </emp> <emp> <id>2</id> <name>Jones</name> <mrn>1001</mrn> <dob>11/11/1951</dob> </emp> <emp> <id>3</id> <name>Johnson</name> <mrn>1003</mrn> <dob>3/3/1953</dob> </emp> </mx:XMLList> This message is private and confidential. If you have received it in error, please notify the sender and remove it from your system. This message is private and confidential. If you have received it in error, please notify the sender and remove it from your system. This message is private and confidential. If you have received it in error, please notify the sender and remove it from your system. -- "Therefore, send not to know For whom the bell tolls. It tolls for thee." Like the cut of my jib? Check out my Flex blog! :: Josh 'G-Funk' McDonald :: 0437 221 380 :: [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]> :: http://flex.joshmcdonald.info/ <http://flex.joshmcdonald.info/> :: http://twitter.com/sophistifunk <http://twitter.com/sophistifunk> This message is private and confidential. If you have received it in error, please notify the sender and remove it from your system.