Skip to content

Commit

Permalink
Merge 5cb2d2e into b64333d
Browse files Browse the repository at this point in the history
  • Loading branch information
tkf committed Mar 9, 2020
2 parents b64333d + 5cb2d2e commit a68b840
Show file tree
Hide file tree
Showing 2 changed files with 29 additions and 0 deletions.
18 changes: 18 additions & 0 deletions src/ProgressLogging.jl
Original file line number Diff line number Diff line change
Expand Up @@ -151,6 +151,8 @@ function Logging.handle_message(logger::MyLogger, args...; kwargs...)
# handle normal log record
end
```
Progress monitors also should define [`implementedby`](@ref).
"""
asprogress(_level, progress::Progress, _args...; _...) = progress
function asprogress(
Expand Down Expand Up @@ -506,4 +508,20 @@ function make_count_to_frac(iterators...)
return count_to_frac
end

"""
ProgressLogging.implementedby(logger::AbstractLogger) :: Bool
Check if ProgressLogging protocol is supported by `logger`.
# Implementation
A progress monitor `CustomLogger <: AbstractLogger` should define
```julia
ProgressLogging.implementedby(::CustomLogger) = true
```
"""
implementedby
implementedby(@nospecialize(logger::Logging.AbstractLogger)) = false

end # module
11 changes: 11 additions & 0 deletions test/test_misc.jl
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
module TestMisc

using ProgressLogging
using Test
using Logging

@testset "implementedby" begin
@test ProgressLogging.implementedby(NullLogger()) == false
end

end # module

0 comments on commit a68b840

Please sign in to comment.