F(...) where {T..} really long, but cannot place 'where' in newline?

question

#1

I have a long function declaration,

function f(...) where {T...}
# function code
end

which takes a lot of arguments and type parameters. Maybe this is bad design or not, but that is not my question now. What I would like is to break this into several lines:

function f(...) 
where {T...}
# function code
...
end

however Julia complains about placing the where in its own line. Is there code-style guideline about what to do in these cases? I am already breaking up the arguments into different lines, but each argument has a complex type specification, so I would still like to place the where in its own line, or something similar.


#2

Parenthesis before f and after T..}.


#3

Thanks. Almost after posting I realised that the following is also valid syntax:

function f(...) where
{T...}
# function code
...

that is, you can break the line just after the where.