Scala can't figure out what type of parameter you mean, so you need to annotate 
it  -- "expand" -> (fooXhtml: NodeSeq) => {... }

Or use a separately named function with a type signature, e.g.

def doTheStuff(ns: NodeSeq): NodeSeq) = { Log.error(ns.toStrnig); <span /> }

bind(..., "expand" -> doTheStuff _)


-Ross

On Jan 20, 2010, at 3:41 PM, Franz Bettag wrote:

> "expand" -> (fooXhtml) => { Log.error(fooXhtml.toString); <span/> },
> 
> error: not a legal formal parameter (pointing at the => )
> 
> On 20 Jan., 21:32, greekscala <hellectro...@gmail.com> wrote:
>> Hello,
>> 
>> yes a function that takes NodeSeq parameter and returns
>> a NodeSeq :)
>> 
>> "foo" -> (ns) => {function body} or
>> "foo" -> theCalledFunction
>> 
>> best regards
>> 
>> On 20 Jan., 21:26, Franz Bettag <fr...@bett.ag> wrote:
>> 
>>> How would that look like?
>>> "foo" => nodeSeqMethod _ ?
>> 
>>> On 20 Jan., 21:21, Naftoli Gugenheim <naftoli...@gmail.com> wrote:
>> 
>>>> Meaning to the right of the -> arrow.
>> 
>>>> -------------------------------------
>> 
>>>> Franz Bettag<fr...@bett.ag> wrote:
>> 
>>>> Ah figured it out. Played long enough around to get the right way:
>> 
>>>> () => {expand(trafficReply.subnet)}
>> 
>>>> Another question though, would it be possible to use
>>>> <IPs:expand><span><traffic:sometag/></span></IPs:expand> and pass the
>>>> given NodeSeq over the bind into a function?
>> 
>>>> On 20 Jan., 19:08, Franz Bettag <fr...@bett.ag> wrote:
>> 
>>>>> Sorry if i am asking a lot of questions lately, but i am trying to get
>>>>> this project of mine working so i can write about the specific
>>>>> problems i ran into and how they got done.
>> 
>>>>>         def subnets(xhtml: NodeSeq): NodeSeq = {
>>>>>                 val content = IPnet.findAll(OrderBy(IPnet.name, 
>>>>> Ascending)).map(ip
>>>>> => {
>> 
>>>>>                         /* Bind the xml */
>>>>>                         bind("ip", xhtml,
>>>>>                                 "subnet" -> Text(ip.name.toString),
>>>>>                                 "action" -> SHtml.a(expand(ip.subnet) _, 
>>>>> "See all IPs")
>>>>>                                 )
>>>>>                 }).mkString
>> 
>>>>>                 XML.loadString("<span>%s</span>".format(content))
>>>>>         }
>> 
>>>>>         def expand(subnet: String): JsCmd = {
>>>>>                 Log.info("Requested subnet %s".format(subnet))
>>>>>                 Alert("subnet %s was requested".format(subnet))
>>>>>         }
>> 
>>>>> The Problem is the "action" that gets binded. I don't get how i have
>>>>> to use SHtml.a to pass a value to the called function. Any hints?
>> 
>>>>> Thank you very much in advance
>> 
>>>> --
>>>> You received this message because you are subscribed to the Google Groups 
>>>> "Lift" group.
>>>> To post to this group, send email to lift...@googlegroups.com.
>>>> To unsubscribe from this group, send email to 
>>>> liftweb+unsubscr...@googlegroups.com.
>>>> For more options, visit this group 
>>>> athttp://groups.google.com/group/liftweb?hl=en.
> -- 
> You received this message because you are subscribed to the Google Groups 
> "Lift" group.
> To post to this group, send email to lift...@googlegroups.com.
> To unsubscribe from this group, send email to 
> liftweb+unsubscr...@googlegroups.com.
> For more options, visit this group at 
> http://groups.google.com/group/liftweb?hl=en.
> 
> 

-- 
You received this message because you are subscribed to the Google Groups 
"Lift" group.
To post to this group, send email to lift...@googlegroups.com.
To unsubscribe from this group, send email to 
liftweb+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/liftweb?hl=en.


Reply via email to