// void blu(optional S bla) { ... } // => void blu(S bla default null) { ... } svoid tok_optionalArguments(LS tok) { for (int i : jfindAll_reverse(tok, "optional ", (_tok, nIdx) -> eqGetOneOf(tok, nIdx-1, ",", "("))) { int iEndOfType = tok_endOfType(tok, i+2); S var = tok.get(iEndOfType); S type = joinSubList(tok, i+2, iEndOfType); tokReplace_reTok(tok, i, iEndOfType+1, "\*type*/ \*var*/ default null"); } }