2626Like the `quote` keyword but doesn't insert line numbers from the construction
2727site. e.g. compare `@q begin end` with `quote end`. Line numbers of interpolated
2828expressions are preserverd.
29+
30+ See also: [`rmlines`](@ref)
2931"""
3032macro q (ex)
3133 Expr (:quote , striplines (ex))
@@ -65,6 +67,8 @@ To work with nested blocks:
6567```julia
6668prewalk(rmlines, ex)
6769```
70+
71+ See also: [`@q`](@ref)
6872"""
6973rmlines (x) = x
7074function rmlines (x:: Expr )
@@ -108,8 +112,9 @@ walk(x::Expr, inner, outer) = outer(Expr(x.head, map(inner, x.args)...))
108112 postwalk(f, expr)
109113
110114Applies `f` to each node in the given expression tree, returning the result.
111- `f` sees expressions *after* they have been transformed by the walk. See also
112- `prewalk`.
115+ `f` sees expressions *after* they have been transformed by the walk.
116+
117+ See also: [`prewalk`](@ref).
113118"""
114119postwalk (f, x) = walk (x, x -> postwalk (f, x), f)
115120
@@ -121,7 +126,7 @@ Applies `f` to each node in the given expression tree, returning the result.
121126walk will be applied to whatever `f` returns.
122127
123128This makes `prewalk` somewhat prone to infinite loops; you probably want to try
124- `postwalk` first.
129+ [ `postwalk`](@ref) first.
125130"""
126131prewalk (f, x) = walk (f (x), x -> prewalk (f, x), identity)
127132
@@ -282,6 +287,8 @@ all_params = [get(dict, :params, [])..., get(dict, :whereparams, [])...]
282287 \$ (dict[:body])
283288 end)
284289```
290+
291+ See also: [`combinedef`](@ref)
285292"""
286293function splitdef (fdef)
287294 error_msg = " Not a function definition: $(repr (fdef)) "
306313"""
307314 combinedef(dict::Dict)
308315
309- `combinedef` is the inverse of `splitdef`. It takes a splitdef-like Dict
310- and returns a function definition. """
316+ `combinedef` is the inverse of [`splitdef`](@ref). It takes a `splitdef`-like Dict
317+ and returns a function definition.
318+ """
311319function combinedef (dict:: Dict )
312320 rtype = get (dict, :rtype , nothing )
313321 params = get (dict, :params , [])
347355"""
348356 combinearg(arg_name, arg_type, is_splat, default)
349357
350- `combinearg` is the inverse of `splitarg`. """
358+ `combinearg` is the inverse of [`splitarg`](@ref).
359+ """
351360function combinearg (arg_name, arg_type, is_splat, default)
352361 a = arg_name=== nothing ? :(:: $arg_type ) : :($ arg_name:: $arg_type )
353362 a2 = is_splat ? Expr (:... , a) : a
@@ -376,6 +385,8 @@ Match function arguments (whether from a definition or a function call) such as
376385 (:y, :Any, false, nothing)
377386 (:args, :Any, true, nothing)
378387```
388+
389+ See also: [`combinearg`](@ref)
379390"""
380391function splitarg (arg_expr)
381392 splitvar (arg) =
0 commit comments