Skip to content

Commit b73eafe

Browse files
InterdisciplinaryPhysicsTeampitmonticoneClaudMor
committed
Update docstrings
Co-Authored-By: Pietro Monticone <[email protected]> Co-Authored-By: Claudio Moroni <[email protected]>
1 parent 01f3d54 commit b73eafe

10 files changed

+180
-110
lines changed

docs/make.jl

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
using Revise
2+
using Graphs
23
using MultilayerGraphs
34
using Documenter
45

@@ -7,17 +8,17 @@ DocMeta.setdocmeta!(
78
)
89

910
makedocs(;
10-
modules=[MultilayerGraphs],
11-
authors="Pietro Monticone, Claudio Moroni",
12-
repo="https://github.com/JuliaGraphs/MultilayerGraphs.jl/blob/{commit}{path}#{line}",
13-
sitename="MultilayerGraphs.jl",
14-
format=Documenter.HTML(;
11+
modules = [MultilayerGraphs],
12+
authors = "Pietro Monticone, Claudio Moroni",
13+
repo = "https://github.com/JuliaGraphs/MultilayerGraphs.jl/blob/{commit}{path}#{line}",
14+
sitename = "MultilayerGraphs.jl",
15+
format = Documenter.HTML(;
1516
prettyurls=get(ENV, "CI", "false") == "true",
16-
canonical="https://juliagraphs.org/MultilayerGraphs.jl",
17-
assets=String[],
17+
canonical ="https://juliagraphs.org/MultilayerGraphs.jl",
18+
assets =String[],
1819
),
19-
pages=["Home" => "index.md", "API" => "API.md"],
20-
clean = false
20+
pages = ["Home" => "index.md", "API" => "API.md"],
21+
clean = false
2122
)
2223

2324
deploydocs(;

docs/src/API.md

Lines changed: 77 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -39,21 +39,63 @@ metadata(e::AbstractMultilayerEdge)
3939

4040

4141
```@docs
42-
nodes(::AbstractSubGraph)
43-
has_vertex(layer::L, v::MultilayerVertex) where { T,U,G, L <: Layer{T,U,G}}
44-
has_vertex(interlayer::In, v::MultilayerVertex) where { T,U,G, In <: Interlayer{T,U,G}}
45-
nv(subgraph::S) where { S <: AbstractSubGraph}
46-
mv_vertices(subgraph::S) where {S<:AbstractSubGraph}
42+
nodes(subgraph::AbstractSubGraph)
43+
has_vertex(layer::Layer, mv::MultilayerVertex)
44+
has_vertex(interlayer::Interlayer, mv::MultilayerVertex)
45+
nv(subgraph::AbstractSubGraph)
46+
mv_vertices(subgraph::AbstractSubGraph)
47+
mv_inneighbors(subgraph::AbstractSubGraph, mv::MultilayerVertex)
48+
mv_outneighbors(subgraph::AbstractSubGraph, mv::MultilayerVertex)
49+
mv_neighbors(subgraph::AbstractSubGraph, mv::MultilayerVertex)
50+
has_edge(subgraph::AbstractSubGraph,me::MultilayerEdge)
51+
has_edge( subgraph::AbstractSubGraph, s::MultilayerVertex, d::MultilayerVertex)
52+
ne(subgraph::AbstractSubGraph)
53+
edges(subgraph::S) where {T,U,S<:AbstractSubGraph{T,U}}
54+
add_edge!( subgraph::S, me::E) where {T,U<:Real,S<:AbstractSubGraph{T,U},E<:MultilayerEdge{ <: Union{U, Nothing}}}
55+
rem_edge!(subgraph::AbstractSubGraph, src::MultilayerVertex, dst::MultilayerVertex)
56+
rem_edge!(subgraph::AbstractSubGraph, me::MultilayerEdge)
57+
get_metadata(subgraph::AbstractSubGraph, bare_mv::MultilayerVertex)
58+
get_metadata(subgraph::AbstractSubGraph, src::MultilayerVertex, dst::MultilayerVertex)
59+
get_weight(subgraph::AbstractSubGraph, src::MultilayerVertex, dst::MultilayerVertex)
60+
is_directed(subgraph::AbstractSubGraph)
61+
is_directed(::Type{S}) where {T,U,G,S <: AbstractSubGraph{T,U,G}}
62+
adjacency_matrix(subgraph::AbstractSubGraph)
63+
weights(subgraph::S) where {T,U,S<:AbstractSubGraph{T,U}}
64+
name(subgraph::AbstractSubGraph)
65+
Layer{T <: Integer, U <: Real, G <: AbstractGraph{T}} <: AbstractLayer{T,U,G}
4766
```
4867

4968
### Multilayer-specific methods
5069

5170

5271
```@docs
53-
nodes(::MultilayerGraph)
54-
has_vertex(mg::M, mv::MultilayerVertex) where {T,U, M <: AbstractMultilayerGraph{T,U}}
72+
nodes(mg::MultilayerGraph)
73+
has_vertex(mg::AbstractMultilayerGraph, mv::MultilayerVertex)
5574
nv(mg::M) where {M <: AbstractMultilayerGraph }
56-
mv_vertices(mg::AbstractMultilayerGraph)
75+
mv_vertices(mg::AbstractMultilayerGraph)
76+
mv_inneighbors(mg::AbstractMultilayerGraph, mv::MultilayerVertex)
77+
mv_outneighbors(mg::AbstractMultilayerGraph, mv::MultilayerVertex)
78+
mv_neighbors( mg::AbstractMultilayerGraph, mv::MultilayerVertex)
79+
has_edge(mg::AbstractMultilayerGraph, edge::MultilayerEdge)
80+
has_edge( subgraph::AbstractMultilayerGraph, s::MultilayerVertex, d::MultilayerVertex)
81+
ne(mg::AbstractMultilayerGraph)
82+
edges(mg::AbstractMultilayerUGraph)
83+
edges(mg::M) where {T,U,M<:AbstractMultilayerUGraph{T,U}}
84+
edges(mg::M) where {T,U,M<:AbstractMultilayerDiGraph{T,U}}
85+
add_edge!(mg::M, src::V, dst::V; weight::Union{Nothing, U} = one(U), metadata::Union{Tuple,NamedTuple} = NamedTuple() ) where {T,U, M <: AbstractMultilayerGraph{T,U}, V <: MultilayerVertex}
86+
add_edge!(mg::M, me::E) where {T,U, M <: AbstractMultilayerUGraph{T,U}, E <: MultilayerEdge{ <: Union{U,Nothing}}}
87+
add_edge!(mg::M, me::E) where {T,U, M <: AbstractMultilayerDiGraph{T,U}, E <: MultilayerEdge{ <: Union{U,Nothing}}}
88+
rem_edge!(mg::AbstractMultilayerGraph, me::MultilayerEdge)
89+
rem_edge!(mg::MultilayerGraph, src::MultilayerVertex, dst::MultilayerVertex)
90+
rem_edge!(mg::MultilayerDiGraph, src::MultilayerVertex, dst::MultilayerVertex)
91+
get_metadata(mg::AbstractMultilayerGraph, mv::MultilayerVertex)
92+
get_metadata(mg::AbstractMultilayerGraph, src::MultilayerVertex, dst::MultilayerVertex)
93+
get_weight(mg::AbstractMultilayerGraph, src::MultilayerVertex, dst::MultilayerVertex
94+
is_directed(mg::AbstractMultilayerUGraph)
95+
is_directed(m::M) where { M <: Type{ <: AbstractMultilayerUGraph}}
96+
is_directed(mg::AbstractMultilayerDiGraph)
97+
is_directed(m::M) where { M <: Type{ <: AbstractMultilayerDiGraph}}
98+
5799
```
58100

59101
----------------------------------------------------
@@ -91,10 +133,20 @@ weight(he::MultilayerGraphs.HalfEdge)
91133
# Subgraphs
92134

93135
```@docs
94-
has_vertex(subgraph::S, v::T ) where {T,U,G,S<:AbstractSubGraph{T,U,G}}
95-
vertices(subgraph::S) where {S <: AbstractSubGraph{ <: Integer, <: AbstractGraph}}
96-
inneighbors(subgraph::S, v::T) where {T,U,G, S <: AbstractSubGraph{T,U,G}}
97-
inneighbors(subgraph::S, mv::MultilayerVertex) where {T,U,G, S <: AbstractSubGraph{T,U,G}}
136+
has_vertex(subgraph::S, v::T ) where {T,S<:AbstractSubGraph{T}}
137+
vertices(subgraph::AbstractSubGraph)
138+
inneighbors(subgraph::S, v::T) where {T, S <: AbstractSubGraph{T}}
139+
inneighbors(subgraph::AbstractSubGraph, mv::MultilayerVertex)
140+
mv_inneighbors(mg::M, v::T) where {M <: AbstractMultilayerGraph{T} } where { T <: Integer}
141+
outneighbors(subgraph::S, v::T) where {T,S<:AbstractSubGraph{T}}
142+
outneighbors(subgraph::AbstractSubGraph, mv::MultilayerVertex)
143+
neighbors(subgraph::S, v::T) where {T,S<:AbstractSubGraph{T}}
144+
neighbors(subgraph::AbstractSubGraph, mv::MultilayerVertex)
145+
edgetype(::S) where {T,U,S<:AbstractSubGraph{T,U}}
146+
has_edge(subgraph::S, s::MultilayerVertex, d::MultilayerVertex) where { T, S <: AbstractSubGraph{T}}
147+
add_edge!(subgraph::S, src::T, dst::T; weight::W = nothing, metadata::Union{Tuple, NamedTuple}= NamedTuple()) where {T, U<: Real, W<:Union{ U, Nothing},G<:AbstractGraph{T},S<:AbstractSubGraph{T,U,G}}
148+
rem_edge!(subgraph::S, src::T, dst::T) where {T, S<:AbstractSubGraph{T}}
149+
AbstractLayer
98150
```
99151

100152
### Traits
@@ -104,11 +156,19 @@ inneighbors(subgraph::S, mv::MultilayerVertex) where {T,U,G, S <: AbstractSubGr
104156
### Multilayer-specific methods
105157

106158
```@docs
107-
has_vertex(mg::M, v::T) where {T,U, M <: AbstractMultilayerGraph{T,U}}
108-
vertices(mg::M) where {M<:AbstractMultilayerGraph}
109-
inneighbors(mg::M, v::T) where {M <: AbstractMultilayerUGraph{T} } where { T <: Integer}
110-
inneighbors(mg::M, v::T) where {M <: AbstractMultilayerDiGraph{T} } where { T <: Integer}
111-
inneighbors( mg::M, mv::V ) where {T,M<:AbstractMultilayerGraph{T,<:Real},V<:MultilayerVertex}
159+
has_vertex(mg::M, v::T) where {T, M <: AbstractMultilayerGraph{T}}
160+
vertices(mg::AbstractMultilayerGraph)
161+
inneighbors(mg::AbstractMultilayerUGraph, v::T) where {T <: Integer, M <: AbstractMultilayerUGraph{T}}
162+
inneighbors(mg::M, v::T) where {T <: Integer, M <: AbstractMultilayerDiGraph{T}}
163+
inneighbors(mg::AbstractMultilayerGraph, mv::MultilayerVertex)
164+
outneighbors(mg::M, v::T) where {M <: AbstractMultilayerGraph{T} } where { T <: Integer}
165+
outneighbors(mg::M, v::T) where {M <: AbstractMultilayerGraph{T} } where { T <: Integer}
166+
outneighbors(mg::M, v::T) where {M <: AbstractMultilayerGraph{T} } where { T <: Integer}
167+
neighbors(mg::AbstractMultilayerGraph, mv::MultilayerVertex)
168+
edgetype(::M) where {T,U,M<:AbstractMultilayerGraph{T,U}}
169+
has_edge(mg::M, src::T, dst::T) where { T, M <: AbstractMultilayerUGraph{T}}
170+
has_edge(mg::M, src::T, dst::T) where { T, M <: AbstractMultilayerDiGraph{T}}
171+
rem_edge!(mg::M, src::T, dst::T) where {T, M <: AbstractMultilayerGraph{T}
112172
```
113173

114174

src/abstractmultilayerdigraph.jl

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -107,11 +107,11 @@ end
107107

108108
# Edges
109109
"""
110-
has_edge(mg::M, src::T, dst::T) where { T,U, M <: AbstractMultilayerDiGraph{T,U}}
110+
has_edge(mg::M, src::T, dst::T) where { T, M <: AbstractMultilayerDiGraph{T}}
111111
112112
Return true if `mg` has edge between the `src` and `dst` (does not check edge or vertex metadata).
113113
"""
114-
function Graphs.has_edge(mg::M, src::T, dst::T) where { T,U, M <: AbstractMultilayerDiGraph{T,U}}
114+
function Graphs.has_edge(mg::M, src::T, dst::T) where { T,M <: AbstractMultilayerDiGraph{T}}
115115

116116
has_vertex(mg,src) || return false
117117
has_vertex(mg,dst) || return false
@@ -358,11 +358,11 @@ Return the degree of MultilayerVertex `v` within `mg`.
358358
Graphs.degree(mg::M, mv::V ) where {T,M<:AbstractMultilayerDiGraph{T,<:Real},V<:MultilayerVertex} = indegree(mg, mv) + outdegree(mg, mv)
359359

360360
"""
361-
is_directed(m::M) where { M <: AbstractMultilayerDiGraph}
361+
is_directed(mg::AbstractMultilayerDiGraph)
362362
363363
Return `true` if `mg` is directed, `false` otherwise.
364364
"""
365-
Graphs.is_directed(mg::M) where {M<:AbstractMultilayerDiGraph} = true
365+
Graphs.is_directed(mg::AbstractMultilayerDiGraph) = true
366366

367367
"""
368368
is_directed(m::M) where { M <: Type{ <: AbstractMultilayerDiGraph}}

src/abstractmultilayergraph.jl

Lines changed: 39 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ abstract type AbstractMultilayerGraph{T<:Integer,U<:Real} <: AbstractGraph{T} en
3333

3434
# Nodes
3535
"""
36-
nodes(mg::M) where {M <: AbstractMultilayerGraph}
36+
nodes(mg::AbstractMultilayerGraph
3737
3838
Return the nodes of the AbstractMultilayerGraph `mg`, in order of addition.
3939
"""
@@ -110,11 +110,11 @@ Return true if `v` is in mg, else false.
110110
Graphs.has_vertex(mg::M, v::T ) where {T, M <: AbstractMultilayerGraph{T}} = v in domain(mg.v_V_associations) # && !(mg.v_V_associations[v] isa MissingVertex)
111111

112112
"""
113-
has_vertex(mg::M, mv::MultilayerVertex) where {T,U, M <: AbstractMultilayerGraph{T,U}}
113+
has_vertex(mg::AbstractMultilayerGraph, mv::MultilayerVertex)
114114
115115
Return true if `mv` is in `mg`, else false.
116116
"""
117-
Graphs.has_vertex(mg::M, mv::MultilayerVertex) where {T,U, M <: AbstractMultilayerGraph{T,U}} = get_bare_mv(mv) in image(mg.v_V_associations)
117+
Graphs.has_vertex(mg::AbstractMultilayerGraph, mv::MultilayerVertex) = get_bare_mv(mv) in image(mg.v_V_associations)
118118

119119
"""
120120
mv_vertices(mg::AbstractMultilayerGraph)
@@ -138,11 +138,11 @@ Return the collection of the vertices of `mg`.
138138
Graphs.vertices(mg::M) where {M<:AbstractMultilayerGraph} = sort(collect(domain(mg.v_V_associations)))
139139

140140
"""
141-
get_metadata(mg::M, mv::MultilayerVertex) where M <: AbstractMultilayerGraph
141+
get_metadata(mg::AbstractMultilayerGraph, bare_mv::MultilayerVertex)
142142
143-
Return the metadata associated to `MultilayerVertex` mv.
143+
Return the metadata associated to `MultilayerVertex` mv (regardless of metadata assigned to `bare_mv`).
144144
"""
145-
get_metadata(mg::M, mv::MultilayerVertex) where M <: AbstractMultilayerGraph = mg.v_metadata_dict[get_v(mg, mv)]
145+
get_metadata(mg::AbstractMultilayerGraph, mv::MultilayerVertex) = mg.v_metadata_dict[get_v(mg, mv)]
146146

147147
"""
148148
set_metadata!(mg::M, mv::MultilayerVertex, metadata::Union{Tuple, NamedTuple}) where M <: AbstractMultilayerGraph
@@ -162,25 +162,25 @@ end
162162

163163
# Edges
164164
"""
165-
edgetype(mg::M) where {M <: AbstractMultilayerGraph}
165+
edgetype(::M) where {T,U,M<:AbstractMultilayerGraph{T,U}}
166166
167167
Return the edge type for `mg`.
168168
"""
169169
Graphs.edgetype(::M) where {T,U,M<:AbstractMultilayerGraph{T,U}} = MultilayerEdge{U}
170170

171171
"""
172-
ne(mg::M) where {M <: AbstractMultilayerGraph }
172+
ne(mg::AbstractMultilayerGraph)
173173
174174
Return the number of edges in `mg`.
175175
"""
176-
Graphs.ne(mg::M) where {M<:AbstractMultilayerGraph} = length(edges(mg))
176+
Graphs.ne(mg::AbstractMultilayerGraph) = length(edges(mg))
177177

178178
"""
179179
has_edge(mg::AbstractMultilayerGraph, edge::MultilayerEdge)
180180
181181
Return true if `mg` has an edge between the source and the destination of `edge` (does not check edge or vertex metadata).
182182
"""
183-
Graphs.has_edge(mg::AbstractMultilayerGraph, edge::MultilayerEdge) = has_edge(mg,get_v(mg,src(edge)), get_v(mg,dst(edge)) )
183+
Graphs.has_edge(mg::AbstractMultilayerGraph, edge::MultilayerEdge) = has_edge(mg, get_v(mg,src(edge)), get_v(mg,dst(edge)) )
184184

185185
"""
186186
has_edge(mg::AbstractMultilayerGraph, src::MultilayerVertex, dst::MultilayerVertex)
@@ -204,18 +204,18 @@ Add a MultilayerEdge between `src` and `dst` with weight `weight` and metadata `
204204
Graphs.add_edge!(mg::M, src::V, dst::V; weight::Union{Nothing, U} = one(U), metadata::Union{Tuple,NamedTuple} = NamedTuple() ) where {T,U, M <: AbstractMultilayerGraph{T,U}, V <: MultilayerVertex} = add_edge!(mg, ME(src, dst, weight, metadata))
205205

206206
"""
207-
rem_edge!(mg::M, src::T, dst::T) where {T,U, M <: AbstractMultilayerGraph{T,U}}
207+
rem_edge!(mg::M, src::T, dst::T) where {T, M <: AbstractMultilayerGraph{T}}
208208
209209
Remove edge from `src` to `dst` from `mg`. Return true if succeeds, false otherwise.
210210
"""
211-
Graphs.rem_edge!(mg::M, src::T, dst::T) where {T,U, M <: AbstractMultilayerGraph{T,U}} = rem_edge!(mg, mg.v_V_associations[src], mg.v_V_associations[dst])
211+
Graphs.rem_edge!(mg::M, src::T, dst::T) where {T, M <: AbstractMultilayerGraph{T}} = rem_edge!(mg, mg.v_V_associations[src], mg.v_V_associations[dst])
212212

213213
"""
214-
rem_edge!(mg::M, src::T, dst::T) where {T,U, M <: AbstractMultilayerGraph{T,U}}
214+
rem_edge!(mg::AbstractMultilayerGraph, me::MultilayerEdge)
215215
216216
Remove edge from `src(me)` to `dst(me)` from `mg`. Return true if succeeds, false otherwise.
217217
"""
218-
Graphs.rem_edge!(mg::M, me::E) where {T,U, M <: AbstractMultilayerGraph{T,U}, E <: MultilayerEdge} = rem_edge!(mg, src(me), dst(me))
218+
Graphs.rem_edge!(mg::AbstractMultilayerGraph, me::MultilayerEdge) = rem_edge!(mg, src(me), dst(me))
219219

220220

221221
"""
@@ -231,18 +231,18 @@ end
231231

232232

233233
"""
234-
get_metadata(mg::M, mv::MultilayerVertex) where M <: AbstractMultilayerGraph
234+
get_metadata(mg::AbstractMultilayerGraph, src::MultilayerVertex, dst::MultilayerVertex)
235235
236236
Return the metadata associated to the `MultilayerEdge` from `src` to `dst`.
237237
"""
238-
get_metadata(mg::M, src::MultilayerVertex, dst::MultilayerVertex) where M <: AbstractMultilayerGraph = get_halfegde(mg, src, dst).metadata
238+
get_metadata(mg::AbstractMultilayerGraph, src::MultilayerVertex, dst::MultilayerVertex) = get_halfegde(mg, src, dst).metadata
239239

240240
"""
241-
get_weight(mg::M, src::MultilayerVertex, dst::MultilayerVertex) where M <: AbstractMultilayerGraph
241+
get_weight(mg::AbstractMultilayerGraph, src::MultilayerVertex, dst::MultilayerVertexph
242242
243243
Return the weight associated to the `MultilayerEdge` from `src` to `dst`.
244244
"""
245-
SimpleWeightedGraphs.get_weight(mg::M, src::MultilayerVertex, dst::MultilayerVertex) where M <: AbstractMultilayerGraph = get_halfegde(mg, src, dst).weight
245+
SimpleWeightedGraphs.get_weight(mg::AbstractMultilayerGraph, src::MultilayerVertex, dst::MultilayerVertex) = get_halfegde(mg, src, dst).weight
246246

247247

248248
# Layers and Interlayers
@@ -513,18 +513,18 @@ Get the degree of vertices `vs` in `mg`.
513513
Graphs.degree(mg::M, vs::AbstractVector{V}=vertices(mg)) where {T,M<:AbstractMultilayerGraph{T,<:Real},V<:MultilayerVertex} = [degree(mg, x) for x in vs]
514514

515515
"""
516-
inneighbors( mg::M, mv::V ) where {T,M<:AbstractMultilayerGraph{T,<:Real},V<:MultilayerVertex}
516+
inneighbors( mg::AbstractMultilayerGraph, mv::MultilayerVertex )
517517
518518
Return the list of inneighbors of `mv` within `mg`.
519519
"""
520-
Graphs.inneighbors( mg::M, mv::V ) where {T,M<:AbstractMultilayerGraph{T,<:Real},V<:MultilayerVertex} = inneighbors(mg, get_v(mg, mv))
520+
Graphs.inneighbors( mg::AbstractMultilayerGraph, mv::MultilayerVertex ) = inneighbors(mg, get_v(mg, mv))
521521

522522
"""
523-
outneighbors(mg::M, v::T) where {M <: AbstractMultilayerGraph{T} } where { T <: Integer}
523+
outneighbors( mg::AbstractMultilayerGraph, mv::MultilayerVertex)
524524
525525
Return the list of outneighbors of `v` within `mg`.
526526
"""
527-
Graphs.outneighbors( mg::M, mv::V ) where {T,M<:AbstractMultilayerGraph{T,<:Real},V<:MultilayerVertex} = outneighbors(mg, get_v(mg, mv))
527+
Graphs.outneighbors( mg::AbstractMultilayerGraph, mv::MultilayerVertex) = outneighbors(mg, get_v(mg, mv))
528528

529529

530530
"""
@@ -546,11 +546,11 @@ function Graphs.outneighbors(
546546
end
547547

548548
"""
549-
neighbors(mg::M, v::V) where {T, M <: AbstractMultilayerGraph{T, <: Real}, V <: MultilayerVertex}
549+
neighbors(mg::AbstractMultilayerGraph, mv::MultilayerVertex)
550550
551-
Get the neighbors of vertices `vs` in `mg`. Reduces to `outneighbors` for both directed and undirected multilayer graphs.
551+
Get the neighbors of vertex `mv` in `mg`. Reduces to `outneighbors` for both directed and undirected multilayer graphs.
552552
"""
553-
Graphs.neighbors(mg::M, v::V) where {T,M<:AbstractMultilayerGraph{T,<:Real},V<:MultilayerVertex} = outneighbors(mg, v)
553+
Graphs.neighbors(mg::AbstractMultilayerGraph, mv::MultilayerVertex) = outneighbors(mg, mv)
554554

555555
"""
556556
weighttype(mg::M) where {M <: AbstractMultilayerGraph}
@@ -561,18 +561,26 @@ weighttype(::M) where {T,U,M<:AbstractMultilayerGraph{T,U}} = U
561561

562562
# Multilayer-specific methods
563563
"""
564-
mv_inneighbors(mg::M, v::T) where {M <: AbstractMultilayerGraph{T} } where { T <: Integer}
564+
mv_inneighbors(mg::AbstractMultilayerGraph, mv::MultilayerVertex)
565565
566-
Return the list of `MultilayerVertex` inneighbors of `v` within `mg`.
566+
Return the list of `MultilayerVertex` inneighbors of `mv` within `mg`.
567+
"""
568+
mv_inneighbors(mg::AbstractMultilayerGraph, mv::MultilayerVertex) = getindex.(Ref(mg.v_V_associations), inneighbors(mg, mv))
569+
567570
"""
568-
mv_inneighbors(mg::M, mv::V) where {T,M<:AbstractMultilayerGraph{T,<:Real},V<:MultilayerVertex} = getindex.(Ref(mg.v_V_associations), inneighbors(mg, mv))
571+
mv_outneighbors(mg::AbstractMultilayerGraph, mv::MultilayerVertex)
572+
573+
Return the list of `MultilayerVertex` outneighbors of `mv` within `mg`.
574+
"""
575+
mv_outneighbors( mg::AbstractMultilayerGraph, mv::MultilayerVertex) = getindex.(Ref(mg.v_V_associations), outneighbors(mg, mv))
576+
569577

570578
"""
571-
mv_outneighbors( mg::M, mv::V) where {T,M<:AbstractMultilayerGraph{T,<:Real},V<:MultilayerVertex}
579+
mv_neighbors(mg::AbstractMultilayerGraph, mv::MultilayerVertex)
572580
573-
Return the list of `MultilayerVertex` outneighbors of `v` within `mg`.
581+
Return the list of `MultilayerVertex` neighbors of `mv` within `mg`.
574582
"""
575-
mv_outneighbors( mg::M, mv::V) where {T,M<:AbstractMultilayerGraph{T,<:Real},V<:MultilayerVertex} = getindex.(Ref(mg.v_V_associations), outneighbors(mg, mv))
583+
mv_neighbors( mg::AbstractMultilayerGraph, mv::MultilayerVertex) = getindex.(Ref(mg.v_V_associations), neighbors(mg, mv))
576584

577585
"""
578586
get_supra_weight_matrix_from_weight_tensor(weight_tensor::Array{U, 4}) where { U <: Real}

src/abstractmultilayerugraph.jl

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -86,11 +86,11 @@ end
8686

8787
# Edges
8888
"""
89-
has_edge(mg::M, src::T, dst::T) where { T,U, M <: AbstractMultilayerUGraph{T,U}}
89+
has_edge(mg::M, src::T, dst::T) where { T, M <: AbstractMultilayerUGraph{T}}
9090
9191
Return true if `mg` has edge between the `src` and `dst` (does not check edge or vertex metadata).
9292
"""
93-
function Graphs.has_edge(mg::M, src::T, dst::T) where { T,U, M <: AbstractMultilayerUGraph{T,U}}
93+
function Graphs.has_edge(mg::M, src::T, dst::T) where { T, M <: AbstractMultilayerUGraph{T}}
9494

9595
has_vertex(mg,src) || return false
9696
has_vertex(mg,dst) || return false
@@ -325,11 +325,11 @@ Return the degree of MultilayerVertex `v` within `mg`.
325325
Graphs.degree(mg::M, v::V ) where {T,M<:AbstractMultilayerUGraph{T,<:Real},V<:MultilayerVertex} = indegree(mg, v)
326326

327327
"""
328-
is_directed(m::M) where { M <: AbstractMultilayerUGraph}
328+
is_directed(mg::AbstractMultilayerUGraph)
329329
330330
Return `true` if `mg` is directed, `false` otherwise.
331331
"""
332-
Graphs.is_directed(mg::M) where {M<:AbstractMultilayerUGraph} = false
332+
Graphs.is_directed(mg::AbstractMultilayerUGraph) = false
333333

334334
"""
335335
is_directed(m::M) where { M <: Type{ <: AbstractMultilayerUGraph}}

0 commit comments

Comments
 (0)