Skip to content

Commit 90c76b5

Browse files
Jeroenydg
authored andcommitted
Printer: added $linesBetweenUseTypes (#114)
1 parent f19b797 commit 90c76b5

File tree

3 files changed

+9
-4
lines changed

3 files changed

+9
-4
lines changed

readme.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -487,6 +487,7 @@ class MyPrinter extends Nette\PhpGenerator\Printer
487487
public string $indentation = "\t";
488488
public int $linesBetweenProperties = 0;
489489
public int $linesBetweenMethods = 2;
490+
public int $linesBetweenUseTypes = 0;
490491
public bool $bracesOnNextLine = true;
491492
public string $returnTypeColon = ': ';
492493
}

src/PhpGenerator/Printer.php

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ class Printer
2424
public string $indentation = "\t";
2525
public int $linesBetweenProperties = 0;
2626
public int $linesBetweenMethods = 2;
27+
public int $linesBetweenUseTypes = 0;
2728
public string $returnTypeColon = ': ';
2829
public bool $bracesOnNextLine = true;
2930
protected ?PhpNamespace $namespace = null;
@@ -255,9 +256,12 @@ public function printNamespace(PhpNamespace $namespace): string
255256
{
256257
$this->namespace = $this->resolveTypes ? $namespace : null;
257258
$name = $namespace->getName();
258-
$uses = $this->printUses($namespace)
259-
. $this->printUses($namespace, PhpNamespace::NameFunction)
260-
. $this->printUses($namespace, PhpNamespace::NameConstant);
259+
$uses = [
260+
$this->printUses($namespace),
261+
$this->printUses($namespace, PhpNamespace::NameFunction),
262+
$this->printUses($namespace, PhpNamespace::NameConstant),
263+
];
264+
$uses = implode(str_repeat("\n", $this->linesBetweenUseTypes), array_filter($uses));
261265

262266
$items = [];
263267
foreach ($namespace->getClasses() as $class) {
@@ -305,7 +309,6 @@ protected function printUses(PhpNamespace $namespace, string $of = PhpNamespace:
305309
PhpNamespace::NameFunction => 'function ',
306310
PhpNamespace::NameConstant => 'const ',
307311
][$of];
308-
$name = $namespace->getName();
309312
$uses = [];
310313
foreach ($namespace->getUses($of) as $alias => $original) {
311314
$uses[] = Helpers::extractShortName($original) === $alias

src/PhpGenerator/PsrPrinter.php

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,4 +17,5 @@ final class PsrPrinter extends Printer
1717
{
1818
public string $indentation = ' ';
1919
public int $linesBetweenMethods = 1;
20+
public int $linesBetweenUseTypes = 1;
2021
}

0 commit comments

Comments
 (0)