Skip to content

Commit d2e695e

Browse files
Merge pull request #32 from wgevaert/bugfix-assignment-as-outer-pattern
Assignment as outer "pattern"
2 parents 0ca5ff1 + 0fe961b commit d2e695e

File tree

161 files changed

+848
-556
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

161 files changed

+848
-556
lines changed

src/Addition.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,4 +48,4 @@ protected function getOperator(): string
4848
{
4949
return "+";
5050
}
51-
}
51+
}

src/AndOperator.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,4 +48,4 @@ protected function getOperator(): string
4848
{
4949
return "AND";
5050
}
51-
}
51+
}

src/BinaryOperator.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,4 +76,4 @@ public function toQuery(): string
7676
* @return string
7777
*/
7878
abstract protected function getOperator(): string;
79-
}
79+
}

src/Clauses/CallProcedureClause.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -134,13 +134,13 @@ protected function getSubject(): string
134134

135135
$arguments = implode(
136136
", ",
137-
array_map(fn(AnyType $pattern): string => $pattern->toQuery(), $this->arguments)
137+
array_map(fn (AnyType $pattern): string => $pattern->toQuery(), $this->arguments)
138138
);
139139

140140
if (count($this->yieldVariables) > 0) {
141141
$yieldParameters = implode(
142142
", ",
143-
array_map(fn(Variable $variable): string => $variable->toQuery(), $this->yieldVariables)
143+
array_map(fn (Variable $variable): string => $variable->toQuery(), $this->yieldVariables)
144144
);
145145

146146
return sprintf("%s(%s) YIELD %s", $this->procedure, $arguments, $yieldParameters);

src/Clauses/Clause.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,4 +68,4 @@ public function canBeEmpty(): bool
6868
* @return string
6969
*/
7070
abstract protected function getClause(): string;
71-
}
71+
}

src/Clauses/CreateClause.php

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,8 @@
2121

2222
namespace WikibaseSolutions\CypherDSL\Clauses;
2323

24+
use WikibaseSolutions\CypherDSL\Assignment;
25+
use WikibaseSolutions\CypherDSL\Traits\ErrorTrait;
2426
use WikibaseSolutions\CypherDSL\Types\StructuralTypes\StructuralType;
2527

2628
/**
@@ -30,19 +32,23 @@
3032
*/
3133
class CreateClause extends Clause
3234
{
35+
use ErrorTrait;
36+
3337
/**
34-
* @var StructuralType[] The patterns to create
38+
* @var StructuralType[]|Assignment[] The patterns to create
3539
*/
3640
private array $patterns = [];
3741

3842
/**
3943
* Add a pattern to create.
4044
*
41-
* @param StructuralType $pattern The pattern to create
45+
* @param StructuralType|Assignment $pattern The pattern to create
4246
* @return CreateClause
4347
*/
44-
public function addPattern(StructuralType $pattern): self
48+
public function addPattern($pattern): self
4549
{
50+
$this->assertClass('pattern', [StructuralType::class, Assignment::class], $pattern);
51+
4652
$this->patterns[] = $pattern;
4753

4854
return $this;
@@ -63,7 +69,7 @@ protected function getSubject(): string
6369
{
6470
return implode(
6571
", ",
66-
array_map(fn(StructuralType $pattern): string => $pattern->toQuery(), $this->patterns)
72+
array_map(fn ($pattern): string => $pattern->toQuery(), $this->patterns)
6773
);
6874
}
69-
}
75+
}

src/Clauses/DeleteClause.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@ protected function getSubject(): string
9191
{
9292
return implode(
9393
", ",
94-
array_map(fn(NodeType $node) => $node->toQuery(), $this->nodes)
94+
array_map(fn (NodeType $node) => $node->toQuery(), $this->nodes)
9595
);
9696
}
97-
}
97+
}

src/Clauses/LimitClause.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,4 +69,4 @@ protected function getSubject(): string
6969

7070
return "";
7171
}
72-
}
72+
}

src/Clauses/MatchClause.php

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,8 @@
2121

2222
namespace WikibaseSolutions\CypherDSL\Clauses;
2323

24+
use WikibaseSolutions\CypherDSL\Assignment;
25+
use WikibaseSolutions\CypherDSL\Traits\ErrorTrait;
2426
use WikibaseSolutions\CypherDSL\Types\StructuralTypes\StructuralType;
2527

2628
/**
@@ -30,19 +32,23 @@
3032
*/
3133
class MatchClause extends Clause
3234
{
35+
use ErrorTrait;
36+
3337
/**
34-
* @var StructuralType[] List of patterns
38+
* @var StructuralType[]|Assignment[] List of patterns
3539
*/
3640
private array $patterns = [];
3741

3842
/**
3943
* Add a pattern to the match clause.
4044
*
41-
* @param StructuralType $pattern
45+
* @param StructuralType|Assignment $pattern
4246
* @return MatchClause
4347
*/
44-
public function addPattern(StructuralType $pattern): self
48+
public function addPattern($pattern): self
4549
{
50+
$this->assertClass('pattern', [StructuralType::class, Assignment::class], $pattern);
51+
4652
$this->patterns[] = $pattern;
4753

4854
return $this;
@@ -63,7 +69,7 @@ protected function getSubject(): string
6369
{
6470
return implode(
6571
", ",
66-
array_map(fn(StructuralType $pattern): string => $pattern->toQuery(), $this->patterns)
72+
array_map(fn ($pattern): string => $pattern->toQuery(), $this->patterns)
6773
);
6874
}
69-
}
75+
}

src/Clauses/MergeClause.php

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,8 @@
2121

2222
namespace WikibaseSolutions\CypherDSL\Clauses;
2323

24+
use WikibaseSolutions\CypherDSL\Traits\ErrorTrait;
25+
use WikibaseSolutions\CypherDSL\Assignment;
2426
use WikibaseSolutions\CypherDSL\Types\StructuralTypes\StructuralType;
2527

2628
/**
@@ -30,10 +32,12 @@
3032
*/
3133
class MergeClause extends Clause
3234
{
35+
use ErrorTrait;
36+
3337
/**
34-
* @var StructuralType|null $pattern The pattern to merge
38+
* @var StructuralType|Assignment|null $pattern The pattern to merge
3539
*/
36-
private ?StructuralType $pattern;
40+
private $pattern;
3741

3842
/**
3943
* @var Clause|null $createClause The clause to execute when the pattern is created
@@ -48,11 +52,13 @@ class MergeClause extends Clause
4852
/**
4953
* Sets the pattern to merge.
5054
*
51-
* @param StructuralType $pattern The pattern to merge
55+
* @param StructuralType|Assignment $pattern The pattern to merge
5256
* @return MergeClause
5357
*/
54-
public function setPattern(StructuralType $pattern): self
58+
public function setPattern($pattern): self
5559
{
60+
$this->assertClass('pattern', [StructuralType::class, Assignment::class], $pattern);
61+
5662
$this->pattern = $pattern;
5763

5864
return $this;
@@ -117,4 +123,4 @@ protected function getSubject(): string
117123

118124
return implode(" ", $queryParts);
119125
}
120-
}
126+
}

0 commit comments

Comments
 (0)