I am trying to figure out how to return a value from a velocity macro call and assign it to a varaible
my macro function looks something like this. its once in common shared macros files
#macro(getBookListLink, $readingTrackerResult)
$readingTrackerResult.getBookListLink()
#end
I am need to assign the result of this macro to a variable in another velocity template file
I tried something like this
#set($book_list_link = #getBookListLink( $readingTrackerResult ))
but did not work. I tried with #,$ and with nothing in front of function getBookListLink. but nothing worked. Can not i return from a macro? something wrong with my macro?
But, As such if i call #getBookListLink( $readingTrackerResult ) separately in html file. it works and i can print the result to UI. But not able to assign to a variable.
Macros are not functions; they are for rendering output. However, if you don't mind losing the type and getting the result as text...
#set( $book_list_link = "#getBookListLink( $readingTrackerResult )" )