Builder pattern without keyword 'new'