Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
n/a
0 / 0
n/a
0 / 0
CRAP
n/a
0 / 0
1<?php
2
3namespace BrianHenryIE\Strauss\Files;
4
5use BrianHenryIE\Strauss\Types\DiscoveredSymbol;
6use BrianHenryIE\Strauss\Types\DiscoveredSymbols;
7
8interface FileBase
9{
10
11    public function getSourcePath(): string;
12
13    public function getTargetAbsolutePath(): string;
14
15    public function setTargetAbsolutePath(string $absoluteTargetPath): void;
16
17    public function getVendorRelativePath(): string;
18
19    public function isPhpFile(): bool;
20
21    public function isAutoloaded(): bool;
22
23    public function setDoCopy(bool $doCopy): void;
24
25    public function isDoCopy(): bool;
26
27    public function setDoPrefix(bool $doPrefix): void;
28
29    public function isDoPrefix(): bool;
30
31    /**
32     * Used to mark files that should be deleted after moving when `delete_vendor_files` is enabled.
33     * Used to mark files that are symlinked as not-to-be-deleted.
34     *
35     * @param bool $doDelete
36     *
37     * @return void
38     */
39    public function setDoDelete(bool $doDelete): void;
40
41    /**
42     * Should file be deleted?
43     *
44     * NB: Also respect the "delete_vendor_files"|"delete_vendor_packages" settings.
45     */
46    public function isDoDelete(): bool;
47
48    public function setDidDelete(bool $didDelete): void;
49
50    public function getDidDelete(): bool;
51
52    public function setDoUpdate(bool $doUpdate): void;
53
54    public function getDoUpdate(): bool;
55
56    public function setDidUpdate(): void;
57
58    public function addDiscoveredSymbol(DiscoveredSymbol $symbol): void;
59
60    public function getDiscoveredSymbols(): DiscoveredSymbols;
61
62    public function getNamespaces(): DiscoveredSymbols;
63}