http(/* argument here */) How is this Object (Http) being used without an explicit or implicit meth
- by Randin
In the example for coding with Json using Databinder Dispatch Nathan uses an Object (Http) without a method, shown here:
import dispatch._
import Http._
Http("http://www.fox.com/dollhouse/" >>> System.out )
How is he doing this?
Thank you for all of the answers unfortunatly I was not specific enough...
It looks like it is simply passing an argument to a constructor of class or companion object Http.
In another example, I've seen another form:
http = new Http
http(/* argument here */)
Is this valid Scala? I guess it must be, because the author is a Scala expert. But it makes no sense to me. Actions are usually performed by invoking methods on objects, whether explicitly as object.doSomething() or implicitly as object = something (using the apply() method underneath the syntactic sugar).
All I can think of is that a constructor is being used to do something in addition to constructing an object. In other words, it is having side effects, such as in this case going off and doing something on the web.