DebuggableInterface
last analyzed

Size/Duplication

Total Lines 49
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
dl 0
loc 49
c 0
b 0
f 0

5 Methods

Rating   Name   Duplication   Size   Complexity  
enableDebug() 0 1 ?
setDebugger() 0 1 ?
delegateDebugger() 0 1 ?
isDebugging() 0 1 ?
debug() 0 1 ?
1
<?php
2
/**
3
 * Phossa Project
4
 *
5
 * PHP version 5.4
6
 *
7
 * @category  Library
8
 * @package   Phossa2\Shared
9
 * @copyright Copyright (c) 2016 phossa.com
10
 * @license   http://mit-license.org/ MIT License
11
 * @link      http://www.phossa.com/
12
 */
13
/*# declare(strict_types=1); */
14
15
namespace Phossa2\Shared\Debug;
16
17
use Psr\Log\LoggerInterface;
18
19
/**
20
 * DebuggableInterface
21
 *
22
 * @package Phossa2\Shared
23
 * @author  Hong Zhang <[email protected]>
24
 * @version 2.0.26
25
 * @since   2.0.26 added
26
 */
27
interface DebuggableInterface
28
{
29
    /**
30
     * Enable debugging
31
     *
32
     * @param  bool $flag
33
     * @return $this
34
     * @access public
35
     * @api
36
     */
37
    public function enableDebug(/*# bool */ $flag = true);
38
39
    /**
40
     * Set the logger
41
     *
42
     * @param  LoggerInterface $logger
43
     * @return $this;
0 ignored issues
show
Documentation introduced by
The doc-type $this; could not be parsed: Expected "|" or "end of type", but got ";" at position 5. (view supported doc-types)

This check marks PHPDoc comments that could not be parsed by our parser. To see which comment annotations we can parse, please refer to our documentation on supported doc-types.

Loading history...
44
     * @access public
45
     * @api
46
     */
47
    public function setDebugger(LoggerInterface $logger);
48
49
    /**
50
     * Delete debugger to object $object
51
     *
52
     * @return object $object
53
     * @access public
54
     * @api
55
     */
56
    public function delegateDebugger($object);
57
58
    /**
59
     * Both enabled and debugger is set
60
     *
61
     * @return bool
62
     * @access public
63
     * @api
64
     */
65
    public function isDebugging()/*# : bool */;
66
67
    /**
68
     * Send debug message
69
     *
70
     * @param  string $message
71
     * @return $this
72
     * @access public
73
     */
74
    public function debug(/*# string */ $message);
75
}
76