From e75f38ab52a46772f91882f8791bdcc075183844 Mon Sep 17 00:00:00 2001 From: Norbert Orzechowicz Date: Fri, 6 Mar 2026 10:58:49 -0600 Subject: [PATCH 1/3] fix: entries droping metadata during rename --- .../src/Flow/ETL/Row/Entry/BooleanEntry.php | 2 +- .../etl/src/Flow/ETL/Row/Entry/DateEntry.php | 2 +- .../src/Flow/ETL/Row/Entry/DateTimeEntry.php | 2 +- .../etl/src/Flow/ETL/Row/Entry/EnumEntry.php | 2 +- .../etl/src/Flow/ETL/Row/Entry/FloatEntry.php | 2 +- .../Flow/ETL/Row/Entry/HTMLElementEntry.php | 2 +- .../etl/src/Flow/ETL/Row/Entry/HTMLEntry.php | 2 +- .../src/Flow/ETL/Row/Entry/IntegerEntry.php | 2 +- .../etl/src/Flow/ETL/Row/Entry/ListEntry.php | 2 +- .../etl/src/Flow/ETL/Row/Entry/MapEntry.php | 2 +- .../src/Flow/ETL/Row/Entry/StringEntry.php | 2 +- .../src/Flow/ETL/Row/Entry/StructureEntry.php | 2 +- .../etl/src/Flow/ETL/Row/Entry/TimeEntry.php | 2 +- .../etl/src/Flow/ETL/Row/Entry/UuidEntry.php | 2 +- .../Flow/ETL/Row/Entry/XMLElementEntry.php | 2 +- .../etl/src/Flow/ETL/Row/Entry/XMLEntry.php | 2 +- .../Transformer/RenameEntryTransformer.php | 4 +++ .../Tests/Unit/Row/Entry/BooleanEntryTest.php | 13 +++++++++ .../Tests/Unit/Row/Entry/DateEntryTest.php | 13 +++++++++ .../Unit/Row/Entry/DateTimeEntryTest.php | 13 +++++++++ .../Tests/Unit/Row/Entry/EnumEntryTest.php | 13 +++++++++ .../Tests/Unit/Row/Entry/FloatEntryTest.php | 13 +++++++++ .../Tests/Unit/Row/Entry/HTMLEntryTest.php | 13 +++++++++ .../Tests/Unit/Row/Entry/IntegerEntryTest.php | 13 +++++++++ .../Tests/Unit/Row/Entry/JsonEntryTest.php | 13 +++++++++ .../Tests/Unit/Row/Entry/ListEntryTest.php | 13 +++++++++ .../ETL/Tests/Unit/Row/Entry/MapEntryTest.php | 13 +++++++++ .../Tests/Unit/Row/Entry/StringEntryTest.php | 13 +++++++++ .../Unit/Row/Entry/StructureEntryTest.php | 13 +++++++++ .../Tests/Unit/Row/Entry/TimeEntryTest.php | 13 +++++++++ .../Tests/Unit/Row/Entry/UuidEntryTest.php | 13 +++++++++ .../Unit/Row/Entry/XMLElementEntryTest.php | 13 +++++++++ .../ETL/Tests/Unit/Row/Entry/XMLEntryTest.php | 13 +++++++++ .../RenameEntryTransformerTest.php | 27 +++++++++++++++++++ 34 files changed, 255 insertions(+), 16 deletions(-) diff --git a/src/core/etl/src/Flow/ETL/Row/Entry/BooleanEntry.php b/src/core/etl/src/Flow/ETL/Row/Entry/BooleanEntry.php index 6e91b08edf..4dca2cee40 100644 --- a/src/core/etl/src/Flow/ETL/Row/Entry/BooleanEntry.php +++ b/src/core/etl/src/Flow/ETL/Row/Entry/BooleanEntry.php @@ -76,7 +76,7 @@ public function name() : string */ public function rename(string $name) : static { - return new self($name, $this->value); + return new self($name, $this->value, $this->definition->metadata()); } public function toString() : string diff --git a/src/core/etl/src/Flow/ETL/Row/Entry/DateEntry.php b/src/core/etl/src/Flow/ETL/Row/Entry/DateEntry.php index 2bbf4b1d78..c2f915fcfc 100644 --- a/src/core/etl/src/Flow/ETL/Row/Entry/DateEntry.php +++ b/src/core/etl/src/Flow/ETL/Row/Entry/DateEntry.php @@ -89,7 +89,7 @@ public function name() : string public function rename(string $name) : static { - return new self($name, $this->value); + return new self($name, $this->value, $this->definition->metadata()); } public function toString() : string diff --git a/src/core/etl/src/Flow/ETL/Row/Entry/DateTimeEntry.php b/src/core/etl/src/Flow/ETL/Row/Entry/DateTimeEntry.php index a03d4eb46b..b352e7ed90 100644 --- a/src/core/etl/src/Flow/ETL/Row/Entry/DateTimeEntry.php +++ b/src/core/etl/src/Flow/ETL/Row/Entry/DateTimeEntry.php @@ -90,7 +90,7 @@ public function name() : string public function rename(string $name) : static { - return new self($name, $this->value); + return new self($name, $this->value, $this->definition->metadata()); } public function toString() : string diff --git a/src/core/etl/src/Flow/ETL/Row/Entry/EnumEntry.php b/src/core/etl/src/Flow/ETL/Row/Entry/EnumEntry.php index 8b2b7e21d4..1002d31710 100644 --- a/src/core/etl/src/Flow/ETL/Row/Entry/EnumEntry.php +++ b/src/core/etl/src/Flow/ETL/Row/Entry/EnumEntry.php @@ -80,7 +80,7 @@ public function name() : string public function rename(string $name) : static { - return new self($name, $this->value); + return new self($name, $this->value, $this->definition->metadata()); } public function toString() : string diff --git a/src/core/etl/src/Flow/ETL/Row/Entry/FloatEntry.php b/src/core/etl/src/Flow/ETL/Row/Entry/FloatEntry.php index 713b534380..8a11aa2f1c 100644 --- a/src/core/etl/src/Flow/ETL/Row/Entry/FloatEntry.php +++ b/src/core/etl/src/Flow/ETL/Row/Entry/FloatEntry.php @@ -102,7 +102,7 @@ public function name() : string */ public function rename(string $name) : static { - return new self($name, $this->value); + return new self($name, $this->value, $this->definition->metadata()); } public function toString() : string diff --git a/src/core/etl/src/Flow/ETL/Row/Entry/HTMLElementEntry.php b/src/core/etl/src/Flow/ETL/Row/Entry/HTMLElementEntry.php index c468e06c28..1131731a24 100644 --- a/src/core/etl/src/Flow/ETL/Row/Entry/HTMLElementEntry.php +++ b/src/core/etl/src/Flow/ETL/Row/Entry/HTMLElementEntry.php @@ -93,7 +93,7 @@ public function name() : string public function rename(string $name) : static { - return new self($name, $this->value); + return new self($name, $this->value, $this->definition->metadata()); } public function toString() : string diff --git a/src/core/etl/src/Flow/ETL/Row/Entry/HTMLEntry.php b/src/core/etl/src/Flow/ETL/Row/Entry/HTMLEntry.php index 9a255d0ba8..d0f70be22a 100644 --- a/src/core/etl/src/Flow/ETL/Row/Entry/HTMLEntry.php +++ b/src/core/etl/src/Flow/ETL/Row/Entry/HTMLEntry.php @@ -85,7 +85,7 @@ public function name() : string public function rename(string $name) : static { - return new self($name, $this->value); + return new self($name, $this->value, $this->definition->metadata()); } public function toString() : string diff --git a/src/core/etl/src/Flow/ETL/Row/Entry/IntegerEntry.php b/src/core/etl/src/Flow/ETL/Row/Entry/IntegerEntry.php index 0cae5684b1..0a7ca82968 100644 --- a/src/core/etl/src/Flow/ETL/Row/Entry/IntegerEntry.php +++ b/src/core/etl/src/Flow/ETL/Row/Entry/IntegerEntry.php @@ -79,7 +79,7 @@ public function name() : string */ public function rename(string $name) : static { - return new self($name, $this->value); + return new self($name, $this->value, $this->definition->metadata()); } public function toString() : string diff --git a/src/core/etl/src/Flow/ETL/Row/Entry/ListEntry.php b/src/core/etl/src/Flow/ETL/Row/Entry/ListEntry.php index c155034782..d06bad6ba4 100644 --- a/src/core/etl/src/Flow/ETL/Row/Entry/ListEntry.php +++ b/src/core/etl/src/Flow/ETL/Row/Entry/ListEntry.php @@ -114,7 +114,7 @@ public function name() : string public function rename(string $name) : static { - return new self($name, $this->value, $this->type()); + return new self($name, $this->value, $this->type(), $this->definition->metadata()); } public function toString() : string diff --git a/src/core/etl/src/Flow/ETL/Row/Entry/MapEntry.php b/src/core/etl/src/Flow/ETL/Row/Entry/MapEntry.php index 340ac5cd47..c38ddeb41f 100644 --- a/src/core/etl/src/Flow/ETL/Row/Entry/MapEntry.php +++ b/src/core/etl/src/Flow/ETL/Row/Entry/MapEntry.php @@ -115,7 +115,7 @@ public function name() : string public function rename(string $name) : static { - return new self($name, $this->value, $this->type()); + return new self($name, $this->value, $this->type(), $this->definition->metadata()); } public function toString() : string diff --git a/src/core/etl/src/Flow/ETL/Row/Entry/StringEntry.php b/src/core/etl/src/Flow/ETL/Row/Entry/StringEntry.php index d4d36dd1a0..5b5d9abe1a 100644 --- a/src/core/etl/src/Flow/ETL/Row/Entry/StringEntry.php +++ b/src/core/etl/src/Flow/ETL/Row/Entry/StringEntry.php @@ -108,7 +108,7 @@ public function name() : string */ public function rename(string $name) : static { - return new self($name, $this->value); + return new self($name, $this->value, $this->definition->metadata()); } public function toLowercase() : self diff --git a/src/core/etl/src/Flow/ETL/Row/Entry/StructureEntry.php b/src/core/etl/src/Flow/ETL/Row/Entry/StructureEntry.php index d0f65865f7..37268c54de 100644 --- a/src/core/etl/src/Flow/ETL/Row/Entry/StructureEntry.php +++ b/src/core/etl/src/Flow/ETL/Row/Entry/StructureEntry.php @@ -113,7 +113,7 @@ public function name() : string public function rename(string $name) : static { - return new self($name, $this->value, $this->type()); + return new self($name, $this->value, $this->type(), $this->definition->metadata()); } public function toString() : string diff --git a/src/core/etl/src/Flow/ETL/Row/Entry/TimeEntry.php b/src/core/etl/src/Flow/ETL/Row/Entry/TimeEntry.php index 28d0ba8d2b..fc24c62926 100644 --- a/src/core/etl/src/Flow/ETL/Row/Entry/TimeEntry.php +++ b/src/core/etl/src/Flow/ETL/Row/Entry/TimeEntry.php @@ -190,7 +190,7 @@ public function name() : string public function rename(string $name) : static { - return new self($name, $this->value); + return new self($name, $this->value, $this->definition->metadata()); } public function toString() : string diff --git a/src/core/etl/src/Flow/ETL/Row/Entry/UuidEntry.php b/src/core/etl/src/Flow/ETL/Row/Entry/UuidEntry.php index 2b6ac71ebb..71b8cda844 100644 --- a/src/core/etl/src/Flow/ETL/Row/Entry/UuidEntry.php +++ b/src/core/etl/src/Flow/ETL/Row/Entry/UuidEntry.php @@ -107,7 +107,7 @@ public function name() : string */ public function rename(string $name) : static { - return new self($name, $this->value); + return new self($name, $this->value, $this->definition->metadata()); } public function toString() : string diff --git a/src/core/etl/src/Flow/ETL/Row/Entry/XMLElementEntry.php b/src/core/etl/src/Flow/ETL/Row/Entry/XMLElementEntry.php index cd5d82d73a..ec8ebcdd0c 100644 --- a/src/core/etl/src/Flow/ETL/Row/Entry/XMLElementEntry.php +++ b/src/core/etl/src/Flow/ETL/Row/Entry/XMLElementEntry.php @@ -134,7 +134,7 @@ public function name() : string public function rename(string $name) : static { - return new self($name, $this->value); + return new self($name, $this->value, $this->definition->metadata()); } public function toString() : string diff --git a/src/core/etl/src/Flow/ETL/Row/Entry/XMLEntry.php b/src/core/etl/src/Flow/ETL/Row/Entry/XMLEntry.php index f8955c5609..039ad2a2e7 100644 --- a/src/core/etl/src/Flow/ETL/Row/Entry/XMLEntry.php +++ b/src/core/etl/src/Flow/ETL/Row/Entry/XMLEntry.php @@ -140,7 +140,7 @@ public function name() : string public function rename(string $name) : static { - return new self($name, $this->value); + return new self($name, $this->value, $this->definition->metadata()); } public function toString() : string diff --git a/src/core/etl/src/Flow/ETL/Transformer/RenameEntryTransformer.php b/src/core/etl/src/Flow/ETL/Transformer/RenameEntryTransformer.php index e9ab32caa8..3ba3aaa33a 100644 --- a/src/core/etl/src/Flow/ETL/Transformer/RenameEntryTransformer.php +++ b/src/core/etl/src/Flow/ETL/Transformer/RenameEntryTransformer.php @@ -15,6 +15,10 @@ public function __construct(private string $from, private string $to) public function transform(Rows $rows, FlowContext $context) : Rows { + if ($this->from === $this->to) { + return $rows; + } + $context->telemetry()->transformationStarted($this); try { diff --git a/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/BooleanEntryTest.php b/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/BooleanEntryTest.php index d346f7dc2c..0ea2681108 100644 --- a/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/BooleanEntryTest.php +++ b/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/BooleanEntryTest.php @@ -6,6 +6,7 @@ use function Flow\ETL\DSL\boolean_entry; use Flow\ETL\Row\Entry\BooleanEntry; +use Flow\ETL\Schema\Metadata; use Flow\ETL\Tests\FlowTestCase; use PHPUnit\Framework\Attributes\DataProvider; @@ -56,6 +57,18 @@ public function test_prevents_from_creating_entry_with_empty_entry_name() : void boolean_entry('', true); } + public function test_rename_preserves_metadata() : void + { + $metadata = Metadata::fromArray(['description' => 'test metadata', 'priority' => 1]); + $entry = boolean_entry('old_name', true, $metadata); + + $renamedEntry = $entry->rename('new_name'); + + self::assertSame('new_name', $renamedEntry->name()); + self::assertTrue($renamedEntry->value()); + self::assertTrue($renamedEntry->definition()->metadata()->isEqual($metadata)); + } + public function test_renames_entry() : void { $entry = boolean_entry('entry-name', true); diff --git a/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/DateEntryTest.php b/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/DateEntryTest.php index c115c3df0e..7150e3e404 100644 --- a/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/DateEntryTest.php +++ b/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/DateEntryTest.php @@ -7,6 +7,7 @@ use function Flow\ETL\DSL\date_entry; use Flow\ETL\Exception\InvalidArgumentException; use Flow\ETL\Row\Entry\DateEntry; +use Flow\ETL\Schema\Metadata; use Flow\ETL\Tests\FlowTestCase; use PHPUnit\Framework\Attributes\DataProvider; @@ -85,6 +86,18 @@ public function test_removes_time() : void ); } + public function test_rename_preserves_metadata() : void + { + $metadata = Metadata::fromArray(['description' => 'test metadata', 'priority' => 1]); + $entry = date_entry('old_name', new \DateTimeImmutable('2020-01-01'), $metadata); + + $renamedEntry = $entry->rename('new_name'); + + self::assertSame('new_name', $renamedEntry->name()); + self::assertEquals($entry->value(), $renamedEntry->value()); + self::assertTrue($renamedEntry->definition()->metadata()->isEqual($metadata)); + } + public function test_renames_entry() : void { $entry = date_entry('entry-name', new \DateTimeImmutable()); diff --git a/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/DateTimeEntryTest.php b/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/DateTimeEntryTest.php index a36125ab12..dfd2ed90c6 100644 --- a/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/DateTimeEntryTest.php +++ b/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/DateTimeEntryTest.php @@ -7,6 +7,7 @@ use function Flow\ETL\DSL\datetime_entry; use Flow\ETL\Exception\InvalidArgumentException; use Flow\ETL\Row\Entry\DateTimeEntry; +use Flow\ETL\Schema\Metadata; use Flow\ETL\Tests\FlowTestCase; use PHPUnit\Framework\Attributes\DataProvider; @@ -70,6 +71,18 @@ public function test_prevents_from_creating_entry_with_empty_entry_name() : void datetime_entry('', new \DateTimeImmutable('2020-07-13 12:00')); } + public function test_rename_preserves_metadata() : void + { + $metadata = Metadata::fromArray(['description' => 'test metadata', 'priority' => 1]); + $entry = new DateTimeEntry('old_name', new \DateTimeImmutable('2020-01-01 12:00:00'), $metadata); + + $renamedEntry = $entry->rename('new_name'); + + self::assertSame('new_name', $renamedEntry->name()); + self::assertEquals($entry->value(), $renamedEntry->value()); + self::assertTrue($renamedEntry->definition()->metadata()->isEqual($metadata)); + } + public function test_renames_entry() : void { $entry = datetime_entry('entry-name', new \DateTimeImmutable()); diff --git a/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/EnumEntryTest.php b/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/EnumEntryTest.php index 0587411837..43b6aadaf3 100644 --- a/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/EnumEntryTest.php +++ b/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/EnumEntryTest.php @@ -5,6 +5,7 @@ namespace Flow\ETL\Tests\Unit\Row\Entry; use function Flow\ETL\DSL\{enum_entry, enum_schema}; +use Flow\ETL\Schema\Metadata; use Flow\ETL\Tests\Fixtures\Enum\{BackedIntEnum, BackedStringEnum, BasicEnum}; use Flow\ETL\Tests\FlowTestCase; @@ -76,6 +77,18 @@ public function test_is_equal() : void ); } + public function test_rename_preserves_metadata() : void + { + $metadata = Metadata::fromArray(['description' => 'test metadata', 'priority' => 1]); + $entry = enum_entry('old_name', BasicEnum::one, $metadata); + + $renamedEntry = $entry->rename('new_name'); + + self::assertSame('new_name', $renamedEntry->name()); + self::assertSame(BasicEnum::one, $renamedEntry->value()); + self::assertTrue($renamedEntry->definition()->metadata()->isEqual($metadata)); + } + public function test_to_string() : void { self::assertSame( diff --git a/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/FloatEntryTest.php b/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/FloatEntryTest.php index 6916846e9f..d0a8571c8c 100644 --- a/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/FloatEntryTest.php +++ b/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/FloatEntryTest.php @@ -7,6 +7,7 @@ use function Flow\ETL\DSL\float_entry; use function Flow\Types\DSL\type_instance_of; use Flow\ETL\Row\Entry\FloatEntry; +use Flow\ETL\Schema\Metadata; use Flow\ETL\Tests\FlowTestCase; use PHPUnit\Framework\Attributes\DataProvider; @@ -60,6 +61,18 @@ public function test_prevents_from_creating_entry_with_empty_entry_name() : void float_entry('', 10.01); } + public function test_rename_preserves_metadata() : void + { + $metadata = Metadata::fromArray(['description' => 'test metadata', 'priority' => 1]); + $entry = float_entry('old_name', 100.5, $metadata); + + $renamedEntry = $entry->rename('new_name'); + + self::assertSame('new_name', $renamedEntry->name()); + self::assertSame(100.5, $renamedEntry->value()); + self::assertTrue($renamedEntry->definition()->metadata()->isEqual($metadata)); + } + public function test_renames_entry() : void { $float = float_entry('entry-name', 100.00001); diff --git a/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/HTMLEntryTest.php b/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/HTMLEntryTest.php index 28e44bec59..47e59fb53f 100644 --- a/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/HTMLEntryTest.php +++ b/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/HTMLEntryTest.php @@ -8,6 +8,7 @@ use Dom\HTMLDocument; use Flow\ETL\Row\Entry; use Flow\ETL\Row\Entry\HTMLEntry; +use Flow\ETL\Schema\Metadata; use PHPUnit\Framework\Attributes\{DataProvider, RequiresPhp}; use PHPUnit\Framework\TestCase; @@ -156,6 +157,18 @@ public function test_map() : void ); } + public function test_rename_preserves_metadata() : void + { + $metadata = Metadata::fromArray(['description' => 'test metadata', 'priority' => 1]); + $entry = new HTMLEntry('old_name', '
test
', $metadata); + + $renamedEntry = $entry->rename('new_name'); + + self::assertSame('new_name', $renamedEntry->name()); + self::assertEquals($entry->value()?->saveHtml(), $renamedEntry->value()?->saveHtml()); + self::assertTrue($renamedEntry->definition()->metadata()->isEqual($metadata)); + } + public function test_renames_entry() : void { $entry = html_entry('entry-name', '
bar
'); diff --git a/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/IntegerEntryTest.php b/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/IntegerEntryTest.php index ae1ff8c8c7..d606607ce1 100644 --- a/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/IntegerEntryTest.php +++ b/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/IntegerEntryTest.php @@ -6,6 +6,7 @@ use function Flow\ETL\DSL\integer_entry; use Flow\ETL\Row\Entry\IntegerEntry; +use Flow\ETL\Schema\Metadata; use Flow\ETL\Tests\FlowTestCase; use PHPUnit\Framework\Attributes\DataProvider; @@ -56,6 +57,18 @@ public function test_prevents_from_creating_entry_with_empty_entry_name() : void integer_entry('', 100); } + public function test_rename_preserves_metadata() : void + { + $metadata = Metadata::fromArray(['description' => 'test metadata', 'priority' => 1]); + $entry = integer_entry('old_name', 100, $metadata); + + $renamedEntry = $entry->rename('new_name'); + + self::assertSame('new_name', $renamedEntry->name()); + self::assertSame(100, $renamedEntry->value()); + self::assertTrue($renamedEntry->definition()->metadata()->isEqual($metadata)); + } + public function test_renames_entry() : void { $entry = integer_entry('entry-name', 100); diff --git a/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/JsonEntryTest.php b/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/JsonEntryTest.php index b646a8395e..989ca1147d 100644 --- a/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/JsonEntryTest.php +++ b/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/JsonEntryTest.php @@ -9,6 +9,7 @@ use Flow\ETL\Exception\InvalidArgumentException; use Flow\ETL\Row\Entry; use Flow\ETL\Row\Entry\JsonEntry; +use Flow\ETL\Schema\Metadata; use Flow\ETL\Tests\FlowTestCase; use Flow\Types\Value\Json; use PHPUnit\Framework\Attributes\DataProvider; @@ -184,6 +185,18 @@ public function test_prevents_from_creating_entry_with_empty_entry_name() : void json_entry('', [1, 2, 3]); } + public function test_rename_preserves_metadata() : void + { + $metadata = Metadata::fromArray(['description' => 'test metadata', 'priority' => 1]); + $entry = json_entry('old_name', ['id' => 1, 'name' => 'one'], $metadata); + + $renamedEntry = $entry->rename('new_name'); + + self::assertSame('new_name', $renamedEntry->name()); + self::assertEquals($entry->value()?->toArray(), $renamedEntry->value()?->toArray()); + self::assertTrue($renamedEntry->definition()->metadata()->isEqual($metadata)); + } + public function test_renames_entry() : void { $entry = json_entry('entry-name', ['id' => 1, 'name' => 'one']); diff --git a/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/ListEntryTest.php b/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/ListEntryTest.php index bd13199d63..f644754f17 100644 --- a/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/ListEntryTest.php +++ b/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/ListEntryTest.php @@ -15,6 +15,7 @@ type_string }; use Flow\ETL\Exception\InvalidArgumentException; +use Flow\ETL\Schema\Metadata; use Flow\ETL\Tests\FlowTestCase; final class ListEntryTest extends FlowTestCase @@ -125,6 +126,18 @@ public function test_rename() : void ); } + public function test_rename_preserves_metadata() : void + { + $metadata = Metadata::fromArray(['description' => 'test metadata', 'priority' => 1]); + $entry = list_entry('old_name', ['one', 'two', 'three'], type_list(type_string()), $metadata); + + $renamedEntry = $entry->rename('new_name'); + + self::assertSame('new_name', $renamedEntry->name()); + self::assertEquals(['one', 'two', 'three'], $renamedEntry->value()); + self::assertTrue($renamedEntry->definition()->metadata()->isEqual($metadata)); + } + public function test_to_string() : void { self::assertEquals( diff --git a/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/MapEntryTest.php b/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/MapEntryTest.php index eb18c585c6..fde517587c 100644 --- a/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/MapEntryTest.php +++ b/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/MapEntryTest.php @@ -7,6 +7,7 @@ use function Flow\ETL\DSL\{map_entry, map_schema}; use function Flow\Types\DSL\{type_boolean, type_datetime, type_float, type_integer, type_map, type_string}; use Flow\ETL\Exception\InvalidArgumentException; +use Flow\ETL\Schema\Metadata; use Flow\ETL\Tests\FlowTestCase; final class MapEntryTest extends FlowTestCase @@ -116,6 +117,18 @@ public function test_rename() : void ); } + public function test_rename_preserves_metadata() : void + { + $metadata = Metadata::fromArray(['description' => 'test metadata', 'priority' => 1]); + $entry = map_entry('old_name', ['one', 'two', 'three'], type_map(type_integer(), type_string()), $metadata); + + $renamedEntry = $entry->rename('new_name'); + + self::assertSame('new_name', $renamedEntry->name()); + self::assertEquals(['one', 'two', 'three'], $renamedEntry->value()); + self::assertTrue($renamedEntry->definition()->metadata()->isEqual($metadata)); + } + public function test_to_string() : void { self::assertSame( diff --git a/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/StringEntryTest.php b/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/StringEntryTest.php index ce8483bb1f..1e46134f62 100644 --- a/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/StringEntryTest.php +++ b/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/StringEntryTest.php @@ -7,6 +7,7 @@ use function Flow\ETL\DSL\string_entry; use function Flow\Types\DSL\type_instance_of; use Flow\ETL\Row\Entry\StringEntry; +use Flow\ETL\Schema\Metadata; use Flow\ETL\Tests\FlowTestCase; use PHPUnit\Framework\Attributes\DataProvider; @@ -67,6 +68,18 @@ public function test_prevents_from_creating_entry_with_empty_entry_name() : void string_entry('', 'any string value'); } + public function test_rename_preserves_metadata() : void + { + $metadata = Metadata::fromArray(['description' => 'test metadata', 'priority' => 1]); + $entry = string_entry('old_name', 'test value', $metadata); + + $renamedEntry = $entry->rename('new_name'); + + self::assertSame('new_name', $renamedEntry->name()); + self::assertSame('test value', $renamedEntry->value()); + self::assertTrue($renamedEntry->definition()->metadata()->isEqual($metadata)); + } + public function test_renames_entry() : void { $entry = string_entry('entry-name', 'any string value'); diff --git a/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/StructureEntryTest.php b/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/StructureEntryTest.php index c5b68f57a0..29226ed21d 100644 --- a/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/StructureEntryTest.php +++ b/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/StructureEntryTest.php @@ -9,6 +9,7 @@ use function Flow\Types\DSL\{type_array, type_integer, type_map, type_string, type_structure}; use Flow\ETL\Exception\InvalidArgumentException; use Flow\ETL\Row\Entry\StructureEntry; +use Flow\ETL\Schema\Metadata; use Flow\ETL\Tests\FlowTestCase; use PHPUnit\Framework\Attributes\DataProvider; @@ -145,6 +146,18 @@ public function test_prevents_from_creating_entry_with_empty_entry_name() : void structure_entry('', ['id' => 1, 'name' => 'one'], type_structure(['id' => type_integer(), 'name' => type_string()])); } + public function test_rename_preserves_metadata() : void + { + $metadata = Metadata::fromArray(['description' => 'test metadata', 'priority' => 1]); + $entry = structure_entry('old_name', ['id' => 1234], type_structure(['id' => type_integer()]), $metadata); + + $renamedEntry = $entry->rename('new_name'); + + self::assertSame('new_name', $renamedEntry->name()); + self::assertEquals(['id' => 1234], $renamedEntry->value()); + self::assertTrue($renamedEntry->definition()->metadata()->isEqual($metadata)); + } + public function test_renames_entry() : void { $entry = structure_entry('entry-name', ['id' => 1234], type_structure(['id' => type_integer()])); diff --git a/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/TimeEntryTest.php b/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/TimeEntryTest.php index bf059bd3b3..547eae400e 100644 --- a/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/TimeEntryTest.php +++ b/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/TimeEntryTest.php @@ -7,6 +7,7 @@ use function Flow\ETL\DSL\time_entry; use Flow\ETL\Exception\InvalidArgumentException; use Flow\ETL\Row\Entry\TimeEntry; +use Flow\ETL\Schema\Metadata; use Flow\ETL\Tests\FlowTestCase; use PHPUnit\Framework\Attributes\DataProvider; @@ -116,6 +117,18 @@ public function test_prevents_from_creating_entry_with_empty_entry_name() : void time_entry('', new \DateInterval('P1D')); } + public function test_rename_preserves_metadata() : void + { + $metadata = Metadata::fromArray(['description' => 'test metadata', 'priority' => 1]); + $entry = time_entry('old_name', new \DateInterval('PT10S'), $metadata); + + $renamedEntry = $entry->rename('new_name'); + + self::assertSame('new_name', $renamedEntry->name()); + self::assertEquals($entry->value(), $renamedEntry->value()); + self::assertTrue($renamedEntry->definition()->metadata()->isEqual($metadata)); + } + public function test_renames_entry() : void { $entry = time_entry('entry-name', new \DateInterval('P1D')); diff --git a/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/UuidEntryTest.php b/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/UuidEntryTest.php index 1f55c91be1..b7999bbc45 100644 --- a/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/UuidEntryTest.php +++ b/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/UuidEntryTest.php @@ -6,6 +6,7 @@ use function Flow\ETL\DSL\uuid_entry; use Flow\ETL\Row\Entry\UuidEntry; +use Flow\ETL\Schema\Metadata; use Flow\ETL\Tests\FlowTestCase; use Flow\Types\Value\Uuid; use PHPUnit\Framework\Attributes\DataProvider; @@ -98,6 +99,18 @@ public function test_prevents_from_creating_entry_with_empty_entry_name() : void uuid_entry('', Uuid::fromString('00000000-0000-0000-0000-000000000000')); } + public function test_rename_preserves_metadata() : void + { + $metadata = Metadata::fromArray(['description' => 'test metadata', 'priority' => 1]); + $entry = uuid_entry('old_name', Uuid::fromString('00000000-0000-0000-0000-000000000000'), $metadata); + + $renamedEntry = $entry->rename('new_name'); + + self::assertSame('new_name', $renamedEntry->name()); + self::assertEquals($entry->value()?->toString(), $renamedEntry->value()?->toString()); + self::assertTrue($renamedEntry->definition()->metadata()->isEqual($metadata)); + } + public function test_renames_entry() : void { $entry = uuid_entry('entry-name', $uuid = Uuid::fromString('00000000-0000-0000-0000-000000000000')); diff --git a/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/XMLElementEntryTest.php b/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/XMLElementEntryTest.php index 9c848acf76..def449c233 100644 --- a/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/XMLElementEntryTest.php +++ b/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/XMLElementEntryTest.php @@ -8,6 +8,7 @@ use function Flow\Types\DSL\type_instance_of; use Flow\ETL\Exception\InvalidArgumentException; use Flow\ETL\Row\Entry\XMLElementEntry; +use Flow\ETL\Schema\Metadata; use Flow\ETL\Tests\FlowTestCase; final class XMLElementEntryTest extends FlowTestCase @@ -50,6 +51,18 @@ public function test_duplicating_entry() : void self::assertSame($entry->toString(), $duplicated->toString()); } + public function test_rename_preserves_metadata() : void + { + $metadata = Metadata::fromArray(['description' => 'test metadata', 'priority' => 1]); + $entry = xml_element_entry('old_name', 'value', $metadata); + + $renamedEntry = $entry->rename('new_name'); + + self::assertSame('new_name', $renamedEntry->name()); + self::assertEquals($entry->toString(), $renamedEntry->toString()); + self::assertTrue($renamedEntry->definition()->metadata()->isEqual($metadata)); + } + public function test_serialization() : void { $element = (new \DOMDocument())->createElement('testElement', 'This is a test'); diff --git a/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/XMLEntryTest.php b/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/XMLEntryTest.php index 8a4f98f5c2..3fa9d54cbf 100644 --- a/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/XMLEntryTest.php +++ b/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/Entry/XMLEntryTest.php @@ -9,6 +9,7 @@ use DOMDocument; use Flow\ETL\Exception\InvalidArgumentException; use Flow\ETL\Row\Entry\XMLEntry; +use Flow\ETL\Schema\Metadata; use Flow\ETL\Tests\FlowTestCase; use PHPUnit\Framework\Attributes\DataProvider; @@ -157,6 +158,18 @@ public function test_is_equal(bool $equals, XMLEntry $entry, XMLEntry $nextEntry self::assertSame($equals, $entry->isEqual($nextEntry)); } + public function test_rename_preserves_metadata() : void + { + $metadata = Metadata::fromArray(['description' => 'test metadata', 'priority' => 1]); + $entry = xml_entry('old_name', 'test', $metadata); + + $renamedEntry = $entry->rename('new_name'); + + self::assertSame('new_name', $renamedEntry->name()); + self::assertEquals($entry->toString(), $renamedEntry->toString()); + self::assertTrue($renamedEntry->definition()->metadata()->isEqual($metadata)); + } + public function test_serialization() : void { $entry = xml_entry('xml', <<<'XML' diff --git a/src/core/etl/tests/Flow/ETL/Tests/Unit/Transformer/RenameEntryTransformerTest.php b/src/core/etl/tests/Flow/ETL/Tests/Unit/Transformer/RenameEntryTransformerTest.php index 5735e50e3b..a2c27c6c14 100644 --- a/src/core/etl/tests/Flow/ETL/Tests/Unit/Transformer/RenameEntryTransformerTest.php +++ b/src/core/etl/tests/Flow/ETL/Tests/Unit/Transformer/RenameEntryTransformerTest.php @@ -6,6 +6,7 @@ use function Flow\ETL\DSL\{boolean_entry, config, flow_context, integer_entry, json_entry, row, rows, string_entry}; use Flow\ETL\Row\Entry\DateTimeEntry; +use Flow\ETL\Schema\Metadata; use Flow\ETL\Tests\FlowTestCase; use Flow\ETL\Transformer\RenameEntryTransformer; @@ -28,4 +29,30 @@ public function test_renaming_entries() : void $rows ); } + + public function test_renaming_entry_preserves_metadata() : void + { + $metadata = Metadata::fromArray(['description' => 'test metadata', 'priority' => 1]); + $entry = string_entry('old_name', 'test value', $metadata); + $inputRows = rows(row($entry)); + + $transformer = new RenameEntryTransformer('old_name', 'new_name'); + $outputRows = $transformer->transform($inputRows, flow_context(config())); + + $renamedEntry = $outputRows->first()->get('new_name'); + + self::assertSame('new_name', $renamedEntry->name()); + self::assertSame('test value', $renamedEntry->value()); + self::assertTrue($renamedEntry->definition()->metadata()->isEqual($metadata)); + } + + public function test_renaming_to_same_name_returns_same_rows_instance() : void + { + $inputRows = rows(row(string_entry('name', 'value'))); + + $transformer = new RenameEntryTransformer('name', 'name'); + $outputRows = $transformer->transform($inputRows, flow_context(config())); + + self::assertSame($inputRows, $outputRows); + } } From d34c0f271f945594bf231f823d6e9ea59790500f Mon Sep 17 00:00:00 2001 From: Norbert Orzechowicz Date: Sat, 7 Mar 2026 15:15:15 -0600 Subject: [PATCH 2/3] refactor: optimize rename performance - removed deprecated code --- src/core/etl/src/Flow/ETL/DSL/functions.php | 20 ++- src/core/etl/src/Flow/ETL/DataFrame.php | 83 --------- .../ETL/Function/ArrayKeysStyleConvert.php | 11 +- .../Flow/ETL/Function/ScalarFunctionChain.php | 3 +- .../etl/src/Flow/ETL/Function/StringStyle.php | 7 +- .../Function/StyleConverter/StringStyles.php | 22 --- .../Pipeline/Optimizer/LimitOptimization.php | 6 - src/core/etl/src/Flow/ETL/Row.php | 14 ++ src/core/etl/src/Flow/ETL/Row/Entries.php | 30 ++++ .../EntryNameStyleConverterTransformer.php | 54 ------ .../Rename/RenameCaseEntryStrategy.php | 32 ++-- .../Rename/RenameEntryStrategy.php | 8 +- .../Rename/RenameMapEntryStrategy.php | 27 +++ .../Rename/RenameReplaceEntryStrategy.php | 16 +- .../Transformer/RenameAllCaseTransformer.php | 65 ------- .../RenameEachEntryTransformer.php | 6 +- .../RenameStrReplaceAllEntriesTransformer.php | 49 ------ .../RenameAllCaseTransformerTest.php | 122 -------------- ...RenameStrReplaceAllCaseTransformerTest.php | 34 ---- .../Integration/DataFrame/RenameTest.php | 98 ++++++++++- .../Tests/Unit/Function/StringStyleTest.php | 46 +---- .../Flow/ETL/Tests/Unit/Row/EntriesTest.php | 70 ++++++++ .../etl/tests/Flow/ETL/Tests/Unit/RowTest.php | 43 +++++ ...EntryNameStyleConverterTransformerTest.php | 29 ---- .../Rename/RenameMapEntryStrategyTest.php | 63 +++++++ web/landing/assets/wasm/tools/flow.phar | Bin 3121516 -> 3119952 bytes web/landing/bin/migrate-examples.php | 159 ------------------ .../topics/data_frame/columns/rename/code.php | 8 +- .../data_frame/columns/rename/description.md | 2 +- .../data_frame/columns/rename_map/_meta.yaml | 2 + .../data_frame/columns/rename_map/code.php | 21 +++ .../columns/rename_map/description.md | 1 + .../columns/rename_map/documentation.md | 1 + .../columns/rename_replace/_meta.yaml | 2 + .../columns/rename_replace/code.php | 17 ++ .../columns/rename_replace/description.md | 1 + .../columns/rename_replace/documentation.md | 1 + .../columns/rename_style/_meta.yaml | 2 + .../data_frame/columns/rename_style/code.php | 18 ++ .../columns/rename_style/description.md | 1 + .../columns/rename_style/documentation.md | 1 + web/landing/resources/api.json | 2 +- web/landing/resources/dsl.json | 2 +- 43 files changed, 474 insertions(+), 725 deletions(-) delete mode 100644 src/core/etl/src/Flow/ETL/Function/StyleConverter/StringStyles.php delete mode 100644 src/core/etl/src/Flow/ETL/Transformer/EntryNameStyleConverterTransformer.php create mode 100644 src/core/etl/src/Flow/ETL/Transformer/Rename/RenameMapEntryStrategy.php delete mode 100644 src/core/etl/src/Flow/ETL/Transformer/RenameAllCaseTransformer.php delete mode 100644 src/core/etl/src/Flow/ETL/Transformer/RenameStrReplaceAllEntriesTransformer.php delete mode 100644 src/core/etl/tests/Flow/ETL/Tests/Integration/DataFrame/RenameAllCaseTransformerTest.php delete mode 100644 src/core/etl/tests/Flow/ETL/Tests/Integration/DataFrame/RenameStrReplaceAllCaseTransformerTest.php delete mode 100644 src/core/etl/tests/Flow/ETL/Tests/Unit/Transformer/EntryNameStyleConverterTransformerTest.php create mode 100644 src/core/etl/tests/Flow/ETL/Tests/Unit/Transformer/Rename/RenameMapEntryStrategyTest.php delete mode 100755 web/landing/bin/migrate-examples.php create mode 100644 web/landing/content/examples/topics/data_frame/columns/rename_map/_meta.yaml create mode 100644 web/landing/content/examples/topics/data_frame/columns/rename_map/code.php create mode 100644 web/landing/content/examples/topics/data_frame/columns/rename_map/description.md create mode 100644 web/landing/content/examples/topics/data_frame/columns/rename_map/documentation.md create mode 100644 web/landing/content/examples/topics/data_frame/columns/rename_replace/_meta.yaml create mode 100644 web/landing/content/examples/topics/data_frame/columns/rename_replace/code.php create mode 100644 web/landing/content/examples/topics/data_frame/columns/rename_replace/description.md create mode 100644 web/landing/content/examples/topics/data_frame/columns/rename_replace/documentation.md create mode 100644 web/landing/content/examples/topics/data_frame/columns/rename_style/_meta.yaml create mode 100644 web/landing/content/examples/topics/data_frame/columns/rename_style/code.php create mode 100644 web/landing/content/examples/topics/data_frame/columns/rename_style/description.md create mode 100644 web/landing/content/examples/topics/data_frame/columns/rename_style/documentation.md diff --git a/src/core/etl/src/Flow/ETL/DSL/functions.php b/src/core/etl/src/Flow/ETL/DSL/functions.php index 927412bc5e..9d48aaa03d 100644 --- a/src/core/etl/src/Flow/ETL/DSL/functions.php +++ b/src/core/etl/src/Flow/ETL/DSL/functions.php @@ -144,7 +144,6 @@ Sprintf, StringAggregate, StructureFunctions, - StyleConverter\StringStyles as OldStringStyles, Sum, ToDate, ToDateTime, @@ -210,7 +209,7 @@ use Flow\ETL\Transformation\AddRowIndex\StartFrom; use Flow\ETL\Transformation\{AddRowIndex, BatchSize, Drop, Limit, MaskColumns, Select}; use Flow\ETL\Transformer\OrderEntries\{CombinedComparator, Comparator, NameComparator, Order, TypeComparator, TypePriorities}; -use Flow\ETL\Transformer\Rename\{RenameCaseEntryStrategy, RenameReplaceEntryStrategy}; +use Flow\ETL\Transformer\Rename\{RenameCaseEntryStrategy, RenameMapEntryStrategy, RenameReplaceEntryStrategy}; use Flow\Filesystem\{Filesystem, Local\NativeLocalFilesystem, Partition, Partitions, Path}; use Flow\Filesystem\Stream\Mode; use Flow\Filesystem\Telemetry\FilesystemTelemetryOptions; @@ -497,7 +496,7 @@ function to_branch(ScalarFunction $condition, Loader $loader) : BranchingLoader } #[DocumentationDSL(module: Module::CORE, type: DSLType::TRANSFORMER)] -function rename_style(OldStringStyles|StringStyles $style) : RenameCaseEntryStrategy +function rename_style(StringStyles $style) : RenameCaseEntryStrategy { return new RenameCaseEntryStrategy($style); } @@ -512,6 +511,15 @@ function rename_replace(string|array $search, string|array $replace) : RenameRep return new RenameReplaceEntryStrategy($search, $replace); } +/** + * @param array $renames Map of old_name => new_name + */ +#[DocumentationDSL(module: Module::CORE, type: DSLType::TRANSFORMER)] +function rename_map(array $renames) : RenameMapEntryStrategy +{ + return new RenameMapEntryStrategy($renames); +} + /** * @return Entry */ @@ -1297,12 +1305,8 @@ function array_key_rename(ScalarFunction $ref, ScalarFunction|string $path, Scal } #[DocumentationDSL(module: Module::CORE, type: DSLType::SCALAR_FUNCTION)] -function array_keys_style_convert(ScalarFunction $ref, OldStringStyles|StringStyles|string $style = StringStyles::SNAKE) : ArrayKeysStyleConvert +function array_keys_style_convert(ScalarFunction $ref, StringStyles|string $style = StringStyles::SNAKE) : ArrayKeysStyleConvert { - if ($style instanceof OldStringStyles) { - $style = StringStyles::fromString($style->value); - } - return new ArrayKeysStyleConvert($ref, $style instanceof StringStyles ? $style : StringStyles::fromString($style)); } diff --git a/src/core/etl/src/Flow/ETL/DataFrame.php b/src/core/etl/src/Flow/ETL/DataFrame.php index 5a7fa7b76d..fc2b436995 100644 --- a/src/core/etl/src/Flow/ETL/DataFrame.php +++ b/src/core/etl/src/Flow/ETL/DataFrame.php @@ -15,7 +15,6 @@ use Flow\ETL\Function\{AggregatingFunction, ExecutionMode, ScalarFunction, - StyleConverter\StringStyles as OldStringStyles, WindowFunction}; use Flow\ETL\Join\{Expression, Join}; use Flow\ETL\Loader\SchemaValidationLoader; @@ -35,7 +34,6 @@ use Flow\ETL\Row\{EntryReference, Formatter\ASCIISchemaFormatter, Reference, References}; use Flow\ETL\Schema\{Definition, SchemaFormatter}; use Flow\ETL\Schema\Validator\StrictValidator; -use Flow\ETL\String\StringStyles; use Flow\ETL\Transformer\{AutoCastTransformer, CallbackRowTransformer, CrossJoinRowsTransformer, @@ -50,9 +48,7 @@ OrderEntries\TypeComparator, RenameEachEntryTransformer, RenameEntryTransformer, - Rename\RenameCaseEntryStrategy, Rename\RenameEntryStrategy, - Rename\RenameReplaceEntryStrategy, ScalarFunctionFilterTransformer, ScalarFunctionTransformer, SelectEntriesTransformer, @@ -724,85 +720,6 @@ public function rename(string $from, string $to) : self return $this; } - /** - * @lazy - * Iterate over all entry names and replace the given search string with replace string. - * - * @deprecated use DataFrame::renameEach() with a RenameReplaceStrategy - */ - public function renameAll(string $search, string $replace) : self - { - $this->renameEach(new RenameReplaceEntryStrategy($search, $replace)); - - return $this; - } - - /** - * @lazy - * - * @deprecated use DataFrame::renameEach() with a selected StringStyles - */ - public function renameAllLowerCase() : self - { - $this->renameEach(new RenameCaseEntryStrategy(StringStyles::LOWER)); - - return $this; - } - - /** - * @lazy - * Rename all entries to a given style. - * Please look into \Flow\ETL\Function\StyleConverter\StringStyles class for all available styles. - * - * @deprecated use DataFrame::renameEach() with a selected Style - */ - public function renameAllStyle(OldStringStyles|StringStyles|string $style) : self - { - if ($style instanceof OldStringStyles) { - $style = StringStyles::fromString($style->value); - } - - $this->renameEach(new RenameCaseEntryStrategy(\is_string($style) ? StringStyles::fromString($style) : $style)); - - return $this; - } - - /** - * @lazy - * - * @deprecated use DataFrame::renameEach() with a selected Style - */ - public function renameAllUpperCase() : self - { - $this->renameEach(new RenameCaseEntryStrategy(StringStyles::UPPER)); - - return $this; - } - - /** - * @lazy - * - * @deprecated use DataFrame::renameEach() with a selected Style - */ - public function renameAllUpperCaseFirst() : self - { - $this->renameEach(new RenameCaseEntryStrategy(StringStyles::UCFIRST)); - - return $this; - } - - /** - * @lazy - * - * @deprecated use DataFrame::renameEach() with a selected Style - */ - public function renameAllUpperCaseWord() : self - { - $this->renameEach(new RenameCaseEntryStrategy(StringStyles::UCWORDS)); - - return $this; - } - public function renameEach(RenameEntryStrategy ...$strategies) : self { $this->pipeline->add(new RenameEachEntryTransformer(...$strategies)); diff --git a/src/core/etl/src/Flow/ETL/Function/ArrayKeysStyleConvert.php b/src/core/etl/src/Flow/ETL/Function/ArrayKeysStyleConvert.php index cead5c5923..e7a65f6634 100644 --- a/src/core/etl/src/Flow/ETL/Function/ArrayKeysStyleConvert.php +++ b/src/core/etl/src/Flow/ETL/Function/ArrayKeysStyleConvert.php @@ -6,22 +6,15 @@ use Flow\ETL\Exception\InvalidArgumentException; use Flow\ETL\{FlowContext, Row}; -use Flow\ETL\Function\StyleConverter\{ArrayKeyConverter, StringStyles as OldStringStyles}; +use Flow\ETL\Function\StyleConverter\ArrayKeyConverter; use Flow\ETL\String\StringStyles; final class ArrayKeysStyleConvert extends ScalarFunctionChain { - private StringStyles $style; - public function __construct( private readonly ScalarFunction $ref, - OldStringStyles|StringStyles $style, + private readonly StringStyles $style, ) { - if ($style instanceof OldStringStyles) { - $this->style = StringStyles::fromString($style->value); - } else { - $this->style = $style; - } } public function eval(Row $row, FlowContext $context) : mixed diff --git a/src/core/etl/src/Flow/ETL/Function/ScalarFunctionChain.php b/src/core/etl/src/Flow/ETL/Function/ScalarFunctionChain.php index d88478afde..4fbd1b073b 100644 --- a/src/core/etl/src/Flow/ETL/Function/ScalarFunctionChain.php +++ b/src/core/etl/src/Flow/ETL/Function/ScalarFunctionChain.php @@ -11,7 +11,6 @@ use Flow\ETL\Function\ArrayExpand\ArrayExpand; use Flow\ETL\Function\ArraySort\Sort; use Flow\ETL\Function\Between\Boundary; -use Flow\ETL\Function\StyleConverter\StringStyles as OldStringStyles; use Flow\ETL\Hash\{Algorithm, NativePHPHash}; use Flow\ETL\String\StringStyles; use Flow\Types\Type; @@ -676,7 +675,7 @@ public function stringNormalize(ScalarFunction|int $form = \Normalizer::NFC) : S * Covert string to a style from enum list, passed in parameter. * Can be string "upper" or StringStyles::UPPER for Upper (example). */ - public function stringStyle(ScalarFunction|string|OldStringStyles|StringStyles $style) : StringStyle + public function stringStyle(ScalarFunction|string|StringStyles $style) : StringStyle { return new StringStyle($this, $style); } diff --git a/src/core/etl/src/Flow/ETL/Function/StringStyle.php b/src/core/etl/src/Flow/ETL/Function/StringStyle.php index 4ad4f45cbd..9de4adeaed 100644 --- a/src/core/etl/src/Flow/ETL/Function/StringStyle.php +++ b/src/core/etl/src/Flow/ETL/Function/StringStyle.php @@ -7,21 +7,20 @@ use function Flow\Types\DSL\{type_enum, type_string}; use Flow\ETL\Exception\InvalidArgumentException; use Flow\ETL\{FlowContext, Row}; -use Flow\ETL\Function\StyleConverter\StringStyles as OldStringStyles; use Flow\ETL\String\StringStyles; final class StringStyle extends ScalarFunctionChain { public function __construct( private readonly ScalarFunction|string $string, - private readonly ScalarFunction|string|OldStringStyles|StringStyles $style, + private readonly ScalarFunction|string|StringStyles $style, ) { } public function eval(Row $row, FlowContext $context) : ?string { $string = (new Parameter($this->string))->asString($row, $context); - $style = (new Parameter($this->style))->as($row, $context, type_string(), type_enum(StringStyles::class), type_enum(OldStringStyles::class)); + $style = (new Parameter($this->style))->as($row, $context, type_string(), type_enum(StringStyles::class)); if ($string === null) { return $context->functions()->invalidResult(new InvalidArgumentException('StringStyle function requires non-null value')); @@ -33,8 +32,6 @@ public function eval(Row $row, FlowContext $context) : ?string if (is_string($style)) { $style = StringStyles::fromString($style); - } elseif ($style instanceof OldStringStyles) { - $style = StringStyles::fromString($style->value); } if (!$style instanceof StringStyles) { diff --git a/src/core/etl/src/Flow/ETL/Function/StyleConverter/StringStyles.php b/src/core/etl/src/Flow/ETL/Function/StyleConverter/StringStyles.php deleted file mode 100644 index ebb6a18fcc..0000000000 --- a/src/core/etl/src/Flow/ETL/Function/StyleConverter/StringStyles.php +++ /dev/null @@ -1,22 +0,0 @@ -entries->rename($currentName, $newName)); } + /** + * Rename multiple entries in a single pass. + * + * @param array $renames Map of old_name => new_name + */ + public function renameMany(array $renames) : self + { + if ($renames === []) { + return $this; + } + + return new self($this->entries->renameMany($renames)); + } + /** * @return Schema */ diff --git a/src/core/etl/src/Flow/ETL/Row/Entries.php b/src/core/etl/src/Flow/ETL/Row/Entries.php index 91d1eb5e3b..0023259c40 100644 --- a/src/core/etl/src/Flow/ETL/Row/Entries.php +++ b/src/core/etl/src/Flow/ETL/Row/Entries.php @@ -330,6 +330,36 @@ public function rename(string|Reference $current, string|Reference $new) : self return self::recreate($entries); } + /** + * Rename multiple entries in a single pass. + * + * @param array $renames Map of old_name => new_name + */ + public function renameMany(array $renames) : self + { + if ($renames === []) { + return $this; + } + + $entries = $this->entries; + + foreach ($renames as $from => $to) { + if ($from === $to) { + continue; + } + + if (!\array_key_exists($from, $entries)) { + throw InvalidLogicException::because(\sprintf('Entry "%s" does not exist', $from)); + } + + $entry = $entries[$from]; + unset($entries[$from]); + $entries[$to] = $entry->rename($to); + } + + return self::recreate($entries); + } + /** * @param Entry ...$entries */ diff --git a/src/core/etl/src/Flow/ETL/Transformer/EntryNameStyleConverterTransformer.php b/src/core/etl/src/Flow/ETL/Transformer/EntryNameStyleConverterTransformer.php deleted file mode 100644 index 665d76cb86..0000000000 --- a/src/core/etl/src/Flow/ETL/Transformer/EntryNameStyleConverterTransformer.php +++ /dev/null @@ -1,54 +0,0 @@ -style = StringStyles::fromString($style->value); - } else { - $this->style = $style; - } - } - - public function transform(Rows $rows, FlowContext $context) : Rows - { - $context->telemetry()->transformationStarted($this); - - try { - $rowTransformer = function (Row $row) : Row { - $valueMap = fn (Entry $entry) : Entry => $entry->rename($this->style->convert($entry->name())); - - return $row->map($valueMap); - }; - - $result = $rows->map($rowTransformer); - - $context->telemetry()->transformationCompleted($this, [ - TelemetryAttributes::ATTR_TRANSFORMATION_INPUT_ROWS => $rows->count(), - TelemetryAttributes::ATTR_TRANSFORMATION_OUTPUT_ROWS => $result->count(), - ]); - - return $result; - } catch (\Throwable $e) { - $context->telemetry()->transformationFailed($this, $e); - - throw $e; - } - } -} diff --git a/src/core/etl/src/Flow/ETL/Transformer/Rename/RenameCaseEntryStrategy.php b/src/core/etl/src/Flow/ETL/Transformer/Rename/RenameCaseEntryStrategy.php index 22642f7227..6840a9f4c9 100644 --- a/src/core/etl/src/Flow/ETL/Transformer/Rename/RenameCaseEntryStrategy.php +++ b/src/core/etl/src/Flow/ETL/Transformer/Rename/RenameCaseEntryStrategy.php @@ -4,28 +4,28 @@ namespace Flow\ETL\Transformer\Rename; -use Flow\ETL\{FlowContext, - Function\StyleConverter\StringStyles as OldStringStyles, - Row, - Row\Entry, - String\StringStyles}; +use Flow\ETL\Row; +use Flow\ETL\String\StringStyles; -final class RenameCaseEntryStrategy implements RenameEntryStrategy +final readonly class RenameCaseEntryStrategy implements RenameEntryStrategy { - private StringStyles $style; - public function __construct( - OldStringStyles|StringStyles $style, + private StringStyles $style, ) { - if ($style instanceof OldStringStyles) { - $this->style = StringStyles::fromString($style->value); - } else { - $this->style = $style; - } } - public function rename(Row $row, Entry $entry, FlowContext $context) : Row + public function rename(Row $row) : Row { - return $row->rename($entry->name(), $this->style->convert($entry->name())); + $renames = []; + + foreach ($row->entries()->all() as $entry) { + $newName = $this->style->convert($entry->name()); + + if ($newName !== $entry->name()) { + $renames[$entry->name()] = $newName; + } + } + + return $renames === [] ? $row : $row->renameMany($renames); } } diff --git a/src/core/etl/src/Flow/ETL/Transformer/Rename/RenameEntryStrategy.php b/src/core/etl/src/Flow/ETL/Transformer/Rename/RenameEntryStrategy.php index 380c3b42ce..905b84f57f 100644 --- a/src/core/etl/src/Flow/ETL/Transformer/Rename/RenameEntryStrategy.php +++ b/src/core/etl/src/Flow/ETL/Transformer/Rename/RenameEntryStrategy.php @@ -4,13 +4,9 @@ namespace Flow\ETL\Transformer\Rename; -use Flow\ETL\{FlowContext, Row}; -use Flow\ETL\Row\Entry; +use Flow\ETL\Row; interface RenameEntryStrategy { - /** - * @param Entry $entry - */ - public function rename(Row $row, Entry $entry, FlowContext $context) : Row; + public function rename(Row $row) : Row; } diff --git a/src/core/etl/src/Flow/ETL/Transformer/Rename/RenameMapEntryStrategy.php b/src/core/etl/src/Flow/ETL/Transformer/Rename/RenameMapEntryStrategy.php new file mode 100644 index 0000000000..cba2c5440d --- /dev/null +++ b/src/core/etl/src/Flow/ETL/Transformer/Rename/RenameMapEntryStrategy.php @@ -0,0 +1,27 @@ + $renames Map of old_name => new_name + */ + public function __construct(private array $renames) + { + } + + public function rename(Row $row) : Row + { + $rowRenames = \array_intersect_key( + $this->renames, + \array_flip(\array_keys($row->entries()->toArray())) + ); + + return $rowRenames === [] ? $row : $row->renameMany($rowRenames); + } +} diff --git a/src/core/etl/src/Flow/ETL/Transformer/Rename/RenameReplaceEntryStrategy.php b/src/core/etl/src/Flow/ETL/Transformer/Rename/RenameReplaceEntryStrategy.php index 123cff4891..811ff0c917 100644 --- a/src/core/etl/src/Flow/ETL/Transformer/Rename/RenameReplaceEntryStrategy.php +++ b/src/core/etl/src/Flow/ETL/Transformer/Rename/RenameReplaceEntryStrategy.php @@ -4,7 +4,7 @@ namespace Flow\ETL\Transformer\Rename; -use Flow\ETL\{FlowContext, Row, Row\Entry}; +use Flow\ETL\Row; final readonly class RenameReplaceEntryStrategy implements RenameEntryStrategy { @@ -18,8 +18,18 @@ public function __construct( ) { } - public function rename(Row $row, Entry $entry, FlowContext $context) : Row + public function rename(Row $row) : Row { - return $row->rename($entry->name(), \str_replace($this->search, $this->replace, $entry->name())); + $renames = []; + + foreach ($row->entries()->all() as $entry) { + $newName = \str_replace($this->search, $this->replace, $entry->name()); + + if ($newName !== $entry->name()) { + $renames[$entry->name()] = $newName; + } + } + + return $renames === [] ? $row : $row->renameMany($renames); } } diff --git a/src/core/etl/src/Flow/ETL/Transformer/RenameAllCaseTransformer.php b/src/core/etl/src/Flow/ETL/Transformer/RenameAllCaseTransformer.php deleted file mode 100644 index afe595fd40..0000000000 --- a/src/core/etl/src/Flow/ETL/Transformer/RenameAllCaseTransformer.php +++ /dev/null @@ -1,65 +0,0 @@ -transformer = new RenameCaseEntryStrategy(StringStyles::UPPER); - } - - if ($lower) { - $this->transformer = new RenameCaseEntryStrategy(StringStyles::LOWER); - } - - if ($ucfirst) { - $this->transformer = new RenameCaseEntryStrategy(StringStyles::UCFIRST); - } - - if ($ucwords) { - $this->transformer = new RenameCaseEntryStrategy(StringStyles::UCWORDS); - } - } - - public function transform(Rows $rows, FlowContext $context) : Rows - { - $context->telemetry()->transformationStarted($this); - - try { - $result = $rows->map(function (Row $row) use ($context) : Row { - foreach ($row->entries()->all() as $entry) { - $row = $this->transformer->rename($row, $entry, $context); - } - - return $row; - }); - - $context->telemetry()->transformationCompleted($this, [ - TelemetryAttributes::ATTR_TRANSFORMATION_INPUT_ROWS => $rows->count(), - TelemetryAttributes::ATTR_TRANSFORMATION_OUTPUT_ROWS => $result->count(), - ]); - - return $result; - } catch (\Throwable $e) { - $context->telemetry()->transformationFailed($this, $e); - - throw $e; - } - } -} diff --git a/src/core/etl/src/Flow/ETL/Transformer/RenameEachEntryTransformer.php b/src/core/etl/src/Flow/ETL/Transformer/RenameEachEntryTransformer.php index 3fd27a5ab1..f3b451cf04 100644 --- a/src/core/etl/src/Flow/ETL/Transformer/RenameEachEntryTransformer.php +++ b/src/core/etl/src/Flow/ETL/Transformer/RenameEachEntryTransformer.php @@ -33,11 +33,9 @@ public function transform(Rows $rows, FlowContext $context) : Rows $context->telemetry()->transformationStarted($this); try { - $result = $rows->map(function (Row $row) use ($context) : Row { + $result = $rows->map(function (Row $row) : Row { foreach ($this->strategies as $strategy) { - foreach ($row->entries()->all() as $entry) { - $row = $strategy->rename($row, $entry, $context); - } + $row = $strategy->rename($row); } return $row; diff --git a/src/core/etl/src/Flow/ETL/Transformer/RenameStrReplaceAllEntriesTransformer.php b/src/core/etl/src/Flow/ETL/Transformer/RenameStrReplaceAllEntriesTransformer.php deleted file mode 100644 index 3364c6ee49..0000000000 --- a/src/core/etl/src/Flow/ETL/Transformer/RenameStrReplaceAllEntriesTransformer.php +++ /dev/null @@ -1,49 +0,0 @@ -transformer = new RenameReplaceEntryStrategy($this->search, $this->replace); - } - - public function transform(Rows $rows, FlowContext $context) : Rows - { - $context->telemetry()->transformationStarted($this); - - try { - $result = $rows->map(function (Row $row) use ($context) : Row { - foreach ($row->entries()->all() as $entry) { - $row = $this->transformer->rename($row, $entry, $context); - } - - return $row; - }); - - $context->telemetry()->transformationCompleted($this, [ - TelemetryAttributes::ATTR_TRANSFORMATION_INPUT_ROWS => $rows->count(), - TelemetryAttributes::ATTR_TRANSFORMATION_OUTPUT_ROWS => $result->count(), - ]); - - return $result; - } catch (\Throwable $e) { - $context->telemetry()->transformationFailed($this, $e); - - throw $e; - } - } -} diff --git a/src/core/etl/tests/Flow/ETL/Tests/Integration/DataFrame/RenameAllCaseTransformerTest.php b/src/core/etl/tests/Flow/ETL/Tests/Integration/DataFrame/RenameAllCaseTransformerTest.php deleted file mode 100644 index 9170ea70db..0000000000 --- a/src/core/etl/tests/Flow/ETL/Tests/Integration/DataFrame/RenameAllCaseTransformerTest.php +++ /dev/null @@ -1,122 +0,0 @@ -read(from_rows($rows)) - ->transform(new RenameAllCaseTransformer(lower: true)) - ->getEachAsArray(); - - self::assertEquals( - [ - ['id' => 1, 'name' => 'name', 'active' => true], - ['id' => 2, 'name' => 'name', 'active' => false], - ], - \iterator_to_array($ds) - ); - } - - public function test_rename_all_lower_case_i18n() : void - { - $rows = rows(row(int_entry('ILOŚĆ PRZEDMIOTÓW', 0)), row(int_entry('ILOŚĆ PRZEDMIOTÓW', 10))); - - $ds = df() - ->read(from_rows($rows)) - ->transform(new RenameAllCaseTransformer(lower: true)) - ->getEachAsArray(); - - self::assertEquals( - [ - ['ilość przedmiotów' => 0], - ['ilość przedmiotów' => 10], - ], - \iterator_to_array($ds) - ); - } - - public function test_rename_all_upper_case() : void - { - $rows = rows(row(int_entry('id', 1), str_entry('name', 'name'), bool_entry('active', true)), row(int_entry('id', 2), str_entry('name', 'name'), bool_entry('active', false))); - - $ds = df() - ->read(from_rows($rows)) - ->transform(new RenameAllCaseTransformer(upper: true)) - ->getEachAsArray(); - - self::assertEquals( - [ - ['ID' => 1, 'NAME' => 'name', 'ACTIVE' => true], - ['ID' => 2, 'NAME' => 'name', 'ACTIVE' => false], - ], - \iterator_to_array($ds) - ); - } - - public function test_rename_all_upper_case_first() : void - { - $rows = rows(row(int_entry('id', 1), str_entry('name', 'name'), bool_entry('active', true)), row(int_entry('id', 2), str_entry('name', 'name'), bool_entry('active', false))); - - $ds = df() - ->read(from_rows($rows)) - ->transform(new RenameAllCaseTransformer(ucfirst: true)) - ->getEachAsArray(); - - self::assertEquals( - [ - ['Id' => 1, 'Name' => 'name', 'Active' => true], - ['Id' => 2, 'Name' => 'name', 'Active' => false], - ], - \iterator_to_array($ds) - ); - } - - public function test_rename_all_upper_case_word() : void - { - $rows = rows(row(int_entry('id', 1), str_entry('name', 'name'), bool_entry('active', true)), row(int_entry('id', 2), str_entry('name', 'name'), bool_entry('active', false))); - - $ds = df() - ->read(from_rows($rows)) - ->transform(new RenameAllCaseTransformer(ucwords: true)) - ->getEachAsArray(); - - self::assertEquals( - [ - ['Id' => 1, 'Name' => 'name', 'Active' => true], - ['Id' => 2, 'Name' => 'name', 'Active' => false], - ], - \iterator_to_array($ds) - ); - } - - public function test_rename_all_upper_case_word_i18n() : void - { - $rows = rows(row(int_entry('ósmy', 8)), row(int_entry('dziewiąty', 9))); - - $ds = df() - ->read(from_rows($rows)) - ->transform(new RenameAllCaseTransformer(ucwords: true)) - ->getEachAsArray(); - - self::assertEquals( - [ - ['Ósmy' => 8], - ['Dziewiąty' => 9], - ], - \iterator_to_array($ds) - ); - } -} diff --git a/src/core/etl/tests/Flow/ETL/Tests/Integration/DataFrame/RenameStrReplaceAllCaseTransformerTest.php b/src/core/etl/tests/Flow/ETL/Tests/Integration/DataFrame/RenameStrReplaceAllCaseTransformerTest.php deleted file mode 100644 index 560c00d5fc..0000000000 --- a/src/core/etl/tests/Flow/ETL/Tests/Integration/DataFrame/RenameStrReplaceAllCaseTransformerTest.php +++ /dev/null @@ -1,34 +0,0 @@ - 1, 'name' => 'name', 'active' => true])), row(json_entry('array', ['id' => 2, 'name' => 'name', 'active' => false]))); - - $ds = df() - ->read(from_rows($rows)) - ->withEntry('row', ref('array')->unpack()) - ->transform(new RenameStrReplaceAllEntriesTransformer('row.', '')) - ->drop('array') - ->getEachAsArray(); - - self::assertEquals( - [ - ['id' => 1, 'name' => 'name', 'active' => true], - ['id' => 2, 'name' => 'name', 'active' => false], - ], - \iterator_to_array($ds) - ); - } -} diff --git a/src/core/etl/tests/Flow/ETL/Tests/Integration/DataFrame/RenameTest.php b/src/core/etl/tests/Flow/ETL/Tests/Integration/DataFrame/RenameTest.php index 0b7bac5321..845f189589 100644 --- a/src/core/etl/tests/Flow/ETL/Tests/Integration/DataFrame/RenameTest.php +++ b/src/core/etl/tests/Flow/ETL/Tests/Integration/DataFrame/RenameTest.php @@ -4,7 +4,8 @@ namespace Flow\ETL\Tests\Integration\DataFrame; -use function Flow\ETL\DSL\{bool_entry, df, from_rows, int_entry, json_entry, ref, rename_replace, rename_style, row, rows, str_entry}; +use function Flow\ETL\DSL\{bool_entry, df, from_rows, int_entry, json_entry, lit, ref, rename_map, rename_replace, rename_style, row, rows, str_entry}; +use Flow\ETL\Schema\Metadata; use Flow\ETL\String\StringStyles; use Flow\ETL\Tests\FlowIntegrationTestCase; @@ -163,7 +164,7 @@ public function test_rename_all_to_snake_case() : void $ds = df() ->read(from_rows($rows)) - ->renameAllStyle(StringStyles::SNAKE) + ->renameEach(rename_style(StringStyles::SNAKE)) ->renameEach(rename_style(StringStyles::LOWER)) ->getEachAsArray(); @@ -265,6 +266,83 @@ public function test_rename_all_upper_case_word_i18n() : void ); } + public function test_rename_each_with_empty_map() : void + { + $rows = df() + ->read(from_rows( + rows(row(int_entry('id', 1), str_entry('name', 'foo'))) + )) + ->renameEach(rename_map([])) + ->fetch(); + + self::assertEquals( + rows(row(int_entry('id', 1), str_entry('name', 'foo'))), + $rows + ); + } + + public function test_rename_each_with_map_chained_with_other_operations() : void + { + $ds = df() + ->read(from_rows( + rows( + row(int_entry('user_id', 1), str_entry('user_name', 'John'), bool_entry('is_active', true)), + row(int_entry('user_id', 2), str_entry('user_name', 'Jane'), bool_entry('is_active', false)) + ) + )) + ->renameEach(rename_map(['user_id' => 'id', 'user_name' => 'name'])) + ->filter(ref('is_active')->equals(lit(true))) + ->drop('is_active') + ->getEachAsArray(); + + self::assertEquals( + [ + ['id' => 1, 'name' => 'John'], + ], + \iterator_to_array($ds) + ); + } + + public function test_rename_each_with_map_multiple_entries() : void + { + $rows = df() + ->read(from_rows( + rows( + row(int_entry('id', 1), str_entry('first_name', 'John'), str_entry('last_name', 'Doe')), + row(int_entry('id', 2), str_entry('first_name', 'Jane'), str_entry('last_name', 'Smith')) + ) + )) + ->renameEach(rename_map([ + 'first_name' => 'name', + 'last_name' => 'surname', + ])) + ->fetch(); + + self::assertEquals( + rows( + row(int_entry('id', 1), str_entry('name', 'John'), str_entry('surname', 'Doe')), + row(int_entry('id', 2), str_entry('name', 'Jane'), str_entry('surname', 'Smith')) + ), + $rows + ); + } + + public function test_rename_each_with_map_preserves_metadata() : void + { + $metadata = Metadata::fromArray(['description' => 'test metadata']); + + $rows = df() + ->read(from_rows( + rows(row(str_entry('old_name', 'value', $metadata))) + )) + ->renameEach(rename_map(['old_name' => 'new_name'])) + ->fetch(); + + self::assertTrue( + $rows->first()->get('new_name')->definition()->metadata()->isEqual($metadata) + ); + } + public function test_rename_each_with_multiple_strategies() : void { $rows = rows( @@ -291,4 +369,20 @@ public function test_rename_each_with_multiple_strategies() : void \iterator_to_array($ds) ); } + + public function test_rename_preserves_metadata() : void + { + $metadata = Metadata::fromArray(['description' => 'test metadata']); + + $rows = df() + ->read(from_rows( + rows(row(str_entry('old_name', 'value', $metadata))) + )) + ->rename('old_name', 'new_name') + ->fetch(); + + self::assertTrue( + $rows->first()->get('new_name')->definition()->metadata()->isEqual($metadata) + ); + } } diff --git a/src/core/etl/tests/Flow/ETL/Tests/Unit/Function/StringStyleTest.php b/src/core/etl/tests/Flow/ETL/Tests/Unit/Function/StringStyleTest.php index b1b43157b0..531f49e9e1 100644 --- a/src/core/etl/tests/Flow/ETL/Tests/Unit/Function/StringStyleTest.php +++ b/src/core/etl/tests/Flow/ETL/Tests/Unit/Function/StringStyleTest.php @@ -6,12 +6,10 @@ use function Flow\ETL\DSL\{flow_context, ref, str_entry}; use function Flow\ETL\DSL\row; -use Flow\ETL\Function\StyleConverter\StringStyles as OldStringStyles; use Flow\ETL\String\StringStyles; use Flow\ETL\Tests\FlowTestCase; -use PHPUnit\Framework\Attributes\{DataProvider, IgnoreDeprecations}; +use PHPUnit\Framework\Attributes\DataProvider; -#[IgnoreDeprecations] final class StringStyleTest extends FlowTestCase { /** @@ -19,65 +17,35 @@ final class StringStyleTest extends FlowTestCase */ public static function provideStringStyles() : iterable { - yield 'null new' => [ + yield 'null' => [ StringStyles::LOWER, null, null, ]; - yield 'null old' => [ - OldStringStyles::LOWER, - null, - null, - ]; - - yield 'camel new' => [ + yield 'camel' => [ StringStyles::CAMEL, 'Foo: Bar-baz.', 'fooBarBaz', ]; - yield 'camel old' => [ - OldStringStyles::CAMEL, - 'Foo: Bar-baz.', - 'fooBarBaz', - ]; - - yield 'snake new' => [ + yield 'snake' => [ StringStyles::SNAKE, 'Foo: Bar-baz.', 'foo_bar_baz', ]; - yield 'snake old' => [ - OldStringStyles::SNAKE, - 'Foo: Bar-baz.', - 'foo_bar_baz', - ]; - - yield 'title new' => [ + yield 'title' => [ StringStyles::TITLE, 'foo ijssel', 'Foo ijssel', ]; - yield 'title old' => [ - OldStringStyles::TITLE, - 'foo ijssel', - 'Foo ijssel', - ]; - - yield 'upper new' => [ + yield 'upper' => [ StringStyles::UPPER, 'foo ijssel', 'FOO IJSSEL', ]; - - yield 'upper old' => [ - OldStringStyles::UPPER, - 'foo ijssel', - 'FOO IJSSEL', - ]; } public function test_string_style_camel() : void @@ -118,7 +86,7 @@ public function test_string_style_lower() : void #[DataProvider('provideStringStyles')] public function test_string_styles( - OldStringStyles|StringStyles $style, + StringStyles $style, ?string $value, ?string $expected, ) : void { diff --git a/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/EntriesTest.php b/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/EntriesTest.php index 0d029ff886..a6a7e86049 100644 --- a/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/EntriesTest.php +++ b/src/core/etl/tests/Flow/ETL/Tests/Unit/Row/EntriesTest.php @@ -9,6 +9,7 @@ use Flow\ETL\Exception\{InvalidArgumentException, RuntimeException}; use Flow\ETL\Row\{Entries, Entry}; use Flow\ETL\Row\Entry\DateTimeEntry; +use Flow\ETL\Schema\Metadata; use Flow\ETL\Tests\Fixtures\Enum\BasicEnum; use Flow\ETL\Tests\FlowTestCase; @@ -338,6 +339,75 @@ public function test_rename() : void ); } + public function test_rename_many_entries() : void + { + $entries = new Entries( + string_entry('a', 'value_a'), + string_entry('b', 'value_b'), + string_entry('c', 'value_c') + ); + + $renamed = $entries->renameMany(['a' => 'x', 'b' => 'y']); + + self::assertEquals( + new Entries( + string_entry('x', 'value_a'), + string_entry('y', 'value_b'), + string_entry('c', 'value_c') + ), + $renamed + ); + } + + public function test_rename_many_entries_preserves_metadata() : void + { + $metadata = Metadata::fromArray(['description' => 'test', 'priority' => 1]); + $entries = new Entries( + string_entry('a', 'value_a', $metadata), + string_entry('b', 'value_b') + ); + + $renamed = $entries->renameMany(['a' => 'x']); + + self::assertTrue($renamed->get('x')->definition()->metadata()->isEqual($metadata)); + } + + public function test_rename_many_entries_throws_for_non_existing_entry() : void + { + $this->expectExceptionMessage('Entry "non_existing" does not exist'); + + $entries = new Entries(string_entry('a', 'value_a')); + + $entries->renameMany(['non_existing' => 'new_name']); + } + + public function test_rename_many_entries_with_empty_array_returns_same_instance() : void + { + $entries = new Entries(string_entry('name', 'value')); + + $renamed = $entries->renameMany([]); + + self::assertSame($entries, $renamed); + } + + public function test_rename_many_entries_with_same_name_skips_noop() : void + { + $entries = new Entries( + string_entry('a', 'value_a'), + string_entry('b', 'value_b') + ); + + $renamed = $entries->renameMany(['a' => 'a', 'b' => 'y']); + + self::assertEquals( + new Entries( + string_entry('a', 'value_a'), + string_entry('y', 'value_b') + ), + $renamed + ); + } + public function test_set_entry() : void { $entries = new Entries(string_entry('string-entry', 'just a string')); diff --git a/src/core/etl/tests/Flow/ETL/Tests/Unit/RowTest.php b/src/core/etl/tests/Flow/ETL/Tests/Unit/RowTest.php index 4c678e48d9..8a097ae0ba 100644 --- a/src/core/etl/tests/Flow/ETL/Tests/Unit/RowTest.php +++ b/src/core/etl/tests/Flow/ETL/Tests/Unit/RowTest.php @@ -8,6 +8,7 @@ use function Flow\Types\DSL\{type_integer, type_list, type_map, type_string, type_structure}; use Flow\ETL\Row; use Flow\ETL\Row\Entry\DateTimeEntry; +use Flow\ETL\Schema\Metadata; use Flow\ETL\Tests\FlowTestCase; use PHPUnit\Framework\Attributes\DataProvider; @@ -218,6 +219,48 @@ public function test_remove_non_existing_entry() : void ); } + public function test_rename_many_entries() : void + { + $row = row( + string_entry('a', 'value_a'), + string_entry('b', 'value_b'), + string_entry('c', 'value_c') + ); + + $renamed = $row->renameMany(['a' => 'x', 'b' => 'y']); + + self::assertEquals( + row( + string_entry('x', 'value_a'), + string_entry('y', 'value_b'), + string_entry('c', 'value_c') + ), + $renamed + ); + } + + public function test_rename_many_entries_preserves_metadata() : void + { + $metadata = Metadata::fromArray(['description' => 'test']); + $row = row( + string_entry('a', 'value_a', $metadata), + string_entry('b', 'value_b') + ); + + $renamed = $row->renameMany(['a' => 'x']); + + self::assertTrue($renamed->get('x')->definition()->metadata()->isEqual($metadata)); + } + + public function test_rename_many_entries_with_empty_array_returns_same_instance() : void + { + $row = row(string_entry('name', 'value')); + + $renamed = $row->renameMany([]); + + self::assertSame($row, $renamed); + } + public function test_renames_entry() : void { $row = row( diff --git a/src/core/etl/tests/Flow/ETL/Tests/Unit/Transformer/EntryNameStyleConverterTransformerTest.php b/src/core/etl/tests/Flow/ETL/Tests/Unit/Transformer/EntryNameStyleConverterTransformerTest.php deleted file mode 100644 index b5ac1add1d..0000000000 --- a/src/core/etl/tests/Flow/ETL/Tests/Unit/Transformer/EntryNameStyleConverterTransformerTest.php +++ /dev/null @@ -1,29 +0,0 @@ -transform(rows(row(string_entry('CamelCaseEntryName', 'test'), string_entry('otherCaseEntryName', 'test'))), flow_context(config())); - - self::assertSame( - [ - [ - 'camel_case_entry_name' => 'test', - 'other_case_entry_name' => 'test', - ], - ], - $rows->toArray() - ); - } -} diff --git a/src/core/etl/tests/Flow/ETL/Tests/Unit/Transformer/Rename/RenameMapEntryStrategyTest.php b/src/core/etl/tests/Flow/ETL/Tests/Unit/Transformer/Rename/RenameMapEntryStrategyTest.php new file mode 100644 index 0000000000..29eabd7cae --- /dev/null +++ b/src/core/etl/tests/Flow/ETL/Tests/Unit/Transformer/Rename/RenameMapEntryStrategyTest.php @@ -0,0 +1,63 @@ + 'new_a', + 'old_b' => 'new_b', + 'non_existent' => 'ignored', + ]); + + $result = $strategy->rename(row( + str_entry('old_a', 'value_a'), + str_entry('old_b', 'value_b'), + str_entry('other_column', 'value_c'), + )); + + $entryNames = \array_keys($result->entries()->toArray()); + \sort($entryNames); + self::assertSame(['new_a', 'new_b', 'other_column'], $entryNames); + } + + public function test_rename_returns_unchanged_row_when_no_matching_names() : void + { + $strategy = rename_map(['old_name' => 'new_name']); + $row = row(str_entry('different_column', 'value')); + + $result = $strategy->rename($row); + + self::assertSame($row, $result); + } + + public function test_rename_with_empty_renames() : void + { + $strategy = rename_map([]); + $row = row( + str_entry('column_a', 'a'), + int_entry('column_b', 1), + ); + + $result = $strategy->rename($row); + + self::assertSame($row, $result); + } + + public function test_rename_with_empty_row() : void + { + $strategy = rename_map(['old_name' => 'new_name']); + $row = row(); + + $result = $strategy->rename($row); + + self::assertSame($row, $result); + } +} diff --git a/web/landing/assets/wasm/tools/flow.phar b/web/landing/assets/wasm/tools/flow.phar index 92d52c021d6929e8dfb0a13aa211f8bd99a2f906..9f941bf7f6a2e61ca68422d53b7d1056280fd007 100755 GIT binary patch delta 164645 zcmZ_1cU+I}_c-ppZ|(I=rL7PmrEEfFrc&8kg^(sfAx>*+I=WtgW7qoCQRo6eB)EWc6a7ZyZD@dhCmReDf8R6cD;5oxD^+S(yl@@c(?qdQQ!l#;l2Q#_1=M!KF^J7* zxcHoBG*WziGa4p7BaBCg&nw2m1-5(;%KR4{(#x?Gn^>!bW|h^YCYAy++hnx(tZs^Q zt}sm$f18_)5*XY7L$~QMebq(Y-YQN;#(tTN698ucAZ2HyA zf&lCQfZmTb+)x))ZmZ^-X;hCYRmDI(7_bYPzd$X~bW_(?u@kdSRv9A(TfyLGzr&ej z=rb%3{T2&E?`(;LrU2mMA!D=406$n-2@G{%phKz6jsKOwU@IH3PKs56_$;4zlxBgY6B~ z=XNy(fT2Aa^#prF83%xW9lnx)eiQCoT@AI@S3MmZ1$3xGl=wXE&{urgI7W)kRL3wu z`Z*xT^!?_8tiZmq1i0}W*^(r z7ucHOtgpVWhN_sNSEJb9>3Y|)ozGW}l$WB>`7~`bYt${Hns0O;#ks3(F7C=7za>ycPz5wXXs9~w5 z)HD+G&Z~*?|5+1N8{>kGmjiCx=l37(75-{!Z9Uba7TR0qS_pWw7W!R-+W2=??P!6} zv<}*1S{+1OLZ1Pps&5bx`H}sJ+pSp-_cU=rFPW9pi(na-9 z@1^x7ioYkiq3;d`WO-`m4G14b_nPXejaZrwG83`YGablzWo+eCv)AkAOh> zzdF1QLY}{>@ibA-c%XSy2aHbn#s=!svpCSCfrXeE*Z`yM$p%Q0mnV{#<%#Zl2{68R z+_D-7tfxBKtBPQD2mJWzbq@ee#ET zs^(1wsgqjTh#%X-k6k`mdk40Q%`SNqkOdi=W@yP7r^OYlq0bwwoZ3ID=@OwZA$;Fc8vSPrcXH zNPXNMjqfI`u%t=eJQ}o62X;V`5;~yy7Ii@EBReJwY?gqn*A3(Sf+XKLR;o`YwEwV9 zsJ`>MGz!EO-2%}yw+132m!L^v!VTal)Z>Q9;`X6xN>CNmv4RFU|~J<)!$w9)L-39#X=_C5%Ik4DAj#1Vd?W$Ho}I&dSK-;w+D*e zpeHJF9RN+%y*meNJVe!EeAm-NU@Yy4z>|8R8h-UcuSx4IeqY=NDNXBxl>hF7GE44@ zzyIiqYZSm5f4a9_sTM2>QLptwvHa|ZK$H688bA9Z)wZCS9cM?+6jWaufK>k&fI!Iu zlY};gfE~2Ty1WkDm1DHAZ#yeNb_Q^Bbw5f9a@k5$5XPF!cDOuz6z9&%lOb-)$2GW%*$i>Zoumf#!ry z7vj=HAWMrPkXp@P`g<^XeGVXSeP*t&u4xgX#tf+?uyVt>X`d3z$$UGchCpOKbfFk~ z3S-Ti=4GhG2|d(5Lz|1imXV9ZXI|uD@i}DJa`E|RSi1OJG<=EpbRB{AwQU3{uU-`X zogFn(j5irMLwueXIbAF^3S>I$!Oh$3_Yz3MzT=y#yJIZWP4O0beLzG!Vdq6-xaEAT zpBdc|MHU(rpq`1TB5>V}L0j)1i!^?ST_Jv-AIHRJ?f6Xbc`{xVpFI&W}283oQMqFPMjkq?FTY< zJv#hKn4NQ?U6l$(5^04jy&Q|eN*T9O;IJQ`DdzG@W8;-GUofnOPH3i@C!wZos0QLleek-4Na z46BP_S%-R~{?;bkhH8GAM(sBhlStfDjMk3;<(cG0b46^)Ptz4B{ih+&fN5BG6->kZ zL+9xzx7_KY1wA`q*SCJSx<|WRXrhLunW&*tb=BoFF!XMpf#Ih1O#ECo6IomV%l_%N zVhvPNA!_U_XCaS_S;&FGY>Xg>0O)N{-?@}YYN|!E(VBkE#?tB}tY7Wk*3E+Wt8*L# zmbY`Tup2lR_XAv-w=}D&mtko+53vN!ix(44%tP9m&qpgcN}sJ3pn8riz|h%z;Y7i8 zXAta%+^|%x=ZyJAs%<*zc_}OuQc&%zI;CBR>b%%cU7GG7Cd9)8gF*hMMNr}cRWquI z0iJ|kwko}iPP)5ELzrfxZq7i39?w9h&jqM4TP`oG2nCxB)l6-^*hDXc9RI>1wDq9H z$VJ{_bn~w2T*2jIb%t1zmlnrnT9>E=V?xxNC2lCQB{Rh!FLKvB`4z1CEFY=9T3S^M zN|{rQcofcs&3~Hv0QJwNQ1x-9rx-J5v&830hW=fB**x+0u4Nc*n=VH`KLe{a3ToP2 zJ-MQ{T4RNc0BXGg^?h&!D!^+c3VP>CjA7luq1OEOdZzkhO^BKwW~64WsxBrTU4^{0 zUX6fH0DEzRN-2x~3Q>1u>8j3a>It|mYtWx>uR&@CuEjc#r)kBq{Vm~Oh0XQEqz@Z) z)Q(x`Xxjl``j31c6uIYyF6yN$H0Xy}$mrm8^TiS+>oA}tuU{zsHr#+qE!u#_quEIL zWg{B?aj=E4?i<}J?7es)I&c$JUz>3H*G;npx~YF52S%Gwdz*l;Uk#gvV$3V7<)&tA zGg3cnMosB&i4kh#$^2c*l(YW}bz=)cz1>0%vK2P~SGS@c_-w*_EFEDWA$Jk?H zYrzLr@4z@Z4IKFA*L~f~1IV>q7OM45ly%*mql6Gv@5FY(ZeVL^lI;;yGWJ$e_t==k z#PDLGt2O3{$-B_uyMYmZns3=$Z2S0XA-fS@#BSV2oaDY{q|6NAI;1gv{BCJ%EzE$aus)jE8skp#%f=;~sb}DA~X3x~D=A z2{}d%okmASBu0)&BsZl2Ylf{?e(PD25nAG9} zNZ&P>UF(kdJ5+J_iKgn1gQ(s~2a&k92hs9k525s?!i?(m`^92BBeuvQw2OOp- ze;CEm`Upqxxc$Z?@)) z*koV9(mfB^S|>(`3Q*S=rH}zQs{LoVSt|uK?-&}{(_`o`DF84**Q;h36?={&6&H`A z8Mi!vTHShLj8KwO4qE5@9PASO$U(U1lM!P4+DU|OlRH$z@pddZh$f4ud zxFLyA@o`*PbBvJ8bwGu|-KFuu^s=s)su{UDYV;|ztCUl?;+s>rVxQ9qVx`NcQ4`*0 z@b|4}P;RZk-i98$`3QSiT5Pd@Bjc%mV`er7Gq!L3yg;oEeXNXgc52VFW`f`~U_g1w zxT`|!tIwIJXV2oyyJyi~g3h5rPn|=FG&_&$CV)-*&C%h_SAP{II(CeTi-^(gR-a=c ziQ@gUaPRFegvoLAi5D;*&AEV8fOHYV_JoTV;=W(Rf`g~)f-Cb)MTaCc-&oDRWH03K z{t`MSFZOKb9){)t_G^2K(fgM%VGX!KW_ShB2V6zxI(2oFNIxS$1qJn7)nZL6HS3D4 zx;PKbcSjy3KCf$&g?R3A`fKK}#qFV+1XP&iJBoE0l|kmGIqJN-6_(jJ!n zGgAH{j3f7nsru*E|LmO3*G9Wlp^I28Kk%|v!}}U2G@VUKS!F28Q~9*hNK5b!|Mk~L;r_p#Md6;-+qrU4&=e)wTi)1HR5JxHSdWY zV6G~bYyfmztnv5KvVqjc7zmd?M%fuWL3f<=1Z7?Hgt#ummGTSmcb})Y;-06t;wM zAjw6G*50Los_NBem<5l*j3v`*ISY?l@WN1S^Bkqg8%HbrKInt&1Jv{v`s$wNn20Vs zN77rp7$KMuNO?R{yB<0?%g%r)rBwg9ec!A*k=9L5*6JIOl5cL zwdar{0#%>9G!x!a@-kkm^cNtU>0LCHNYYbJ{EM_!0yTWgKCq?S(iXfhP#e6$6M?{2 zDC48AQ1))G@$VI{QAdVv`io^oycr;t*#<#*RhsKE=54dTg7_qc=)lay6Xd43`UsZ2?G4 zKd)K`&civgRI@*#{r>=>XIyOoeg653SbxLhdX~d$ zEu1+l*UHx$87`0?nH ze`<&y7k)#cwthomY`-JRbH9uHwD<=`%ie(9YVZzMwcrDEgML^G{k;Bxj12gR4CMVp z=j01$mOgn5q;yqR{X%Q!q|{Gobh(Uh!%`&N08l@(NF6N*pIC~7TfmQ*Q?0*<^@>Vy z6UXuXQ(R-Y_;KKG{E_25er?Yr!OgYb$jzJINYQ{lNa3|VNSQOBwYk$|7gc7(4VSKz z>^Lt=4@-i7<|;`d#j$mggl5E*yY80&9Z6UkOVyD? zox;>L$gYjnqI5zA0gYkVj%P^3tvla%DvEE`wG0g7k zOG4f($UwpzI2DN6*v-#@^TsEbGiyW1T&(P7h$r7{g`tGCPcx{w+`O;c71528;K>FU zNtS}Vd{D3Hlz3pJLy31Hsd9=7oJ8h*az&%PK-A|Nm$6Cy9g zghYP;>Xmm(d)HwlisH!ft4Z~3!@5)Tn*~VtmU=F*;1%4A@0h$CNXhKer{RY<45fsjtO zZG2eQRsfh`CF!zi7Lus|YG5IWqe-^Hg7jcuDT(Tv#ahxrCt#tE7H&?=Z>iKdbEIUz zJgp>SG2O?CWVy$R7V8JVezV@j@rt=Ki>gZ6NvkS}vwc=nRT5#Hg<4B^U^x`X`*VCy zwm7h4&Kjvc%jzXnW(GE7|MoUS$UcCy8`qz2alKh;f60{HvXShB#G+tm&B}3`ATbN| zn6lP$Bx4q8D`7@I3}j_js`7xJ(fYH4wuJhEtu#z9;$=rtTV_YUNcQw)q&?~Bsy*3D zb3k@lfB0!uU@HZ&^d6E9Tj)R%S?xf?_68l=FS8siG7_@Y%Tclu1@dg5cH9ylwrCp2 z=x;|!3EDSl_JIJqp5RZsdy-+$529S&0sb)L@l(ktvW2TOb8JEEm*z@#BF$40Z5H<0QyL-^65>V1~TV1#f9Zs(y zIh<`nqM<#E7kTvVjN^B-Cv&?FO#6nJuDORR{=9{!hw?eKV za_F;1jU__?^rkV1zH1Y*oMTNW%++g3qUHCT+Ie|oaAy74v!-M@KbsOGE-;>5Z~Pk6 z`o3n8xzHiM4)S>5ldt^l3J>fSEF(nHW3`$~7Gi1d<}|-H2y=enl(xbT9RlK`;yNTH zh{j5DXG|?WfP;=(54Awsy=DU8WMB)@NkR*XLibvbVA`}KR<^(wLCR8CfnA;2w>*6@ zCkIK#lGor~Rd9{XK<+M|RFm=`n;8z|Uh$@|^}w5=fqyGf>F!pffRR9+;^H3f(-K8BlU`{(K)4bY~H1vUPUrm1>jJ<;H zckLxCYRzFR#L2+8Jht@gK(S>X3}xJGdYbE4i&wP|{6cSE4Hn@RnrX(8b_fEe;AK<8EY9cHJawGzS9i8JdM( z5%-;Li3~-?lqa$LwMGoVprJ>gNK!7;WGOH`nRHr}D)T%!z?jgu#j_I&fsMs(4NwJ0l zD5)e2Am(^o+)vZKJqoebKoVl>ffUQ9!a}ohoa!SYpjfWp~$MNT(MW^%624BL_MBBLQ$gd2&?DnX#|}vp zG*XjDq92kddQ<`(fAiQ$X=isISaEx@WFoxvSTdy%=Ly<6VgjN54!;PtoPd}(JIkJ! zSdY$>3|a0(qWIcG30sEMfvvm+I@TDX_^FY$2D76Y>>4=F>=C2VFhu=3i9*z`No3BI zVSK64Qtyi8N(z-Lj{v*9>D|#-%GRDtifcZZxL-M$1jlc|H|W&=ympgn!XQ~#u&60S zZ_*TUj#pF26+%--YSmd_<3BY~4ULH@7Mf<*4=H;;&no=4u^ z05Dy=GTEYBd$#T4yC=qqKk5fx-wBns6Q#NZpRgrw-c4yfEOttLu zeBwcW0mbUL1tg5w0O)(y@MndnA}Fe}km6^Xg%lq)FQnA;6Q&%=y|5V_NkE4UfFdwH zovd?mI{98vy4Hd+q=CXwcV&>s>=uy$R03>6D*F~;R%x{utmNS$LR7SfoN5s;dS8FW zP6XP#m}tvcOwmXIk)F@jalwLaoJ#D@QAy-uV0`l4loe(6*n$NtA-#kzAtX(Jk`*h{ z&hgeP^Q|jYVU9~FKQ~`W3N{3o4&&XWs5^Kyt-TVcjeck+9wV2B3X*-^+v3S_h^XDI4RA4r`^_0&Uz{GM?^0+l3bfcgq3S zt_4YUiIFY!-a?GxP4Unysi~MXCrfH2zFf$Xf&^>!u+IBMA4al*EUB4Iz! zc){q9M;Albs2s_GrT!&Zv8;8HIR0ii>!{Q2xSp(M7&M#@eqO(oOSc@_P`%==&+^w( zS9%oCJLvEG`&q$G*v0}jL*}-DHm&^XdE2}tx@_GmErQeyRJShMAaxX^KixpC6}(aE zDtI^uRQeai+p&@}IL(ed-AMlNZ6h%n4M1BT++HdU)|m5Y*^nh{lWf_{P1JE~3ILmT zyLDj^A)vq9ZBkA4d=u&C_a>>ISiJvVQdjY1*I$x2+G8f0=}Yuxskb19-x&2!i_Otm zGB!&!nDG{JN2e_Wow7yhC7}5eKnae`Z7M)JZY5~Xt(2290H`!6uK_;k!HDPbpwU!p!*6pW=qRfk^l0r>YyFEZQDzuW-6rv)EnK zVXy;Ae4jofq2=#}qnC@j$SewXk+b{lrj)jQH%adsSaIF3|1Pt%EU2V~jim0DOv;`i zszpu}zDMdM*DhG5d+Fx%;JVf~F_?|No+r71JDmy0Py83VX2! zC}bBLAoJi!;84JdF3itTaYg8ugHi*5cg;b`M|>$fD0L8DTn|x@tOj&#OqqKFa)%@H zye{jqg@+|K_V5r{RxRkARO$P#KQ)62WIYa0p9LSLF5ybhmnNWA-OPNsCLd}e@LxMD zH5PoA#n*M_iUTV=0nP3PM- zCONd|h#aY>_$4<->Lk7xo+SI>Zu9S>qBHE&NvRFnev(?ahfh*;GR~E{i=}%2;6x+; z)ofiKc$_c%jAX}rPlEba=hAMRw`M<29hddL0A`{e8U>SijdcuU)mn4zuJ%rX0n4f) zS7AY?pX%Wp=<^|c~A&LNj{nl7$mgVY(#_16B{8c z?=*GTj{u3YH$R+EMxvKstr_UsDf;z$E(3Q~?Qhrz-Z(?<^XiP$T}Z6W-z3!x_#&q5 z0H%)aIWdOkn5HZwPtvW5cM~nadpWn)0N_W9u`z5^q124!{|yE)@hok!=A9)0KY=e| z+g$~yXg6&>lin$oEa8h()4pAN?BJ+4@wj0T1SXEMIRN#nr~jT}V!mY0eqRH6ub!it z_whL?RM6{nUJ4at{smO%MRzgcUhdAEA3&vY_B?TS|2$FQaY5=LrcJ&;9hj>ZD8IN} zB*s%NN`V6A@T_{#56zp!BECbE-F;TFvkQsq5HVx~?}dFLxpf2>&-KHCDWEo$?U?g@kVL{;aDKfj zYfsN>Vs}m1L*M)7~z~BYT|$Y@Mu>(3n*Z0bdci3>_Vr z5Q(kdwIm*XXTV&yM-*G6FS|3%1yEzcdGM${*Cb=1Io?;BzG?;I_S2O8b&cwmoNL;0 zDW6D*&Zqdm0HxEL%0+BcS3(K5UaRO0g`Yto%)UVCBQRG2%+cQtMt77+Tp z0y@a&!DjEIui7M3QD!N;hjN!MxZbO7HN7rz^wtN6Nv&J_wjFCTio1XT>`v9}pB zBr1w4=QL2k?IZ?3_V3xZv|JF5qMsR=h!-FpTOwQ(_|^ChvF$1-QAn-y8qjZclRV4m zCh0EzrW7pfHTR~}OB3H8kwieGy)kB3b)+Z!HF(g#TeL-rxkdUvbxR5mQ%!FZvO%}W zFLvA}q5sr=>3oM~t+_)(Z|~5oR(HupGVW5)_zk=^Ujx><&PJ>B!hgXK>))fQHUk2h z`Timah2i{~cUIm(Xu+%8vtT+G8NYCoUu{Dh=Jxm}(Hd^U8<{ILZoIfIPDDKoq)9XzRuwkZZQ*^~wr%(LOS6 zOk}r+xM*%a{CNv5jNt$`yn%U#GRt$ZO^Ow-6C#U8H^k#IYBs84o&&hDUKPOdnenI(e?F*W*24+-p z{?D-jnGmM*Sj(4^p&*g(X=ja9V-V%cmxOZVOEQDEFDa7*{7d3p_b=hT1yjxQECS1L z8?vUaD6n*XB?XDZ$RD-;R!L$JZy_;eU4q@z9WBh8SG0!rYtqw#*QB|JugQ`<-;gWt zbZj=^_!`XDXW!5|ci)hKyBCp_PAnp5kn~gXVkMR~Vk74F5$wZV!xiG{HRE5t04GW5~j0}GO8_M|i zaNo(wQ?}9z#+1QI-&5-&>;tj6^8~YekF&g2gF@pqBJT?0(Q22LL(AIihfL9JPTla&bu|O;8cEa z2`*x|s2J?&afp*33HN^%R4cO>1NQiZq-)&)bL%0>t*d~ZwX^-tVptLG{^BED9J>XQ zK6~i>*s^d@)2>~7+>i)ScBB%5^?=~68tYx=cOD`zWPPHlsuYl{sqA_K1(;D*h_(7m zo0KPjz%QYjraTp+m8|$ozPa-=x!mv16%4e7VVHH91R4rcyAMk(y?ZyK>}OsX#>7Mp z5d{CFFu)Dccg?&awC*Nf$-4c&lEF3tdUg!lcMz`_LaF7*ii;r!JpM|XrfaawjiBfq zWgOQs77HZ7L{KsF`9{s-^8h&4KiZHjGKP??HD>nTH@Z+|^qpEz3ExRr%K?Q`$E12? z>NjWKztg@v6R?FfK1?Mb)CcCw{|8};_(9v1?LTOg>oAy-mf0J_z2TJC&9R3(Hx-+N5<&T8VFFu5^M!GdMqCke#?AeSz)Fk2$ zDD)5Tgbo$=Krt3C!A{nxvtqSGt}HZv3Z{2|vU~vVU4o=JYU7QHvmP(3K_yG$WYGv- znkVDEtOgSPz|tjou)x5t=pQ_{#HpNs#t|W4~p2lN8v)6t-Je#@oDCbYKpw%P_lqd02whS_$KVGp1zFD!P)vU?&}_C zzjzqP*tAT5<=i{Rp5UJE&IC;-4T!r`SYT%}KNs{oUtQV8zFkcGn6aZpP~{KuaADp7 zsGh!y4)98aFoYY*c=2_DAyIJGP;M`1ax#)}XZZ!DH8mVzik4sKB3EW6#$zP`WV{NHWg_DSc`ew<$kJ@) zb)d2()0oQG)#++VD6&n7P(w2r_p<%WWGv_Qn8|qQ)dlj=3Vn4F?;N=^Uo%i&jz+d- zQ5qSqGpA`}yxIL;LmtHa)VNz%8;lsxV6b5s=CX_Mu0t?3q1H<1iEtm*jv2Dw=429f zRmd|ZR*|tMb5;9`hXoC#Tad|q(Ebu?DdYXV!QMcv{P~S;MNtS3p%-ZF^N(&B&T0KFXRn&4T&89vZ?6m26}mR?SAn ztMvRWDRqXndVxPrfuDsHEVChu-)&^PN7dh!6mY~=#@?Z+9qA^@PR5RQYtZ4mL><_D z@p9j@BgC69d(grzJ6VUB+RJ7Fx3j&B{i-B;augo73v^z4qK#{+K~K=kLB{)E{Mm(i z14b-kqk^IG+3f&0BOPSC=br2!W0(D^gN$8r{^+k}OK3LQq-Q9!pJ0j(E35`5BXN#I zL8_ySPYm35l<|iDOPF^v$mo=ar2l8yf@(5el<&jI?C7_LoeDux1YR7Q2?*|;tT_?W zixxu_=IcbpGQf!>dcuh`G9RS1VeH7?sBOcO%S4I4OveF=+kBxCWeE7 zYHX3)T6DNSiYv0{^Pn7MMu8`Nt0A0F7By@;N9G%=faWp*KJY2kD zjNe-0EAWQ{kAF=IDmz3qV9x)$%5njy)qMRLrj_JDq~&p0LIvNc{*xRjPj(rr&#sl<~40^j7-v3@wLf=-ut$<>5lj(Cx|8#bh1%MWzzPj!6DQ8r^6 z8&ZvQsv$*J+eR`T1bG7>++oNlZ_7hHYLVFz%8>(&NL=*+X4K{HYs-on7q+$;#7&#V z6l&`?rU>f?i z(KoBPJW50<-deL#N+(nxzefuqKcCg93vS9WOK| z-jNKS)ovTuprt?=ZOD9}mS#oXq=`S?l)U=3B2DjUMRc3ACb37iraItqYcc|U*gSFQ zzkPWF!JSv5y!smE#9H2-R}S)sA&fZnt>h29gYGK6G#0@$Ic}HVd?y%gWO3h zIUUArWt;Y8TPwURvaqAvL5#=2=4W%$X?-w78h4USg-tqkB5B8TBK=+NM2c|mCuwZ} z)L(VCpT&Iv?C|uMQD@mqZ1ZA)b_jed&z}@pzcW>RX`N+!1L$Y~S@(PS461knp>%c* zkZXzM{R7Bdw*^quV-!dh868NR+ra#7b9#+HKY)tKiv5NfsEq5&-p|`tC|Zg`Wdr+; z5kp|7C{nF+O$^NwKmg;yj<>*y0-!3hH9@4oBSCU^O&{{iJ>Y*9DT5q&_14Tmq;9%W zy#Sew;;o|+FOMN*-VW(L6ddKRE^-x3IF(6_0L{)Z*3kJ0hOqmmi)^AfMcu3M;2HW8 z4b#g=F|5`xCO#rjti?mXD*{{&fCtPwHsv_lo4MN~C%u4^pyJkS(O<9wN)3@+*sox~ zeuySz!K9FLgJ$8vp&>9d3OD0X{MoTT<0e^&A;%!-j+ZUTz+`y_`wg>q*z}C$+_%$w zrC)7uox1S8vy$0T%9A_SNt`-Y58#kTWxNc$vbQ{#J8Whj3fKMnPzK-C2h8NqFl0#Is#2wx z&+>g9;Oa8BzO*IP0Q#IR&tzV;*Ja6lDP^dA<#r+p-0LfM78LV0h0J;2c0ueKQu{*_ zIk6uBFYG7dquQH54*B}m-T75dxD>{L+V_|7X}|vcf(uX7%gx%Y_6z zeE@m=+5vK+SavA@{c_A+k2gsK%E*Bfv&X@5IV<;0!3#rtjJI9K#>R=>ST8z!<_|s{ z>TtuYJfUz%v$kVnqPagiq4hGqL9~pS% zLD+l%@WJyxo#A?PIkqZn(_q<5tac7+?Yj4>WMTEB#iY;pa`x?`BD9U@0($1n2^f2m z8D@<4z65;Y5LqLRa`>CrH~D(A2pld77Yn-%xq3_~IKWFBV^JMauYkQFG8|rblQFyhu(=4`6=}qv>~t$x{Syzu~g4 z__BJq+)=E`-}b$0uB{WN*oh^KfW}GV5j4$zgq$d#PmZ93RXvKT17jd|lMkECHxM-K zMifc6D2j~M2XGgyz9|Vc!|ltuENdiL;jxjlEi!>%V;i}Av4ANYDK}@S(XxS9b$&Fu zA1jF_I!46E*oNB`LmkRrF)}`pIGqQr6P;7w-W1*REQ|q@N{xd=aVC~xV+s= z@FtXsK$vBE^z$Z<$~Y(hMLp}|PF82SMSg~6zmAe>7NXIA0W5?sVef^OFPcq-Yx$ICH7 z1S1ki@Rt%~e5PUq*#8$h&A);I!0yCMM?n%!8%4X@Xc&*z(Tx{!C?78#B|8fi<6-=x z>s|qr zIhXV?k_zZGNwhmWmPF;CT{4yP(*bwprx|WM{|Iq8vm?neK5u(1nY!aVN$Gvo>royD zgqhKyEcK=eLI1&YS2V#!5*1NwqI=$d7MAk%h5)4 zYOzrXvN!Xb2=%D%WQal)ioS&;5H7xItv5Zz<1Vq3&tzHGSOjlVtkjrq3h8l03Q2}P z2cPlnpO^5C4Z&(H2D7lBj-5qK@aA`p0dpxijBOP=QAQ^IJ_K*LR;~CxjNf8 zN5-r2SLYBDJYyWKGcJa|!lokR@42!OTQZl{%$`fEILsqm@OOnhZ#cn*M;<4ZIv+}y z+w-W-DFz_Hc%S)HE1aA!j}X7qTR`(Cg9I*r_|#E#530EA^96D}0cgHZ##{NJ3*~0w zm$?h&*5b>hg`_ikh~K7>x)<@B*C$=ZlkJ3bDjp*s0a#sFdYyIM!Vk;#!(G;l#o)!i z(n+z9H@)yDp9~TlzseRpeQTYv3<|B?#j>O0FnUv<@H#yz`gyuDtnBwzlrJK|a99?& z7z$hCMHCL|E}~$+1^lK*%`-D9G)l|o6l%ds7m?YAEvCfFTk#p=O?1oioLJ?vDqGlS z{}YF46fAiE;GZg%f0rjtEvy++RpPM-fMV=*?x60VN zK!s7{vcu(6yk8EbL+BdWlo_w47+QTb`R$_Bl>YlbwXc`m>ux!R+G)6CB{1!!uD#RC zNz#s2q3bfj1BQZY@odd6<)y6|IjEdXEx0N3SxW`{UI0q@I>)(!w#uOFLdGU0j1|{2 z?pPpBo?lwmfBF_%bV4kZvnUWbWNE95EXs3RAqcctcH|p>cE*uqEQ2VPzYe0e<2vfE z`~v{VODzj{{;UWvX&qH83)fNK=EFKd9=M)dmR~h7>bwCu@BfSZ_j*FkZ{^yVj-}g2 zKx-{Fa0A)NJg_*wE{`0__^8ElH_&D@e*+Z){K+xX-*%n(Qx7fJxQ&!M(l=5RDA`C2 zbN-g2I%_i4!hf)X29^026to*RQOwQRB;%Vh>itE@w+T!z+B@E}T3k4u)o#xo@;8>lt*sqUFX!(7tySJ8*A+qDa~m0Ke{Nwq z$=!s7l>?@31L&XI$dUN&cYle?af~J9P?6h7JX5yIsluhsfxHj>H?BD=-Usq_-U@Y# zSh!m@MYZ^BY7bn>CbMwcL4Ez%JILk+0}?mut=F^%GPOA(1Lm=ltl|NTufFOD+c5sW z?uhVIyc6O~=1wx>oja-CGT%k1GFkiO=`K?EPB5*yp=TFki79wmxLbA*(%G?_iq&!8 zu3py<)WGyDfV%9V6gpuK#pjYeB=s7g;o`w?4p#k$miZlf>Ch!_FByNmeRS6#Z6BSh z|GQ7dH>>S|`A7F`vnUS^sfU5@wfkiZ9{dVy^vxOYWD@a>_Z}J?peVHV02P(y2T8m9 ze}%Yj)wLVW$T~=!+z$r{Fyat}{%eP*hH7(|e#t&e7H@Mz9wwxcc0_yS;RxMd*#n`( z$SiUPZwgTu28#9B!lN?YN?CrCl>Fl;*=pZobc#?7EPV5kw_VHJ*O6&X$cCoS(&PP* z2lcSbG&@e#5p$f3Jny(xk|)T;=AIySex0DrReX+|Bxrtgcso zxBvaNgrTj5Cpf$X@EIOACHu(9fBWo6qy1kGqy9l%&a*4d4Q`Ftwc8YdG zhrxCpufFz8Y;^e3fB0Ta{^+&-?^pU5FY`}VHcZqUNlifXm?&965b>I!6Jg5qw zurriIc_(h~UfwK+|1JxjUvp>2&d`xKe{5yKmK%?;qas4g8QA*R|4kv2pSP@jSS6`K zO;GqZ+{2jx0D_%0e^XvJI7_9#C|E7o+IV(()M8@Fxw91B?`k2B0p#K%W`?3#6LJ-R zOV7#9VxP({OpdwRjFof(mdeKs&QlwWzk$UoZwWLvpuJQ^d;EF1jv#IMdFpPNT#&~I zZC!u`-GA@T#J(HNFk<-^s7Ck%{w6y?jQNoR5{N9NJ%Po*?GcOYzH$mh7bvrqS zZ^gu8YA$ThW!lRnUnakMb(sux;1xMetdVy`9xlE#ze=|fR?(NtJj!ktKxE9K-g7tr z6^LuGU3s+VUqH{B(a-L&v=?#{mQVo6%;XxGne#RB=sDNq;TnCaw)w5+o#S)U;90l` z!O}KJuoK?&c#RPfSgOwss3cAifN*lOcry`s+)> z`$APu?n3)n_sAa1?~~p0t-Zy<$Ikx)T!lTmPp6X7 z0~y~%F%l?T^z-D5{{xu!fB@eDpjczzL)tbv!;B|8uKcStC_#sw_0Y&6A|_KS+Y1P& z)v@S2MmFC^6xmdm{Oo$=Mr_f0FooPlbb$Bj5pf&%m^Q@;Ah&|%jYAS-m;1TeuDU_Q=;6enGP%7O8pSK=zE z&!KiqDWoc7MIoKadjQQn;s)fRRpoz#>b~7mvhlu838)reN}WC_Uo4RMPlY(#x1bIL zv`5_XpMi%B{D%T<4p^N3q6Qa{q+IQkTi~zzzr-~a;>|6DHl5=$s%gAnMtbw%C$SAB zsGamoTR}e~^~{3#kVk8j=e4kS!>HnOp>-cj@we~N_@RHz*aF+jo+r7aLGDSq> z|I?xeb9za!ZzT}$c6!To*z5Ft0c{$OFVLh|@RAzb>s}JN-`X$z|D{d=kF*yv!#Y+0fv1~TY}SyU&%OaKXB<&FU3K)t6*~SYqHo? zuPNpK(ta86hS)ywhRCxkB2S)FM8DiCqMC!JPW>evU9|FdweydRpesc^vEYbu1v!)q z&Yg}HA=LW#Ex9~@L&El^CJD^T1Y(dF^Leks#+NDEt8Z7Gk#BFT#6+YKYwxm@nbRXsUbG|z4pfIdtxl~1J$tn8L_AiMz?t2 z6!e%fshDbD+hS6BJ`}pGXAGNFVaeQLTCxDh@rY>Ik4JBCof7gtpAs@S-gkd(vd;?_ z2!9U;^Q9%!-7)%)c5$JAWTUiqWd(_W#aDJ5lNb@3pzWY^rt?x>f;4~m9xfr2iO~5Y ziO>Z6Y;1A-VvMNV2kiPJ`A3WqPk-?LHxV12P1Yyv*~%xfDErS^Z~08w@#$x(fV+Glm>pl_Zo-lHbDQ>A`a$J! ziTQq|Bh#*5wfB*~(!ELEVt%`G3n-mGyvl0>=J}1F{l3wDXw^58`A^W7iS5>Zu&5T$ zQ@%ms@&8U!`hKTt%Ui#b|LuYW+&^8+;*RFcI{u()F6;+Y%Ex|CNU-}!Nh#^4JXM7L zQurcR+6gRmh}%3H{{JvX=KB-M(vVUh^!YEUjrq-n+Fy@Mgz^A_`!Cr=Ts67@-omxQ zgKe#^yWdjm{{`Kqyi(c(+$*ImMW^3#vRKO%N{$nsB5pwY6iUI$iWjr{BUcynwD}`X z6km@2k@3G6nhW85w$%x1VS`Ikm6`$t|1UD`w<-7_Tp7r9T3V!F*C!81Q45DY5e5SA zRoKEmP*Dt!6g(*#At@LQ`6hX|=JXzs;5iC5Kv7JYjjZ4`>B%sDY3T4=kv_HKCTymx z;LVhsvVzA8U7I8Yemf^@k96>P7+l z=QE0euXYHiOjt|7Q!KJBrJ(Qi)KP4hfsTU5pK=4}C9L*H!eGovwlxwl{&LUF+VZvXEi10lX+6NtcA!6oz^X7!231`TxnA zYpT>_S$c}O4ZL=Hh&ZqIr$)tDkhY)ueO0ri8WSj*=_y#SN9ZYdMM99V=)M`=b%k`=&S-|kb#0%nPLnSe8}OFfr1aRxEU&VTl*+X zD?a++voKG=W`dz&z^)rAxTP;KRIo)pz(~PcXvd6{U}0&-#)K?Z`z6m1^*{%IW$N@RlOv`${;JHl1NNWr z__~lI=xCQGCEa0e7@VfdajWSUDQlKHeJk1q6 z9$03sl(ma%u@mNsA*)=47O|l_6o>oyX+%*C& zf_B{;%c}PSYxs2#PKH9Q6)Oh+`y?LWOtw%01r=8;6zr2Vw4f5MJ=xTVsNWmi@3ihoX31s}9X7V58tYz3%`h$cwR6@RI&1@H>mpIvv5cp+9B~4;(hIQ}Et!S35G-Q+5hA z5n9j)^ALLHPk?1=-3@3(`3y@xT5N`0~XdPhYZ zcC$i91s_VOUQNMQ42`U&;A#DyYKpH29sR4ra|CYxEN5QRKNOEz>%_QfcY8MRPeHoLrt=8{ zb-%Ak&ezvP5toEmj*EhqXnBWw;ic9VoWf3y9pgvGMkLbH{L8@pd2YE1Ao*)|c854^ z!HQgQ2}Aa8Ed`HLYJxM>{?oh`j~IgFhOB#S1+V*ztWDCoTAN5{UWbgXGN2v1BNQ&r zmQ5?JqgV>L{eqRI=lsdpsPgeySC2_7K{A;etU@>J4SX7*}xJwy2 z)a&xPBH5EYCx! zB5?4rOUARll#PW5v+UY{7CWi^;_gYmtn^gI2pDrO1-m~yJ1_N}I)n>m0DJ4D7>e=l zFfP8tHzdGi0C?`vad;x4i4x9&8xdgtMg&;UNWuG40gdUGT=*jB9LMQQPJuTE^EFmB zp{ZM%5MZ^Y1o##J`yV)nE|`L`f!M_bVPo-GO66u@S9u@ck+oJTWnn&IG0GZxa9%vLlZ z6(%h1es>x!@t_q=c-4v~^lME^213wvFJ%}wc`;Hi2}2gO(X0xyumw(n@TNz(sk zayx#x+Jc33RIpDrw<7^w?Wp*P8Rngo4&qDSPE-f%0Alv|zRlooVzXdwp->3McZOvC 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 T3!3Ml{ZFc81ONa4M?y_P06pqC delta 164296 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

KYRr^2n$Gn?*LDuB}4O!qmS}t4$ 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Ν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 diff --git a/web/landing/bin/migrate-examples.php b/web/landing/bin/migrate-examples.php deleted file mode 100755 index 15e7b39ad7..0000000000 --- a/web/landing/bin/migrate-examples.php +++ /dev/null @@ -1,159 +0,0 @@ -#!/usr/bin/env php -read(from_array([ - ['id' => 1, 'name' => 'Norbert', 'joined_id' => 1, 'joined_status' => 'active'], - ['id' => 2, 'name' => 'John', 'joined_id' => 2, 'joined_status' => 'inactive'], - ['id' => 3, 'name' => 'Jane', 'joined_id' => 3, 'joined_status' => 'active'], + ['id' => 1, 'first_name' => 'Norbert', 'last_name' => 'Orzechowicz'], + ['id' => 2, 'first_name' => 'John', 'last_name' => 'Doe'], ])) ->rename('id', 'user_id') - ->renameEach(rename_replace('joined_', '')) ->collect() ->write(to_output(truncate: false)) ->run(); diff --git a/web/landing/content/examples/topics/data_frame/columns/rename/description.md b/web/landing/content/examples/topics/data_frame/columns/rename/description.md index 26a4e0b897..6e856f09e0 100644 --- a/web/landing/content/examples/topics/data_frame/columns/rename/description.md +++ b/web/landing/content/examples/topics/data_frame/columns/rename/description.md @@ -1 +1 @@ -Rename columns in your data. You can rename individual columns, perform bulk renames using search and replace, or transform all column names to a specific style (lowercase, camelCase, snake_case, etc.). +Rename a single column using the `rename()` method. diff --git a/web/landing/content/examples/topics/data_frame/columns/rename_map/_meta.yaml b/web/landing/content/examples/topics/data_frame/columns/rename_map/_meta.yaml new file mode 100644 index 0000000000..d3f9270d46 --- /dev/null +++ b/web/landing/content/examples/topics/data_frame/columns/rename_map/_meta.yaml @@ -0,0 +1,2 @@ +priority: 4 +hidden: false diff --git a/web/landing/content/examples/topics/data_frame/columns/rename_map/code.php b/web/landing/content/examples/topics/data_frame/columns/rename_map/code.php new file mode 100644 index 0000000000..a245c2a7af --- /dev/null +++ b/web/landing/content/examples/topics/data_frame/columns/rename_map/code.php @@ -0,0 +1,21 @@ +read(from_array([ + ['id' => 1, 'first_name' => 'Norbert', 'last_name' => 'Orzechowicz'], + ['id' => 2, 'first_name' => 'John', 'last_name' => 'Doe'], + ])) + ->renameEach(rename_map([ + 'id' => 'user_id', + 'first_name' => 'name', + 'last_name' => 'surname', + ])) + ->collect() + ->write(to_output(truncate: false)) + ->run(); diff --git a/web/landing/content/examples/topics/data_frame/columns/rename_map/description.md b/web/landing/content/examples/topics/data_frame/columns/rename_map/description.md new file mode 100644 index 0000000000..74474a1e74 --- /dev/null +++ b/web/landing/content/examples/topics/data_frame/columns/rename_map/description.md @@ -0,0 +1 @@ +Rename multiple columns at once using a mapping array. diff --git a/web/landing/content/examples/topics/data_frame/columns/rename_map/documentation.md b/web/landing/content/examples/topics/data_frame/columns/rename_map/documentation.md new file mode 100644 index 0000000000..81b8deb60d --- /dev/null +++ b/web/landing/content/examples/topics/data_frame/columns/rename_map/documentation.md @@ -0,0 +1 @@ +- [Data Manipulation](/documentation/components/core/data-manipulation) diff --git a/web/landing/content/examples/topics/data_frame/columns/rename_replace/_meta.yaml b/web/landing/content/examples/topics/data_frame/columns/rename_replace/_meta.yaml new file mode 100644 index 0000000000..1cfff153ea --- /dev/null +++ b/web/landing/content/examples/topics/data_frame/columns/rename_replace/_meta.yaml @@ -0,0 +1,2 @@ +priority: 6 +hidden: false diff --git a/web/landing/content/examples/topics/data_frame/columns/rename_replace/code.php b/web/landing/content/examples/topics/data_frame/columns/rename_replace/code.php new file mode 100644 index 0000000000..dfa4000ad5 --- /dev/null +++ b/web/landing/content/examples/topics/data_frame/columns/rename_replace/code.php @@ -0,0 +1,17 @@ +read(from_array([ + ['id' => 1, 'name' => 'Norbert', 'joined_id' => 1, 'joined_status' => 'active'], + ['id' => 2, 'name' => 'John', 'joined_id' => 2, 'joined_status' => 'inactive'], + ])) + ->renameEach(rename_replace('joined_', '')) + ->collect() + ->write(to_output(truncate: false)) + ->run(); diff --git a/web/landing/content/examples/topics/data_frame/columns/rename_replace/description.md b/web/landing/content/examples/topics/data_frame/columns/rename_replace/description.md new file mode 100644 index 0000000000..fadc2eebab --- /dev/null +++ b/web/landing/content/examples/topics/data_frame/columns/rename_replace/description.md @@ -0,0 +1 @@ +Rename columns by replacing a substring in their names using search and replace patterns. diff --git a/web/landing/content/examples/topics/data_frame/columns/rename_replace/documentation.md b/web/landing/content/examples/topics/data_frame/columns/rename_replace/documentation.md new file mode 100644 index 0000000000..81b8deb60d --- /dev/null +++ b/web/landing/content/examples/topics/data_frame/columns/rename_replace/documentation.md @@ -0,0 +1 @@ +- [Data Manipulation](/documentation/components/core/data-manipulation) diff --git a/web/landing/content/examples/topics/data_frame/columns/rename_style/_meta.yaml b/web/landing/content/examples/topics/data_frame/columns/rename_style/_meta.yaml new file mode 100644 index 0000000000..76b24de0b7 --- /dev/null +++ b/web/landing/content/examples/topics/data_frame/columns/rename_style/_meta.yaml @@ -0,0 +1,2 @@ +priority: 5 +hidden: false diff --git a/web/landing/content/examples/topics/data_frame/columns/rename_style/code.php b/web/landing/content/examples/topics/data_frame/columns/rename_style/code.php new file mode 100644 index 0000000000..f26e8566b5 --- /dev/null +++ b/web/landing/content/examples/topics/data_frame/columns/rename_style/code.php @@ -0,0 +1,18 @@ +read(from_array([ + ['userId' => 1, 'firstName' => 'Norbert', 'lastName' => 'Orzechowicz'], + ['userId' => 2, 'firstName' => 'John', 'lastName' => 'Doe'], + ])) + ->renameEach(rename_style(StringStyles::SNAKE)) + ->collect() + ->write(to_output(truncate: false)) + ->run(); diff --git a/web/landing/content/examples/topics/data_frame/columns/rename_style/description.md b/web/landing/content/examples/topics/data_frame/columns/rename_style/description.md new file mode 100644 index 0000000000..1b0ef41186 --- /dev/null +++ b/web/landing/content/examples/topics/data_frame/columns/rename_style/description.md @@ -0,0 +1 @@ +Transform all column names to a specific style (snake_case, camelCase, UPPER, etc.). diff --git a/web/landing/content/examples/topics/data_frame/columns/rename_style/documentation.md b/web/landing/content/examples/topics/data_frame/columns/rename_style/documentation.md new file mode 100644 index 0000000000..81b8deb60d --- /dev/null +++ b/web/landing/content/examples/topics/data_frame/columns/rename_style/documentation.md @@ -0,0 +1 @@ +- [Data Manipulation](/documentation/components/core/data-manipulation) diff --git a/web/landing/resources/api.json b/web/landing/resources/api.json index 77549b6c81..2c039bc171 100644 --- a/web/landing/resources/api.json +++ b/web/landing/resources/api.json @@ -1 +1 @@ -[{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":21,"slug":"and","name":"and","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"function","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"All","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":26,"slug":"andnot","name":"andNot","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"function","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"All","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":31,"slug":"append","name":"append","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"suffix","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Append","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":44,"slug":"arrayfilter","name":"arrayFilter","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"value","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ArrayFilter","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBGaWx0ZXJzIGFuIGFycmF5IGJ5IHJlbW92aW5nIGFsbCBlbGVtZW50cyB0aGF0IG1hdGNoZXMgcGFzc2VkIHZhbHVlLgogICAgICogQXBwbGljYWJsZSB0byBhbGwgZGF0YSBzdHJ1Y3R1cmVzIHRoYXQgY2FuIGJlIGNvbnZlcnRlZCB0byBhbiBhcnJheToKICAgICAqICAgIC0ganNvbgogICAgICogICAgLSBsaXN0CiAgICAgKiAgICAtIG1hcAogICAgICogICAgLSBzdHJ1Y3R1cmUuCiAgICAgKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":49,"slug":"arrayget","name":"arrayGet","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"path","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ArrayGet","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":57,"slug":"arraygetcollection","name":"arrayGetCollection","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"keys","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ArrayGetCollection","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBAcGFyYW0gYXJyYXk8YXJyYXkta2V5LCBtaXhlZD4gJGtleXMKICAgICAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":62,"slug":"arraygetcollectionfirst","name":"arrayGetCollectionFirst","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"keys","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"ArrayGetCollection","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":75,"slug":"arraykeep","name":"arrayKeep","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"value","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ArrayKeep","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBGaWx0ZXJzIGFuIGFycmF5IGJ5IGtlZXBpbmcgb25seSBlbGVtZW50cyB0aGF0IG1hdGNoZXMgcGFzc2VkIHZhbHVlLgogICAgICogQXBwbGljYWJsZSB0byBhbGwgZGF0YSBzdHJ1Y3R1cmVzIHRoYXQgY2FuIGJlIGNvbnZlcnRlZCB0byBhbiBhcnJheToKICAgICAqICAgLSBqc29uCiAgICAgKiAgIC0gbGlzdAogICAgICogICAtIG1hcAogICAgICogICAtIHN0cnVjdHVyZS4KICAgICAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":88,"slug":"arraykeys","name":"arrayKeys","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"ArrayKeys","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBSZXR1cm5zIGFsbCBrZXlzIGZyb20gYW4gYXJyYXksIGlnbm9yaW5nIHRoZSB2YWx1ZXMuCiAgICAgKiBBcHBsaWNhYmxlIHRvIGFsbCBkYXRhIHN0cnVjdHVyZXMgdGhhdCBjYW4gYmUgY29udmVydGVkIHRvIGFuIGFycmF5OgogICAgICogICAtIGpzb24KICAgICAqICAgLSBsaXN0CiAgICAgKiAgIC0gbWFwCiAgICAgKiAgIC0gc3RydWN0dXJlLgogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":96,"slug":"arraymerge","name":"arrayMerge","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"ref","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ArrayMerge","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBAcGFyYW0gYXJyYXk8YXJyYXkta2V5LCBtaXhlZD4gJHJlZgogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":101,"slug":"arraymergecollection","name":"arrayMergeCollection","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"ArrayMergeCollection","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":106,"slug":"arraypathexists","name":"arrayPathExists","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"path","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ArrayPathExists","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":111,"slug":"arrayreverse","name":"arrayReverse","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"preserveKeys","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"ArrayReverse","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":116,"slug":"arraysort","name":"arraySort","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"sortFunction","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"Sort","namespace":"Flow\\ETL\\Function\\ArraySort","is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"flags","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"recursive","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"true"}],"return_type":[{"name":"ArraySort","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":129,"slug":"arrayvalues","name":"arrayValues","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"ArrayValues","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBSZXR1cm5zIGFsbCB2YWx1ZXMgZnJvbSBhbiBhcnJheSwgaWdub3JpbmcgdGhlIGtleXMuCiAgICAgKiBBcHBsaWNhYmxlIHRvIGFsbCBkYXRhIHN0cnVjdHVyZXMgdGhhdCBjYW4gYmUgY29udmVydGVkIHRvIGFuIGFycmF5OgogICAgICogICAtIGpzb24KICAgICAqICAgLSBsaXN0CiAgICAgKiAgIC0gbWFwCiAgICAgKiAgIC0gc3RydWN0dXJlLgogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":134,"slug":"ascii","name":"ascii","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"Ascii","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":144,"slug":"between","name":"between","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"lowerBoundRef","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"upperBoundRef","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"boundary","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"Boundary","namespace":"Flow\\ETL\\Function\\Between","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Function\\Between\\Boundary::..."}],"return_type":[{"name":"Between","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBAcGFyYW0gbWl4ZWR8U2NhbGFyRnVuY3Rpb24gJGxvd2VyQm91bmRSZWYKICAgICAqIEBwYXJhbSBtaXhlZHxTY2FsYXJGdW5jdGlvbiAkdXBwZXJCb3VuZFJlZgogICAgICogQHBhcmFtIEJvdW5kYXJ5fFNjYWxhckZ1bmN0aW9uICRib3VuZGFyeQogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":149,"slug":"binarylength","name":"binaryLength","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"BinaryLength","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":158,"slug":"call","name":"call","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"callable","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"callable","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"arguments","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"},{"name":"refAlias","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"0"},{"name":"returnType","type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"CallUserFunc","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBAcGFyYW0gYXJyYXk8YXJyYXkta2V5LCBtaXhlZD4gJGFyZ3VtZW50cwogICAgICogQHBhcmFtIFR5cGU8bWl4ZWQ+ICRyZXR1cm5UeXBlCiAgICAgKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":163,"slug":"capitalize","name":"capitalize","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"Capitalize","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":171,"slug":"cast","name":"cast","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"type","type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Cast","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBAcGFyYW0gc3RyaW5nfFR5cGU8bWl4ZWQ+ICR0eXBlCiAgICAgKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":176,"slug":"chunk","name":"chunk","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"size","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Chunk","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":181,"slug":"coalesce","name":"coalesce","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"params","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"Coalesce","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":186,"slug":"codepointlength","name":"codePointLength","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"CodePointLength","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":191,"slug":"collapsewhitespace","name":"collapseWhitespace","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"CollapseWhitespace","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":196,"slug":"concat","name":"concat","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"params","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"Concat","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":201,"slug":"concatwithseparator","name":"concatWithSeparator","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"separator","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"params","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"ConcatWithSeparator","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":206,"slug":"contains","name":"contains","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"needle","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Contains","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":211,"slug":"dateformat","name":"dateFormat","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"format","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'Y-m-d'"}],"return_type":[{"name":"DateTimeFormat","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":216,"slug":"datetimeformat","name":"dateTimeFormat","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"format","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'Y-m-d H:i:s'"}],"return_type":[{"name":"DateTimeFormat","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":221,"slug":"divide","name":"divide","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"value","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"float","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"scale","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"rounding","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"Rounding","namespace":"Flow\\Calculator","is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Divide","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":229,"slug":"domelementattribute","name":"domElementAttribute","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"attribute","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"DOMElementAttributeValue","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBAZGVwcmVjYXRlZCBVc2UgZG9tRWxlbWVudEF0dHJpYnV0ZVZhbHVlIGluc3RlYWQKICAgICAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":234,"slug":"domelementattributescount","name":"domElementAttributesCount","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"DOMElementAttributesCount","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":239,"slug":"domelementattributevalue","name":"domElementAttributeValue","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"attribute","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"DOMElementAttributeValue","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":244,"slug":"domelementnextsibling","name":"domElementNextSibling","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"allowOnlyElement","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"DOMElementNextSibling","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":249,"slug":"domelementparent","name":"domElementParent","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"DOMElementParent","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":254,"slug":"domelementprevioussibling","name":"domElementPreviousSibling","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"allowOnlyElement","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"DOMElementPreviousSibling","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":259,"slug":"domelementvalue","name":"domElementValue","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"DOMElementValue","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":264,"slug":"endswith","name":"endsWith","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"needle","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"EndsWith","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":269,"slug":"ensureend","name":"ensureEnd","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"suffix","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"EnsureEnd","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":274,"slug":"ensurestart","name":"ensureStart","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"prefix","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"EnsureStart","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":279,"slug":"equals","name":"equals","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"ref","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Equals","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":284,"slug":"exists","name":"exists","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"Exists","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":309,"slug":"expand","name":"expand","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"expand","type":[{"name":"ArrayExpand","namespace":"Flow\\ETL\\Function\\ArrayExpand","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Function\\ArrayExpand\\ArrayExpand::..."}],"return_type":[{"name":"ArrayExpand","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBFeHBhbmRzIGVhY2ggdmFsdWUgaW50byBlbnRyeSwgaWYgdGhlcmUgYXJlIG1vcmUgdGhhbiBvbmUgdmFsdWUsIG11bHRpcGxlIHJvd3Mgd2lsbCBiZSBjcmVhdGVkLgogICAgICogQXJyYXkga2V5cyBhcmUgaWdub3JlZCwgb25seSB2YWx1ZXMgYXJlIHVzZWQgdG8gY3JlYXRlIG5ldyByb3dzLgogICAgICoKICAgICAqIEJlZm9yZToKICAgICAqICAgKy0tKy0tLS0tLS0tLS0tLS0tLS0tLS0rCiAgICAgKiAgIHxpZHwgICAgICAgICAgICAgIGFycmF5fAogICAgICogICArLS0rLS0tLS0tLS0tLS0tLS0tLS0tLSsKICAgICAqICAgfCAxfHsiYSI6MSwiYiI6MiwiYyI6M318CiAgICAgKiAgICstLSstLS0tLS0tLS0tLS0tLS0tLS0tKwogICAgICoKICAgICAqIEFmdGVyOgogICAgICogICArLS0rLS0tLS0tLS0rCiAgICAgKiAgIHxpZHxleHBhbmRlZHwKICAgICAqICAgKy0tKy0tLS0tLS0tKwogICAgICogICB8IDF8ICAgICAgIDF8CiAgICAgKiAgIHwgMXwgICAgICAgMnwKICAgICAqICAgfCAxfCAgICAgICAzfAogICAgICogICArLS0rLS0tLS0tLS0rCiAgICAgKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":314,"slug":"greaterthan","name":"greaterThan","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"ref","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null}],"return_type":[{"name":"GreaterThan","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":319,"slug":"greaterthanequal","name":"greaterThanEqual","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"ref","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null}],"return_type":[{"name":"GreaterThanEqual","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":324,"slug":"hash","name":"hash","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"algorithm","type":[{"name":"Algorithm","namespace":"Flow\\ETL\\Hash","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Hash\\NativePHPHash::..."}],"return_type":[{"name":"Hash","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":329,"slug":"htmlqueryselector","name":"htmlQuerySelector","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"path","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"HTMLQuerySelector","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":334,"slug":"htmlqueryselectorall","name":"htmlQuerySelectorAll","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"path","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"HTMLQuerySelectorAll","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":342,"slug":"indexof","name":"indexOf","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"needle","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"ignoreCase","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"offset","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"0"}],"return_type":[{"name":"IndexOf","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBSZXR1cm5zIHRoZSBpbmRleCBvZiBnaXZlbiAkbmVlZGxlIGluIHN0cmluZy4KICAgICAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":350,"slug":"indexoflast","name":"indexOfLast","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"needle","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"ignoreCase","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"offset","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"0"}],"return_type":[{"name":"IndexOfLast","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBSZXR1cm5zIHRoZSBsYXN0IGluZGV4IG9mIGdpdmVuICRuZWVkbGUgaW4gc3RyaW5nLgogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":355,"slug":"isempty","name":"isEmpty","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"IsEmpty","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":360,"slug":"iseven","name":"isEven","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"Equals","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":365,"slug":"isfalse","name":"isFalse","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"Same","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":373,"slug":"isin","name":"isIn","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"haystack","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"IsIn","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBAcGFyYW0gYXJyYXk8YXJyYXkta2V5LCBtaXhlZD4gJGhheXN0YWNrCiAgICAgKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":378,"slug":"isnotnull","name":"isNotNull","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"IsNotNull","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":383,"slug":"isnotnumeric","name":"isNotNumeric","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"IsNotNumeric","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":388,"slug":"isnull","name":"isNull","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"IsNull","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":393,"slug":"isnumeric","name":"isNumeric","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"IsNumeric","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":398,"slug":"isodd","name":"isOdd","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"NotEquals","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":403,"slug":"istrue","name":"isTrue","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"Same","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":411,"slug":"istype","name":"isType","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"types","type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"IsType","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBAcGFyYW0gc3RyaW5nfFR5cGU8bWl4ZWQ+ICR0eXBlcwogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":423,"slug":"isutf8","name":"isUtf8","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"IsUtf8","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBDaGVjayBzdHJpbmcgaXMgdXRmOCBhbmQgcmV0dXJucyB0cnVlIG9yIGZhbHNlLgogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":428,"slug":"jsondecode","name":"jsonDecode","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"flags","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"4194304"}],"return_type":[{"name":"JsonDecode","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":433,"slug":"jsonencode","name":"jsonEncode","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"flags","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"4194304"}],"return_type":[{"name":"JsonEncode","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":438,"slug":"lessthan","name":"lessThan","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"ref","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null}],"return_type":[{"name":"LessThan","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":443,"slug":"lessthanequal","name":"lessThanEqual","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"ref","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"LessThanEqual","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":448,"slug":"literal","name":"literal","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"value","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Literal","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":453,"slug":"lower","name":"lower","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"ToLower","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":458,"slug":"minus","name":"minus","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"ref","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"float","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Minus","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":463,"slug":"mod","name":"mod","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"value","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Mod","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":468,"slug":"modifydatetime","name":"modifyDateTime","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"modifier","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ModifyDateTime","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":473,"slug":"multiply","name":"multiply","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"value","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"float","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Multiply","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":478,"slug":"notequals","name":"notEquals","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"value","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null}],"return_type":[{"name":"NotEquals","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":483,"slug":"notsame","name":"notSame","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"value","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null}],"return_type":[{"name":"NotSame","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":488,"slug":"numberformat","name":"numberFormat","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"decimals","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"2"},{"name":"decimalSeparator","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'.'"},{"name":"thousandsSeparator","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"','"}],"return_type":[{"name":"NumberFormat","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":499,"slug":"oneach","name":"onEach","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"function","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"preserveKeys","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"true"}],"return_type":[{"name":"OnEach","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBFeGVjdXRlIGEgc2NhbGFyIGZ1bmN0aW9uIG9uIGVhY2ggZWxlbWVudCBvZiBhbiBhcnJheS9saXN0L21hcC9zdHJ1Y3R1cmUgZW50cnkuCiAgICAgKiBJbiBvcmRlciB0byB1c2UgdGhpcyBmdW5jdGlvbiwgeW91IG5lZWQgdG8gcHJvdmlkZSBhIHJlZmVyZW5jZSB0byB0aGUgImVsZW1lbnQiIHRoYXQgd2lsbCBiZSB1c2VkIGluIHRoZSBmdW5jdGlvbi4KICAgICAqCiAgICAgKiBFeGFtcGxlOiAkZGYtPndpdGhFbnRyeSgnYXJyYXknLCByZWYoJ2FycmF5JyktPm9uRWFjaChyZWYoJ2VsZW1lbnQnKS0+Y2FzdCh0eXBlX3N0cmluZygpKSkpCiAgICAgKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":504,"slug":"or","name":"or","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"function","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Any","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":509,"slug":"ornot","name":"orNot","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"function","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Any","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":514,"slug":"plus","name":"plus","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"ref","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"float","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Plus","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":519,"slug":"power","name":"power","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"value","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Power","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":524,"slug":"prepend","name":"prepend","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"prefix","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Prepend","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":529,"slug":"regex","name":"regex","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"pattern","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"flags","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"0"},{"name":"offset","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"0"}],"return_type":[{"name":"Regex","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":534,"slug":"regexall","name":"regexAll","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"pattern","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"flags","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"0"},{"name":"offset","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"0"}],"return_type":[{"name":"RegexAll","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":539,"slug":"regexmatch","name":"regexMatch","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"pattern","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"flags","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"0"},{"name":"offset","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"0"}],"return_type":[{"name":"RegexMatch","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":544,"slug":"regexmatchall","name":"regexMatchAll","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"pattern","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"flags","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"0"},{"name":"offset","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"0"}],"return_type":[{"name":"RegexMatchAll","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":549,"slug":"regexreplace","name":"regexReplace","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"pattern","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"replacement","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"limit","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"RegexReplace","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":554,"slug":"repeat","name":"repeat","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"times","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Repeat","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":559,"slug":"reverse","name":"reverse","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"Reverse","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":564,"slug":"round","name":"round","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"precision","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"2"},{"name":"mode","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"1"}],"return_type":[{"name":"Round","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":569,"slug":"same","name":"same","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"value","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Same","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":574,"slug":"sanitize","name":"sanitize","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"placeholder","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'*'"},{"name":"skipCharacters","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Sanitize","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":579,"slug":"size","name":"size","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"Size","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":587,"slug":"slug","name":"slug","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"separator","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'-'"},{"name":"locale","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"symbolsMap","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Slug","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBAcGFyYW0gbnVsbHxhcnJheTxhcnJheS1rZXksIG1peGVkPiAkc3ltYm9sc01hcAogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":592,"slug":"split","name":"split","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"separator","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"limit","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"9223372036854775807"}],"return_type":[{"name":"Split","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":597,"slug":"sprintf","name":"sprintf","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"params","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"float","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":true,"default_value":null}],"return_type":[{"name":"Sprintf","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":602,"slug":"startswith","name":"startsWith","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"needle","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"StartsWith","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":610,"slug":"stringafter","name":"stringAfter","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"needle","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"includeNeedle","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"StringAfter","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBSZXR1cm5zIHRoZSBjb250ZW50cyBmb3VuZCBhZnRlciB0aGUgZmlyc3Qgb2NjdXJyZW5jZSBvZiB0aGUgZ2l2ZW4gc3RyaW5nLgogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":618,"slug":"stringafterlast","name":"stringAfterLast","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"needle","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"includeNeedle","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"StringAfterLast","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBSZXR1cm5zIHRoZSBjb250ZW50cyBmb3VuZCBhZnRlciB0aGUgbGFzdCBvY2N1cnJlbmNlIG9mIHRoZSBnaXZlbiBzdHJpbmcuCiAgICAgKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":626,"slug":"stringbefore","name":"stringBefore","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"needle","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"includeNeedle","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"StringBefore","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBSZXR1cm5zIHRoZSBjb250ZW50cyBmb3VuZCBiZWZvcmUgdGhlIGZpcnN0IG9jY3VycmVuY2Ugb2YgdGhlIGdpdmVuIHN0cmluZy4KICAgICAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":634,"slug":"stringbeforelast","name":"stringBeforeLast","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"needle","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"includeNeedle","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"StringBeforeLast","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBSZXR1cm5zIHRoZSBjb250ZW50cyBmb3VuZCBiZWZvcmUgdGhlIGxhc3Qgb2NjdXJyZW5jZSBvZiB0aGUgZ2l2ZW4gc3RyaW5nLgogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":642,"slug":"stringcontainsany","name":"stringContainsAny","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"needles","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"StringContainsAny","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBAcGFyYW0gYXJyYXk8c3RyaW5nPnxTY2FsYXJGdW5jdGlvbiAkbmVlZGxlcwogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":647,"slug":"stringequalsto","name":"stringEqualsTo","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"string","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"StringEqualsTo","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":655,"slug":"stringfold","name":"stringFold","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"StringFold","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBSZXR1cm5zIGEgc3RyaW5nIHRoYXQgeW91IGNhbiB1c2UgaW4gY2FzZS1pbnNlbnNpdGl2ZSBjb21wYXJpc29ucy4KICAgICAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":660,"slug":"stringmatch","name":"stringMatch","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"pattern","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"StringMatch","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":665,"slug":"stringmatchall","name":"stringMatchAll","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"pattern","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"StringMatchAll","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":670,"slug":"stringnormalize","name":"stringNormalize","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"form","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"16"}],"return_type":[{"name":"StringNormalize","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":679,"slug":"stringstyle","name":"stringStyle","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"style","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"StringStyles","namespace":"Flow\\ETL\\Function\\StyleConverter","is_nullable":false,"is_variadic":false},{"name":"StringStyles","namespace":"Flow\\ETL\\String","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"StringStyle","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBDb3ZlcnQgc3RyaW5nIHRvIGEgc3R5bGUgZnJvbSBlbnVtIGxpc3QsIHBhc3NlZCBpbiBwYXJhbWV0ZXIuCiAgICAgKiBDYW4gYmUgc3RyaW5nICJ1cHBlciIgb3IgU3RyaW5nU3R5bGVzOjpVUFBFUiBmb3IgVXBwZXIgKGV4YW1wbGUpLgogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":687,"slug":"stringtitle","name":"stringTitle","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"allWords","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"StringTitle","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBDaGFuZ2VzIGFsbCBncmFwaGVtZXMvY29kZSBwb2ludHMgdG8gInRpdGxlIGNhc2UiLgogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":692,"slug":"stringwidth","name":"stringWidth","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"StringWidth","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":697,"slug":"strpad","name":"strPad","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"length","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"pad_string","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"' '"},{"name":"type","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"1"}],"return_type":[{"name":"StrPad","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":702,"slug":"strpadboth","name":"strPadBoth","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"length","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"pad_string","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"' '"}],"return_type":[{"name":"StrPad","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":707,"slug":"strpadleft","name":"strPadLeft","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"length","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"pad_string","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"' '"}],"return_type":[{"name":"StrPad","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":712,"slug":"strpadright","name":"strPadRight","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"length","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"pad_string","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"' '"}],"return_type":[{"name":"StrPad","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":721,"slug":"strreplace","name":"strReplace","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"search","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"replace","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"StrReplace","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBAcGFyYW0gYXJyYXk8c3RyaW5nPnxTY2FsYXJGdW5jdGlvbnxzdHJpbmcgJHNlYXJjaAogICAgICogQHBhcmFtIGFycmF5PHN0cmluZz58U2NhbGFyRnVuY3Rpb258c3RyaW5nICRyZXBsYWNlCiAgICAgKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":729,"slug":"todate","name":"toDate","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"format","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'Y-m-d\\\\TH:i:sP'"},{"name":"timeZone","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"DateTimeZone","namespace":"","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"DateTimeZone::..."}],"return_type":[{"name":"ToDate","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBAcGFyYW0gU2NhbGFyRnVuY3Rpb258c3RyaW5nICRmb3JtYXQgLSBjdXJyZW50IGZvcm1hdCBvZiB0aGUgZGF0ZSB0aGF0IHdpbGwgYmUgdXNlZCB0byBjcmVhdGUgRGF0ZVRpbWVJbW11dGFibGUgaW5zdGFuY2UKICAgICAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":738,"slug":"todatetime","name":"toDateTime","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"format","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'Y-m-d H:i:s'"},{"name":"timeZone","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"DateTimeZone","namespace":"","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"DateTimeZone::..."}],"return_type":[{"name":"ToDateTime","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBAcGFyYW0gU2NhbGFyRnVuY3Rpb258c3RyaW5nICRmb3JtYXQgLSBjdXJyZW50IGZvcm1hdCBvZiB0aGUgZGF0ZSB0aGF0IHdpbGwgYmUgdXNlZCB0byBjcmVhdGUgRGF0ZVRpbWVJbW11dGFibGUgaW5zdGFuY2UKICAgICAqIEBwYXJhbSBcRGF0ZVRpbWVab25lfFNjYWxhckZ1bmN0aW9uICR0aW1lWm9uZQogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":743,"slug":"trim","name":"trim","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"type","type":[{"name":"Type","namespace":"Flow\\ETL\\Function\\Trim","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Function\\Trim\\Type::..."},{"name":"characters","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"' \\t\\n\\r\\0\u000b'"}],"return_type":[{"name":"Trim","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":748,"slug":"truncate","name":"truncate","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"length","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"ellipsis","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'...'"}],"return_type":[{"name":"Truncate","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":753,"slug":"unicodelength","name":"unicodeLength","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"UnicodeLength","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":780,"slug":"unpack","name":"unpack","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"skipKeys","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"},{"name":"entryPrefix","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"ArrayUnpack","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBAcGFyYW0gYXJyYXk8YXJyYXkta2V5LCBtaXhlZD4gJHNraXBLZXlzCiAgICAgKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":785,"slug":"upper","name":"upper","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"ToUpper","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":790,"slug":"wordwrap","name":"wordwrap","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"width","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"break","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'\\n'"},{"name":"cut","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"Wordwrap","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":795,"slug":"xpath","name":"xpath","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"string","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"XPath","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Flow.php","start_line_in_file":23,"slug":"setup","name":"setUp","class":"Flow\\ETL\\Flow","class_slug":"flow","parameters":[{"name":"config","type":[{"name":"ConfigBuilder","namespace":"Flow\\ETL\\Config","is_nullable":false,"is_variadic":false},{"name":"Config","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Flow.php","start_line_in_file":28,"slug":"extract","name":"extract","class":"Flow\\ETL\\Flow","class_slug":"flow","parameters":[{"name":"extractor","type":[{"name":"Extractor","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"DataFrame","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Flow.php","start_line_in_file":36,"slug":"from","name":"from","class":"Flow\\ETL\\Flow","class_slug":"flow","parameters":[{"name":"extractor","type":[{"name":"Extractor","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"DataFrame","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Flow.php","start_line_in_file":41,"slug":"process","name":"process","class":"Flow\\ETL\\Flow","class_slug":"flow","parameters":[{"name":"rows","type":[{"name":"Rows","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"DataFrame","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Flow.php","start_line_in_file":52,"slug":"read","name":"read","class":"Flow\\ETL\\Flow","class_slug":"flow","parameters":[{"name":"extractor","type":[{"name":"Extractor","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"DataFrame","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBBbGlhcyBmb3IgRmxvdzo6ZXh0cmFjdCBmdW5jdGlvbi4KICAgICAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":76,"slug":"aggregate","name":"aggregate","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"aggregations","type":[{"name":"AggregatingFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAbGF6eQogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":86,"slug":"autocast","name":"autoCast","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":108,"slug":"batchby","name":"batchBy","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"column","type":[{"name":"Reference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"minSize","type":[{"name":"int","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBNZXJnZS9TcGxpdCBSb3dzIHlpZWxkZWQgYnkgRXh0cmFjdG9yIGludG8gYmF0Y2hlcyBidXQga2VlcCB0aG9zZSB3aXRoIGNvbW1vbiB2YWx1ZSBpbiBnaXZlbiBjb2x1bW4gdG9nZXRoZXIuCiAgICAgKiBUaGlzIHdvcmtzIHByb3Blcmx5IG9ubHkgb24gc29ydGVkIGRhdGFzZXRzLgogICAgICoKICAgICAqIFdoZW4gbWluU2l6ZSBpcyBub3QgcHJvdmlkZWQsIGJhdGNoZXMgd2lsbCBiZSBjcmVhdGVkIG9ubHkgd2hlbiB0aGVyZSBpcyBhIGNoYW5nZSBpbiB2YWx1ZSBvZiB0aGUgY29sdW1uLgogICAgICogV2hlbiBtaW5TaXplIGlzIHByb3ZpZGVkLCBiYXRjaGVzIHdpbGwgYmUgY3JlYXRlZCBvbmx5IHdoZW4gdGhlcmUgaXMgYSBjaGFuZ2UgaW4gdmFsdWUgb2YgdGhlIGNvbHVtbiBvcgogICAgICogd2hlbiB0aGVyZSBhcmUgYXQgbGVhc3QgbWluU2l6ZSByb3dzIGluIHRoZSBiYXRjaC4KICAgICAqCiAgICAgKiBAcGFyYW0gUmVmZXJlbmNlfHN0cmluZyAkY29sdW1uIC0gY29sdW1uIHRvIGdyb3VwIGJ5IChhbGwgcm93cyB3aXRoIHNhbWUgdmFsdWUgc3RheSB0b2dldGhlcikKICAgICAqIEBwYXJhbSBudWxsfGludDwxLCBtYXg+ICRtaW5TaXplIC0gb3B0aW9uYWwgbWluaW11bSByb3dzIHBlciBiYXRjaCBmb3IgZWZmaWNpZW5jeQogICAgICoKICAgICAqIEBsYXp5CiAgICAgKgogICAgICogQHRocm93cyBJbnZhbGlkQXJndW1lbnRFeGNlcHRpb24KICAgICAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":128,"slug":"batchsize","name":"batchSize","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"size","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBNZXJnZS9TcGxpdCBSb3dzIHlpZWxkZWQgYnkgRXh0cmFjdG9yIGludG8gYmF0Y2hlcyBvZiBnaXZlbiBzaXplLgogICAgICogRm9yIGV4YW1wbGUsIHdoZW4gRXh0cmFjdG9yIGlzIHlpZWxkaW5nIG9uZSByb3cgYXQgdGltZSwgdGhpcyBtZXRob2Qgd2lsbCBtZXJnZSB0aGVtIGludG8gYmF0Y2hlcyBvZiBnaXZlbiBzaXplCiAgICAgKiBiZWZvcmUgcGFzc2luZyB0aGVtIHRvIHRoZSBuZXh0IHBpcGVsaW5lIGVsZW1lbnQuCiAgICAgKiBTaW1pbGFybHkgd2hlbiBFeHRyYWN0b3IgaXMgeWllbGRpbmcgYmF0Y2hlcyBvZiByb3dzLCB0aGlzIG1ldGhvZCB3aWxsIHNwbGl0IHRoZW0gaW50byBzbWFsbGVyIGJhdGNoZXMgb2YgZ2l2ZW4KICAgICAqIHNpemUuCiAgICAgKgogICAgICogSW4gb3JkZXIgdG8gbWVyZ2UgYWxsIFJvd3MgaW50byBhIHNpbmdsZSBiYXRjaCB1c2UgRGF0YUZyYW1lOjpjb2xsZWN0KCkgbWV0aG9kIG9yIHNldCBzaXplIHRvIC0xIG9yIDAuCiAgICAgKgogICAgICogQHBhcmFtIGludDwxLCBtYXg+ICRzaXplCiAgICAgKgogICAgICogQGxhenkKICAgICAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":155,"slug":"cache","name":"cache","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"id","type":[{"name":"string","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"cacheBatchSize","type":[{"name":"int","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBTdGFydCBwcm9jZXNzaW5nIHJvd3MgdXAgdG8gdGhpcyBtb21lbnQgYW5kIHB1dCBlYWNoIGluc3RhbmNlIG9mIFJvd3MKICAgICAqIGludG8gcHJldmlvdXNseSBkZWZpbmVkIGNhY2hlLgogICAgICogQ2FjaGUgdHlwZSBjYW4gYmUgc2V0IHRocm91Z2ggQ29uZmlnQnVpbGRlci4KICAgICAqIEJ5IGRlZmF1bHQgZXZlcnl0aGluZyBpcyBjYWNoZWQgaW4gc3lzdGVtIHRtcCBkaXIuCiAgICAgKgogICAgICogSW1wb3J0YW50OiBjYWNoZSBiYXRjaCBzaXplIG1pZ2h0IHNpZ25pZmljYW50bHkgaW1wcm92ZSBwZXJmb3JtYW5jZSB3aGVuIHByb2Nlc3NpbmcgbGFyZ2UgYW1vdW50IG9mIHJvd3MuCiAgICAgKiBMYXJnZXIgYmF0Y2ggc2l6ZSB3aWxsIGluY3JlYXNlIG1lbW9yeSBjb25zdW1wdGlvbiBidXQgd2lsbCByZWR1Y2UgbnVtYmVyIG9mIElPIG9wZXJhdGlvbnMuCiAgICAgKiBXaGVuIG5vdCBzZXQsIHRoZSBiYXRjaCBzaXplIGlzIHRha2VuIGZyb20gdGhlIGxhc3QgRGF0YUZyYW1lOjpiYXRjaFNpemUoKSBjYWxsLgogICAgICoKICAgICAqIEBsYXp5CiAgICAgKgogICAgICogQHBhcmFtIG51bGx8c3RyaW5nICRpZAogICAgICoKICAgICAqIEB0aHJvd3MgSW52YWxpZEFyZ3VtZW50RXhjZXB0aW9uCiAgICAgKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":176,"slug":"collect","name":"collect","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBCZWZvcmUgdHJhbnNmb3JtaW5nIHJvd3MsIGNvbGxlY3QgdGhlbSBhbmQgbWVyZ2UgaW50byBzaW5nbGUgUm93cyBpbnN0YW5jZS4KICAgICAqIFRoaXMgbWlnaHQgbGVhZCB0byBtZW1vcnkgaXNzdWVzIHdoZW4gcHJvY2Vzc2luZyBsYXJnZSBhbW91bnQgb2Ygcm93cywgdXNlIHdpdGggY2F1dGlvbi4KICAgICAqCiAgICAgKiBAbGF6eQogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":195,"slug":"collectrefs","name":"collectRefs","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"references","type":[{"name":"References","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBUaGlzIG1ldGhvZCBhbGxvd3MgdG8gY29sbGVjdCByZWZlcmVuY2VzIHRvIGFsbCBlbnRyaWVzIHVzZWQgaW4gdGhpcyBwaXBlbGluZS4KICAgICAqCiAgICAgKiBgYGBwaHAKICAgICAqIChuZXcgRmxvdygpKQogICAgICogICAtPnJlYWQoRnJvbTo6Y2hhaW4oKSkKICAgICAqICAgLT5jb2xsZWN0UmVmcygkcmVmcyA9IHJlZnMoKSkKICAgICAqICAgLT5ydW4oKTsKICAgICAqIGBgYAogICAgICoKICAgICAqIEBsYXp5CiAgICAgKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":208,"slug":"constrain","name":"constrain","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"constraint","type":[{"name":"Constraint","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"constraints","type":[{"name":"Constraint","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":221,"slug":"count","name":"count","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[],"return_type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAdHJpZ2dlcgogICAgICogUmV0dXJuIHRvdGFsIGNvdW50IG9mIHJvd3MgcHJvY2Vzc2VkIGJ5IHRoaXMgcGlwZWxpbmUuCiAgICAgKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":242,"slug":"crossjoin","name":"crossJoin","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"dataFrame","type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"prefix","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"''"}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAbGF6eQogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":259,"slug":"display","name":"display","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"limit","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"20"},{"name":"truncate","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"20"},{"name":"formatter","type":[{"name":"Formatter","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Formatter\\AsciiTableFormatter::..."}],"return_type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAcGFyYW0gaW50ICRsaW1pdCBtYXhpbXVtIG51bWJlcnMgb2Ygcm93cyB0byBkaXNwbGF5CiAgICAgKiBAcGFyYW0gYm9vbHxpbnQgJHRydW5jYXRlIGZhbHNlIG9yIGlmIHNldCB0byAwIGNvbHVtbnMgYXJlIG5vdCB0cnVuY2F0ZWQsIG90aGVyd2lzZSBkZWZhdWx0IHRydW5jYXRlIHRvIDIwCiAgICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgIGNoYXJhY3RlcnMKICAgICAqIEBwYXJhbSBGb3JtYXR0ZXIgJGZvcm1hdHRlcgogICAgICoKICAgICAqIEB0cmlnZ2VyCiAgICAgKgogICAgICogQHRocm93cyBJbnZhbGlkQXJndW1lbnRFeGNlcHRpb24KICAgICAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":284,"slug":"drop","name":"drop","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"entries","type":[{"name":"Reference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBEcm9wIGdpdmVuIGVudHJpZXMuCiAgICAgKgogICAgICogQGxhenkKICAgICAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":298,"slug":"dropduplicates","name":"dropDuplicates","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"entries","type":[{"name":"Reference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAcGFyYW0gUmVmZXJlbmNlfHN0cmluZyAuLi4kZW50cmllcwogICAgICoKICAgICAqIEBsYXp5CiAgICAgKgogICAgICogQHJldHVybiAkdGhpcwogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":311,"slug":"droppartitions","name":"dropPartitions","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"dropPartitionColumns","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBEcm9wIGFsbCBwYXJ0aXRpb25zIGZyb20gUm93cywgYWRkaXRpb25hbGx5IHdoZW4gJGRyb3BQYXJ0aXRpb25Db2x1bW5zIGlzIHNldCB0byB0cnVlLCBwYXJ0aXRpb24gY29sdW1ucyBhcmUKICAgICAqIGFsc28gcmVtb3ZlZC4KICAgICAqCiAgICAgKiBAbGF6eQogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":318,"slug":"duplicaterow","name":"duplicateRow","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"condition","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"entries","type":[{"name":"WithEntry","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":338,"slug":"fetch","name":"fetch","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"limit","type":[{"name":"int","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Rows","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBCZSBhd2FyZSB0aGF0IGZldGNoIGlzIG5vdCBtZW1vcnkgc2FmZSBhbmQgd2lsbCBsb2FkIGFsbCByb3dzIGludG8gbWVtb3J5LgogICAgICogSWYgeW91IHdhbnQgdG8gc2FmZWx5IGl0ZXJhdGUgb3ZlciBSb3dzIHVzZSBvZSBvZiB0aGUgZm9sbG93aW5nIG1ldGhvZHM6LgogICAgICoKICAgICAqIERhdGFGcmFtZTo6Z2V0KCkgOiBcR2VuZXJhdG9yCiAgICAgKiBEYXRhRnJhbWU6OmdldEFzQXJyYXkoKSA6IFxHZW5lcmF0b3IKICAgICAqIERhdGFGcmFtZTo6Z2V0RWFjaCgpIDogXEdlbmVyYXRvcgogICAgICogRGF0YUZyYW1lOjpnZXRFYWNoQXNBcnJheSgpIDogXEdlbmVyYXRvcgogICAgICoKICAgICAqIEB0cmlnZ2VyCiAgICAgKgogICAgICogQHRocm93cyBJbnZhbGlkQXJndW1lbnRFeGNlcHRpb24KICAgICAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":363,"slug":"filter","name":"filter","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"function","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAbGF6eQogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":375,"slug":"filterpartitions","name":"filterPartitions","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"filter","type":[{"name":"Filter","namespace":"Flow\\Filesystem\\Path","is_nullable":false,"is_variadic":false},{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAbGF6eQogICAgICoKICAgICAqIEB0aHJvd3MgUnVudGltZUV4Y2VwdGlvbgogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":406,"slug":"filters","name":"filters","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"functions","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAbGF6eQogICAgICoKICAgICAqIEBwYXJhbSBhcnJheTxTY2FsYXJGdW5jdGlvbj4gJGZ1bmN0aW9ucwogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":420,"slug":"foreach","name":"forEach","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"callback","type":[{"name":"callable","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"void","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAdHJpZ2dlcgogICAgICoKICAgICAqIEBwYXJhbSBudWxsfGNhbGxhYmxlKFJvd3MgJHJvd3MpIDogdm9pZCAkY2FsbGJhY2sKICAgICAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":432,"slug":"get","name":"get","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[],"return_type":[{"name":"Generator","namespace":"","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBZaWVsZHMgZWFjaCByb3cgYXMgYW4gaW5zdGFuY2Ugb2YgUm93cy4KICAgICAqCiAgICAgKiBAdHJpZ2dlcgogICAgICoKICAgICAqIEByZXR1cm4gXEdlbmVyYXRvcjxSb3dzPgogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":453,"slug":"getasarray","name":"getAsArray","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[],"return_type":[{"name":"Generator","namespace":"","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBZaWVsZHMgZWFjaCByb3cgYXMgYW4gYXJyYXkuCiAgICAgKgogICAgICogQHRyaWdnZXIKICAgICAqCiAgICAgKiBAcmV0dXJuIFxHZW5lcmF0b3I8YXJyYXk8YXJyYXk8bWl4ZWQ+Pj4KICAgICAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":474,"slug":"geteach","name":"getEach","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[],"return_type":[{"name":"Generator","namespace":"","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBZaWVsZCBlYWNoIHJvdyBhcyBhbiBpbnN0YW5jZSBvZiBSb3cuCiAgICAgKgogICAgICogQHRyaWdnZXIKICAgICAqCiAgICAgKiBAcmV0dXJuIFxHZW5lcmF0b3I8Um93PgogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":497,"slug":"geteachasarray","name":"getEachAsArray","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[],"return_type":[{"name":"Generator","namespace":"","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBZaWVsZCBlYWNoIHJvdyBhcyBhbiBhcnJheS4KICAgICAqCiAgICAgKiBAdHJpZ2dlcgogICAgICoKICAgICAqIEByZXR1cm4gXEdlbmVyYXRvcjxhcnJheTxtaXhlZD4+CiAgICAgKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":516,"slug":"groupby","name":"groupBy","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"entries","type":[{"name":"Reference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"GroupedDataFrame","namespace":"Flow\\ETL\\DataFrame","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAbGF6eQogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":524,"slug":"join","name":"join","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"dataFrame","type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"on","type":[{"name":"Expression","namespace":"Flow\\ETL\\Join","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"type","type":[{"name":"Join","namespace":"Flow\\ETL\\Join","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Join\\Join::..."}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAbGF6eQogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":540,"slug":"joineach","name":"joinEach","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"factory","type":[{"name":"DataFrameFactory","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"on","type":[{"name":"Expression","namespace":"Flow\\ETL\\Join","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"type","type":[{"name":"Join","namespace":"Flow\\ETL\\Join","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Join\\Join::..."}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAbGF6eQogICAgICoKICAgICAqIEBwc2FsbS1wYXJhbSBzdHJpbmd8Sm9pbiAkdHlwZQogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":563,"slug":"limit","name":"limit","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"limit","type":[{"name":"int","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAbGF6eQogICAgICoKICAgICAqIEB0aHJvd3MgSW52YWxpZEFyZ3VtZW50RXhjZXB0aW9uCiAgICAgKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":577,"slug":"load","name":"load","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"loader","type":[{"name":"Loader","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAbGF6eQogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":589,"slug":"map","name":"map","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"callback","type":[{"name":"callable","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAbGF6eQogICAgICoKICAgICAqIEBwYXJhbSBjYWxsYWJsZShSb3cgJHJvdykgOiBSb3cgJGNhbGxiYWNrCiAgICAgKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":601,"slug":"match","name":"match","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"schema","type":[{"name":"Schema","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"validator","type":[{"name":"SchemaValidator","namespace":"Flow\\ETL","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAbGF6eQogICAgICoKICAgICAqIEBwYXJhbSBudWxsfFNjaGVtYVZhbGlkYXRvciAkdmFsaWRhdG9yIC0gd2hlbiBudWxsLCBTdHJpY3RWYWxpZGF0b3IgZ2V0cyBpbml0aWFsaXplZAogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":619,"slug":"mode","name":"mode","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"mode","type":[{"name":"SaveMode","namespace":"Flow\\ETL\\Filesystem","is_nullable":false,"is_variadic":false},{"name":"ExecutionMode","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBUaGlzIG1ldGhvZCBpcyB1c2VkIHRvIHNldCB0aGUgYmVoYXZpb3Igb2YgdGhlIERhdGFGcmFtZS4KICAgICAqCiAgICAgKiBBdmFpbGFibGUgbW9kZXM6CiAgICAgKiAtIFNhdmVNb2RlIGRlZmluZXMgaG93IEZsb3cgc2hvdWxkIGJlaGF2ZSB3aGVuIHdyaXRpbmcgdG8gYSBmaWxlL2ZpbGVzIHRoYXQgYWxyZWFkeSBleGlzdHMuCiAgICAgKiAtIEV4ZWN1dGlvbk1vZGUgLSBkZWZpbmVzIGhvdyBmdW5jdGlvbnMgc2hvdWxkIGJlaGF2ZSB3aGVuIHRoZXkgZW5jb3VudGVyIHVuZXhwZWN0ZWQgZGF0YSAoZS5nLiwgdHlwZSBtaXNtYXRjaGVzLCBtaXNzaW5nIHZhbHVlcykuCiAgICAgKgogICAgICogQGxhenkKICAgICAqCiAgICAgKiBAcmV0dXJuICR0aGlzCiAgICAgKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":644,"slug":"offset","name":"offset","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"offset","type":[{"name":"int","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBTa2lwIGdpdmVuIG51bWJlciBvZiByb3dzIGZyb20gdGhlIGJlZ2lubmluZyBvZiB0aGUgZGF0YXNldC4KICAgICAqIFdoZW4gJG9mZnNldCBpcyBudWxsLCBub3RoaW5nIGhhcHBlbnMgKG5vIHJvd3MgYXJlIHNraXBwZWQpLgogICAgICoKICAgICAqIFBlcmZvcm1hbmNlIE5vdGU6IERhdGFGcmFtZSBtdXN0IGl0ZXJhdGUgdGhyb3VnaCBhbmQgcHJvY2VzcyBhbGwgc2tpcHBlZCByb3dzCiAgICAgKiB0byByZWFjaCB0aGUgb2Zmc2V0IHBvc2l0aW9uLiBGb3IgbGFyZ2Ugb2Zmc2V0cywgdGhpcyBjYW4gaW1wYWN0IHBlcmZvcm1hbmNlCiAgICAgKiBhcyB0aGUgZGF0YSBzb3VyY2Ugc3RpbGwgbmVlZHMgdG8gYmUgcmVhZCBhbmQgcHJvY2Vzc2VkIHVwIHRvIHRoZSBvZmZzZXQgcG9pbnQuCiAgICAgKgogICAgICogQHBhcmFtID9pbnQ8MCwgbWF4PiAkb2Zmc2V0CiAgICAgKgogICAgICogQGxhenkKICAgICAqCiAgICAgKiBAdGhyb3dzIEludmFsaWRBcmd1bWVudEV4Y2VwdGlvbgogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":658,"slug":"onerror","name":"onError","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"handler","type":[{"name":"ErrorHandler","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAbGF6eQogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":668,"slug":"partitionby","name":"partitionBy","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"entry","type":[{"name":"Reference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"entries","type":[{"name":"Reference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAbGF6eQogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":677,"slug":"pivot","name":"pivot","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"ref","type":[{"name":"Reference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":693,"slug":"printrows","name":"printRows","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"limit","type":[{"name":"int","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"20"},{"name":"truncate","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"20"},{"name":"formatter","type":[{"name":"Formatter","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Formatter\\AsciiTableFormatter::..."}],"return_type":[{"name":"void","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAdHJpZ2dlcgogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":707,"slug":"printschema","name":"printSchema","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"limit","type":[{"name":"int","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"20"},{"name":"formatter","type":[{"name":"SchemaFormatter","namespace":"Flow\\ETL\\Schema","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Row\\Formatter\\ASCIISchemaFormatter::..."}],"return_type":[{"name":"void","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAdHJpZ2dlcgogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":720,"slug":"rename","name":"rename","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"from","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"to","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAbGF6eQogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":733,"slug":"renameall","name":"renameAll","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"search","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"replace","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAbGF6eQogICAgICogSXRlcmF0ZSBvdmVyIGFsbCBlbnRyeSBuYW1lcyBhbmQgcmVwbGFjZSB0aGUgZ2l2ZW4gc2VhcmNoIHN0cmluZyB3aXRoIHJlcGxhY2Ugc3RyaW5nLgogICAgICoKICAgICAqIEBkZXByZWNhdGVkIHVzZSBEYXRhRnJhbWU6OnJlbmFtZUVhY2goKSB3aXRoIGEgUmVuYW1lUmVwbGFjZVN0cmF0ZWd5CiAgICAgKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":745,"slug":"renamealllowercase","name":"renameAllLowerCase","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAbGF6eQogICAgICoKICAgICAqIEBkZXByZWNhdGVkIHVzZSBEYXRhRnJhbWU6OnJlbmFtZUVhY2goKSB3aXRoIGEgc2VsZWN0ZWQgU3RyaW5nU3R5bGVzCiAgICAgKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":759,"slug":"renameallstyle","name":"renameAllStyle","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"style","type":[{"name":"StringStyles","namespace":"Flow\\ETL\\Function\\StyleConverter","is_nullable":false,"is_variadic":false},{"name":"StringStyles","namespace":"Flow\\ETL\\String","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAbGF6eQogICAgICogUmVuYW1lIGFsbCBlbnRyaWVzIHRvIGEgZ2l2ZW4gc3R5bGUuCiAgICAgKiBQbGVhc2UgbG9vayBpbnRvIFxGbG93XEVUTFxGdW5jdGlvblxTdHlsZUNvbnZlcnRlclxTdHJpbmdTdHlsZXMgY2xhc3MgZm9yIGFsbCBhdmFpbGFibGUgc3R5bGVzLgogICAgICoKICAgICAqIEBkZXByZWNhdGVkIHVzZSBEYXRhRnJhbWU6OnJlbmFtZUVhY2goKSB3aXRoIGEgc2VsZWN0ZWQgU3R5bGUKICAgICAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":775,"slug":"renamealluppercase","name":"renameAllUpperCase","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAbGF6eQogICAgICoKICAgICAqIEBkZXByZWNhdGVkIHVzZSBEYXRhRnJhbWU6OnJlbmFtZUVhY2goKSB3aXRoIGEgc2VsZWN0ZWQgU3R5bGUKICAgICAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":787,"slug":"renamealluppercasefirst","name":"renameAllUpperCaseFirst","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAbGF6eQogICAgICoKICAgICAqIEBkZXByZWNhdGVkIHVzZSBEYXRhRnJhbWU6OnJlbmFtZUVhY2goKSB3aXRoIGEgc2VsZWN0ZWQgU3R5bGUKICAgICAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":799,"slug":"renamealluppercaseword","name":"renameAllUpperCaseWord","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAbGF6eQogICAgICoKICAgICAqIEBkZXByZWNhdGVkIHVzZSBEYXRhRnJhbWU6OnJlbmFtZUVhY2goKSB3aXRoIGEgc2VsZWN0ZWQgU3R5bGUKICAgICAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":806,"slug":"renameeach","name":"renameEach","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"strategies","type":[{"name":"RenameEntryStrategy","namespace":"Flow\\ETL\\Transformer\\Rename","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":813,"slug":"reorderentries","name":"reorderEntries","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"comparator","type":[{"name":"Comparator","namespace":"Flow\\ETL\\Transformer\\OrderEntries","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Transformer\\OrderEntries\\TypeComparator::..."}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":824,"slug":"rows","name":"rows","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"transformer","type":[{"name":"Transformer","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false},{"name":"Transformation","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAbGF6eQogICAgICogQWxpYXMgZm9yIEVUTDo6dHJhbnNmb3JtIG1ldGhvZC4KICAgICAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":842,"slug":"run","name":"run","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"callback","type":[{"name":"callable","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"analyze","type":[{"name":"Analyze","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false},{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"Report","namespace":"Flow\\ETL\\Dataset","is_nullable":true,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAdHJpZ2dlcgogICAgICoKICAgICAqIFdoZW4gYW5hbHl6aW5nIHBpcGVsaW5lIGV4ZWN1dGlvbiB3ZSBjYW4gY2hvc2UgdG8gY29sbGVjdCB2YXJpb3VzIG1ldHJpY3MgdGhyb3VnaCBhbmFseXplKCktPndpdGgqKCkgbWV0aG9kCiAgICAgKgogICAgICogLSBjb2x1bW4gc3RhdGlzdGljcyAtIGFuYWx5emUoKS0+d2l0aENvbHVtblN0YXRpc3RpY3MoKQogICAgICogLSBzY2hlbWEgLSBhbmFseXplKCktPndpdGhTY2hlbWEoKQogICAgICoKICAgICAqIEBwYXJhbSBudWxsfGNhbGxhYmxlKFJvd3MgJHJvd3MsIEZsb3dDb250ZXh0ICRjb250ZXh0KTogdm9pZCAkY2FsbGJhY2sKICAgICAqIEBwYXJhbSBBbmFseXplfGJvb2wgJGFuYWx5emUgLSB3aGVuIHNldCBydW4gd2lsbCByZXR1cm4gUmVwb3J0CiAgICAgKgogICAgICogQHJldHVybiAoJGFuYWx5emUgaXMgQW5hbHl6ZXx0cnVlID8gUmVwb3J0IDogbnVsbCkKICAgICAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":874,"slug":"savemode","name":"saveMode","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"mode","type":[{"name":"SaveMode","namespace":"Flow\\ETL\\Filesystem","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBBbGlhcyBmb3IgRGF0YUZyYW1lOjptb2RlLgogICAgICoKICAgICAqIEBsYXp5CiAgICAgKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":884,"slug":"schema","name":"schema","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[],"return_type":[{"name":"Schema","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAdHJpZ2dlcgogICAgICoKICAgICAqIEByZXR1cm4gU2NoZW1hCiAgICAgKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":906,"slug":"select","name":"select","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"entries","type":[{"name":"Reference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAbGF6eQogICAgICogS2VlcCBvbmx5IGdpdmVuIGVudHJpZXMuCiAgICAgKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":916,"slug":"sortby","name":"sortBy","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"entries","type":[{"name":"Reference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAbGF6eQogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":928,"slug":"transform","name":"transform","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"transformer","type":[{"name":"Transformer","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false},{"name":"Transformation","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false},{"name":"Transformations","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false},{"name":"WithEntry","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBBbGlhcyBmb3IgRGF0YUZyYW1lOjp3aXRoKCkuCiAgICAgKgogICAgICogQGxhenkKICAgICAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":939,"slug":"until","name":"until","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"function","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBUaGUgZGlmZmVyZW5jZSBiZXR3ZWVuIGZpbHRlciBhbmQgdW50aWwgaXMgdGhhdCBmaWx0ZXIgd2lsbCBrZWVwIGZpbHRlcmluZyByb3dzIHVudGlsIGV4dHJhY3RvcnMgZmluaXNoIHlpZWxkaW5nCiAgICAgKiByb3dzLiBVbnRpbCB3aWxsIHNlbmQgYSBTVE9QIHNpZ25hbCB0byB0aGUgRXh0cmFjdG9yIHdoZW4gdGhlIGNvbmRpdGlvbiBpcyBub3QgbWV0LgogICAgICoKICAgICAqIEBsYXp5CiAgICAgKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":953,"slug":"validate","name":"validate","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"schema","type":[{"name":"Schema","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"validator","type":[{"name":"SchemaValidator","namespace":"Flow\\ETL","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAZGVwcmVjYXRlZCBQbGVhc2UgdXNlIERhdGFGcmFtZTo6bWF0Y2ggaW5zdGVhZAogICAgICoKICAgICAqIEBsYXp5CiAgICAgKgogICAgICogQHBhcmFtIG51bGx8U2NoZW1hVmFsaWRhdG9yICR2YWxpZGF0b3IgLSB3aGVuIG51bGwsIFN0cmljdFZhbGlkYXRvciBnZXRzIGluaXRpYWxpemVkCiAgICAgKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":967,"slug":"void","name":"void","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAbGF6eQogICAgICogVGhpcyBtZXRob2QgaXMgdXNlZnVsIG1vc3RseSBpbiBkZXZlbG9wbWVudCB3aGVuCiAgICAgKiB5b3Ugd2FudCB0byBwYXVzZSBwcm9jZXNzaW5nIGF0IGNlcnRhaW4gbW9tZW50IHdpdGhvdXQKICAgICAqIHJlbW92aW5nIGNvZGUuIEFsbCBvcGVyYXRpb25zIHdpbGwgZ2V0IHByb2Nlc3NlZCB1cCB0byB0aGlzIHBvaW50LAogICAgICogZnJvbSBoZXJlIG5vIHJvd3MgYXJlIHBhc3NlZCBmb3J3YXJkLgogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":977,"slug":"with","name":"with","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"transformer","type":[{"name":"Transformer","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false},{"name":"Transformation","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false},{"name":"Transformations","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false},{"name":"WithEntry","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAbGF6eQogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":1005,"slug":"withentries","name":"withEntries","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"references","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAbGF6eQogICAgICoKICAgICAqIEBwYXJhbSBhcnJheTxpbnQsIFdpdGhFbnRyeT58YXJyYXk8c3RyaW5nLCBTY2FsYXJGdW5jdGlvbnxXaW5kb3dGdW5jdGlvbnxXaXRoRW50cnk+ICRyZWZlcmVuY2VzCiAgICAgKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":1023,"slug":"withentry","name":"withEntry","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"entry","type":[{"name":"Definition","namespace":"Flow\\ETL\\Schema","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"reference","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"WindowFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAcGFyYW0gRGVmaW5pdGlvbjxtaXhlZD58c3RyaW5nICRlbnRyeQogICAgICoKICAgICAqIEBsYXp5CiAgICAgKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":1050,"slug":"write","name":"write","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"loader","type":[{"name":"Loader","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAbGF6eQogICAgICogQWxpYXMgZm9yIEVUTDo6bG9hZCBmdW5jdGlvbi4KICAgICAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame\/GroupedDataFrame.php","start_line_in_file":18,"slug":"aggregate","name":"aggregate","class":"Flow\\ETL\\DataFrame\\GroupedDataFrame","class_slug":"groupeddataframe","parameters":[{"name":"aggregations","type":[{"name":"AggregatingFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"DataFrame","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame\/GroupedDataFrame.php","start_line_in_file":34,"slug":"pivot","name":"pivot","class":"Flow\\ETL\\DataFrame\\GroupedDataFrame","class_slug":"groupeddataframe","parameters":[{"name":"ref","type":[{"name":"Reference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":null}] \ No newline at end of file +[{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":20,"slug":"and","name":"and","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"function","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"All","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":25,"slug":"andnot","name":"andNot","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"function","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"All","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":30,"slug":"append","name":"append","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"suffix","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Append","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":43,"slug":"arrayfilter","name":"arrayFilter","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"value","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ArrayFilter","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBGaWx0ZXJzIGFuIGFycmF5IGJ5IHJlbW92aW5nIGFsbCBlbGVtZW50cyB0aGF0IG1hdGNoZXMgcGFzc2VkIHZhbHVlLgogICAgICogQXBwbGljYWJsZSB0byBhbGwgZGF0YSBzdHJ1Y3R1cmVzIHRoYXQgY2FuIGJlIGNvbnZlcnRlZCB0byBhbiBhcnJheToKICAgICAqICAgIC0ganNvbgogICAgICogICAgLSBsaXN0CiAgICAgKiAgICAtIG1hcAogICAgICogICAgLSBzdHJ1Y3R1cmUuCiAgICAgKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":48,"slug":"arrayget","name":"arrayGet","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"path","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ArrayGet","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":56,"slug":"arraygetcollection","name":"arrayGetCollection","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"keys","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ArrayGetCollection","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBAcGFyYW0gYXJyYXk8YXJyYXkta2V5LCBtaXhlZD4gJGtleXMKICAgICAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":61,"slug":"arraygetcollectionfirst","name":"arrayGetCollectionFirst","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"keys","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"ArrayGetCollection","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":74,"slug":"arraykeep","name":"arrayKeep","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"value","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ArrayKeep","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBGaWx0ZXJzIGFuIGFycmF5IGJ5IGtlZXBpbmcgb25seSBlbGVtZW50cyB0aGF0IG1hdGNoZXMgcGFzc2VkIHZhbHVlLgogICAgICogQXBwbGljYWJsZSB0byBhbGwgZGF0YSBzdHJ1Y3R1cmVzIHRoYXQgY2FuIGJlIGNvbnZlcnRlZCB0byBhbiBhcnJheToKICAgICAqICAgLSBqc29uCiAgICAgKiAgIC0gbGlzdAogICAgICogICAtIG1hcAogICAgICogICAtIHN0cnVjdHVyZS4KICAgICAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":87,"slug":"arraykeys","name":"arrayKeys","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"ArrayKeys","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBSZXR1cm5zIGFsbCBrZXlzIGZyb20gYW4gYXJyYXksIGlnbm9yaW5nIHRoZSB2YWx1ZXMuCiAgICAgKiBBcHBsaWNhYmxlIHRvIGFsbCBkYXRhIHN0cnVjdHVyZXMgdGhhdCBjYW4gYmUgY29udmVydGVkIHRvIGFuIGFycmF5OgogICAgICogICAtIGpzb24KICAgICAqICAgLSBsaXN0CiAgICAgKiAgIC0gbWFwCiAgICAgKiAgIC0gc3RydWN0dXJlLgogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":95,"slug":"arraymerge","name":"arrayMerge","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"ref","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ArrayMerge","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBAcGFyYW0gYXJyYXk8YXJyYXkta2V5LCBtaXhlZD4gJHJlZgogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":100,"slug":"arraymergecollection","name":"arrayMergeCollection","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"ArrayMergeCollection","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":105,"slug":"arraypathexists","name":"arrayPathExists","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"path","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ArrayPathExists","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":110,"slug":"arrayreverse","name":"arrayReverse","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"preserveKeys","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"ArrayReverse","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":115,"slug":"arraysort","name":"arraySort","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"sortFunction","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"Sort","namespace":"Flow\\ETL\\Function\\ArraySort","is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"flags","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"recursive","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"true"}],"return_type":[{"name":"ArraySort","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":128,"slug":"arrayvalues","name":"arrayValues","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"ArrayValues","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBSZXR1cm5zIGFsbCB2YWx1ZXMgZnJvbSBhbiBhcnJheSwgaWdub3JpbmcgdGhlIGtleXMuCiAgICAgKiBBcHBsaWNhYmxlIHRvIGFsbCBkYXRhIHN0cnVjdHVyZXMgdGhhdCBjYW4gYmUgY29udmVydGVkIHRvIGFuIGFycmF5OgogICAgICogICAtIGpzb24KICAgICAqICAgLSBsaXN0CiAgICAgKiAgIC0gbWFwCiAgICAgKiAgIC0gc3RydWN0dXJlLgogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":133,"slug":"ascii","name":"ascii","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"Ascii","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":143,"slug":"between","name":"between","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"lowerBoundRef","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"upperBoundRef","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"boundary","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"Boundary","namespace":"Flow\\ETL\\Function\\Between","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Function\\Between\\Boundary::..."}],"return_type":[{"name":"Between","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBAcGFyYW0gbWl4ZWR8U2NhbGFyRnVuY3Rpb24gJGxvd2VyQm91bmRSZWYKICAgICAqIEBwYXJhbSBtaXhlZHxTY2FsYXJGdW5jdGlvbiAkdXBwZXJCb3VuZFJlZgogICAgICogQHBhcmFtIEJvdW5kYXJ5fFNjYWxhckZ1bmN0aW9uICRib3VuZGFyeQogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":148,"slug":"binarylength","name":"binaryLength","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"BinaryLength","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":157,"slug":"call","name":"call","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"callable","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"callable","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"arguments","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"},{"name":"refAlias","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"0"},{"name":"returnType","type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"CallUserFunc","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBAcGFyYW0gYXJyYXk8YXJyYXkta2V5LCBtaXhlZD4gJGFyZ3VtZW50cwogICAgICogQHBhcmFtIFR5cGU8bWl4ZWQ+ICRyZXR1cm5UeXBlCiAgICAgKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":162,"slug":"capitalize","name":"capitalize","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"Capitalize","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":170,"slug":"cast","name":"cast","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"type","type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Cast","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBAcGFyYW0gc3RyaW5nfFR5cGU8bWl4ZWQ+ICR0eXBlCiAgICAgKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":175,"slug":"chunk","name":"chunk","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"size","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Chunk","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":180,"slug":"coalesce","name":"coalesce","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"params","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"Coalesce","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":185,"slug":"codepointlength","name":"codePointLength","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"CodePointLength","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":190,"slug":"collapsewhitespace","name":"collapseWhitespace","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"CollapseWhitespace","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":195,"slug":"concat","name":"concat","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"params","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"Concat","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":200,"slug":"concatwithseparator","name":"concatWithSeparator","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"separator","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"params","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"ConcatWithSeparator","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":205,"slug":"contains","name":"contains","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"needle","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Contains","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":210,"slug":"dateformat","name":"dateFormat","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"format","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'Y-m-d'"}],"return_type":[{"name":"DateTimeFormat","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":215,"slug":"datetimeformat","name":"dateTimeFormat","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"format","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'Y-m-d H:i:s'"}],"return_type":[{"name":"DateTimeFormat","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":220,"slug":"divide","name":"divide","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"value","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"float","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"scale","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"rounding","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"Rounding","namespace":"Flow\\Calculator","is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Divide","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":228,"slug":"domelementattribute","name":"domElementAttribute","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"attribute","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"DOMElementAttributeValue","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBAZGVwcmVjYXRlZCBVc2UgZG9tRWxlbWVudEF0dHJpYnV0ZVZhbHVlIGluc3RlYWQKICAgICAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":233,"slug":"domelementattributescount","name":"domElementAttributesCount","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"DOMElementAttributesCount","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":238,"slug":"domelementattributevalue","name":"domElementAttributeValue","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"attribute","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"DOMElementAttributeValue","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":243,"slug":"domelementnextsibling","name":"domElementNextSibling","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"allowOnlyElement","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"DOMElementNextSibling","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":248,"slug":"domelementparent","name":"domElementParent","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"DOMElementParent","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":253,"slug":"domelementprevioussibling","name":"domElementPreviousSibling","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"allowOnlyElement","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"DOMElementPreviousSibling","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":258,"slug":"domelementvalue","name":"domElementValue","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"DOMElementValue","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":263,"slug":"endswith","name":"endsWith","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"needle","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"EndsWith","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":268,"slug":"ensureend","name":"ensureEnd","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"suffix","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"EnsureEnd","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":273,"slug":"ensurestart","name":"ensureStart","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"prefix","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"EnsureStart","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":278,"slug":"equals","name":"equals","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"ref","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Equals","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":283,"slug":"exists","name":"exists","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"Exists","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":308,"slug":"expand","name":"expand","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"expand","type":[{"name":"ArrayExpand","namespace":"Flow\\ETL\\Function\\ArrayExpand","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Function\\ArrayExpand\\ArrayExpand::..."}],"return_type":[{"name":"ArrayExpand","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBFeHBhbmRzIGVhY2ggdmFsdWUgaW50byBlbnRyeSwgaWYgdGhlcmUgYXJlIG1vcmUgdGhhbiBvbmUgdmFsdWUsIG11bHRpcGxlIHJvd3Mgd2lsbCBiZSBjcmVhdGVkLgogICAgICogQXJyYXkga2V5cyBhcmUgaWdub3JlZCwgb25seSB2YWx1ZXMgYXJlIHVzZWQgdG8gY3JlYXRlIG5ldyByb3dzLgogICAgICoKICAgICAqIEJlZm9yZToKICAgICAqICAgKy0tKy0tLS0tLS0tLS0tLS0tLS0tLS0rCiAgICAgKiAgIHxpZHwgICAgICAgICAgICAgIGFycmF5fAogICAgICogICArLS0rLS0tLS0tLS0tLS0tLS0tLS0tLSsKICAgICAqICAgfCAxfHsiYSI6MSwiYiI6MiwiYyI6M318CiAgICAgKiAgICstLSstLS0tLS0tLS0tLS0tLS0tLS0tKwogICAgICoKICAgICAqIEFmdGVyOgogICAgICogICArLS0rLS0tLS0tLS0rCiAgICAgKiAgIHxpZHxleHBhbmRlZHwKICAgICAqICAgKy0tKy0tLS0tLS0tKwogICAgICogICB8IDF8ICAgICAgIDF8CiAgICAgKiAgIHwgMXwgICAgICAgMnwKICAgICAqICAgfCAxfCAgICAgICAzfAogICAgICogICArLS0rLS0tLS0tLS0rCiAgICAgKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":313,"slug":"greaterthan","name":"greaterThan","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"ref","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null}],"return_type":[{"name":"GreaterThan","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":318,"slug":"greaterthanequal","name":"greaterThanEqual","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"ref","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null}],"return_type":[{"name":"GreaterThanEqual","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":323,"slug":"hash","name":"hash","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"algorithm","type":[{"name":"Algorithm","namespace":"Flow\\ETL\\Hash","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Hash\\NativePHPHash::..."}],"return_type":[{"name":"Hash","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":328,"slug":"htmlqueryselector","name":"htmlQuerySelector","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"path","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"HTMLQuerySelector","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":333,"slug":"htmlqueryselectorall","name":"htmlQuerySelectorAll","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"path","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"HTMLQuerySelectorAll","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":341,"slug":"indexof","name":"indexOf","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"needle","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"ignoreCase","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"offset","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"0"}],"return_type":[{"name":"IndexOf","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBSZXR1cm5zIHRoZSBpbmRleCBvZiBnaXZlbiAkbmVlZGxlIGluIHN0cmluZy4KICAgICAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":349,"slug":"indexoflast","name":"indexOfLast","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"needle","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"ignoreCase","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"offset","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"0"}],"return_type":[{"name":"IndexOfLast","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBSZXR1cm5zIHRoZSBsYXN0IGluZGV4IG9mIGdpdmVuICRuZWVkbGUgaW4gc3RyaW5nLgogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":354,"slug":"isempty","name":"isEmpty","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"IsEmpty","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":359,"slug":"iseven","name":"isEven","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"Equals","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":364,"slug":"isfalse","name":"isFalse","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"Same","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":372,"slug":"isin","name":"isIn","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"haystack","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"IsIn","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBAcGFyYW0gYXJyYXk8YXJyYXkta2V5LCBtaXhlZD4gJGhheXN0YWNrCiAgICAgKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":377,"slug":"isnotnull","name":"isNotNull","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"IsNotNull","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":382,"slug":"isnotnumeric","name":"isNotNumeric","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"IsNotNumeric","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":387,"slug":"isnull","name":"isNull","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"IsNull","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":392,"slug":"isnumeric","name":"isNumeric","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"IsNumeric","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":397,"slug":"isodd","name":"isOdd","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"NotEquals","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":402,"slug":"istrue","name":"isTrue","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"Same","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":410,"slug":"istype","name":"isType","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"types","type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"IsType","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBAcGFyYW0gc3RyaW5nfFR5cGU8bWl4ZWQ+ICR0eXBlcwogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":422,"slug":"isutf8","name":"isUtf8","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"IsUtf8","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBDaGVjayBzdHJpbmcgaXMgdXRmOCBhbmQgcmV0dXJucyB0cnVlIG9yIGZhbHNlLgogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":427,"slug":"jsondecode","name":"jsonDecode","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"flags","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"4194304"}],"return_type":[{"name":"JsonDecode","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":432,"slug":"jsonencode","name":"jsonEncode","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"flags","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"4194304"}],"return_type":[{"name":"JsonEncode","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":437,"slug":"lessthan","name":"lessThan","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"ref","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null}],"return_type":[{"name":"LessThan","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":442,"slug":"lessthanequal","name":"lessThanEqual","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"ref","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"LessThanEqual","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":447,"slug":"literal","name":"literal","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"value","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Literal","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":452,"slug":"lower","name":"lower","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"ToLower","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":457,"slug":"minus","name":"minus","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"ref","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"float","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Minus","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":462,"slug":"mod","name":"mod","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"value","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Mod","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":467,"slug":"modifydatetime","name":"modifyDateTime","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"modifier","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ModifyDateTime","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":472,"slug":"multiply","name":"multiply","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"value","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"float","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Multiply","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":477,"slug":"notequals","name":"notEquals","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"value","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null}],"return_type":[{"name":"NotEquals","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":482,"slug":"notsame","name":"notSame","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"value","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null}],"return_type":[{"name":"NotSame","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":487,"slug":"numberformat","name":"numberFormat","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"decimals","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"2"},{"name":"decimalSeparator","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'.'"},{"name":"thousandsSeparator","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"','"}],"return_type":[{"name":"NumberFormat","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":498,"slug":"oneach","name":"onEach","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"function","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"preserveKeys","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"true"}],"return_type":[{"name":"OnEach","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBFeGVjdXRlIGEgc2NhbGFyIGZ1bmN0aW9uIG9uIGVhY2ggZWxlbWVudCBvZiBhbiBhcnJheS9saXN0L21hcC9zdHJ1Y3R1cmUgZW50cnkuCiAgICAgKiBJbiBvcmRlciB0byB1c2UgdGhpcyBmdW5jdGlvbiwgeW91IG5lZWQgdG8gcHJvdmlkZSBhIHJlZmVyZW5jZSB0byB0aGUgImVsZW1lbnQiIHRoYXQgd2lsbCBiZSB1c2VkIGluIHRoZSBmdW5jdGlvbi4KICAgICAqCiAgICAgKiBFeGFtcGxlOiAkZGYtPndpdGhFbnRyeSgnYXJyYXknLCByZWYoJ2FycmF5JyktPm9uRWFjaChyZWYoJ2VsZW1lbnQnKS0+Y2FzdCh0eXBlX3N0cmluZygpKSkpCiAgICAgKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":503,"slug":"or","name":"or","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"function","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Any","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":508,"slug":"ornot","name":"orNot","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"function","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Any","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":513,"slug":"plus","name":"plus","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"ref","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"float","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Plus","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":518,"slug":"power","name":"power","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"value","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Power","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":523,"slug":"prepend","name":"prepend","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"prefix","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Prepend","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":528,"slug":"regex","name":"regex","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"pattern","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"flags","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"0"},{"name":"offset","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"0"}],"return_type":[{"name":"Regex","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":533,"slug":"regexall","name":"regexAll","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"pattern","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"flags","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"0"},{"name":"offset","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"0"}],"return_type":[{"name":"RegexAll","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":538,"slug":"regexmatch","name":"regexMatch","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"pattern","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"flags","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"0"},{"name":"offset","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"0"}],"return_type":[{"name":"RegexMatch","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":543,"slug":"regexmatchall","name":"regexMatchAll","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"pattern","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"flags","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"0"},{"name":"offset","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"0"}],"return_type":[{"name":"RegexMatchAll","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":548,"slug":"regexreplace","name":"regexReplace","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"pattern","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"replacement","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"limit","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"RegexReplace","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":553,"slug":"repeat","name":"repeat","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"times","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Repeat","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":558,"slug":"reverse","name":"reverse","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"Reverse","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":563,"slug":"round","name":"round","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"precision","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"2"},{"name":"mode","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"1"}],"return_type":[{"name":"Round","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":568,"slug":"same","name":"same","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"value","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Same","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":573,"slug":"sanitize","name":"sanitize","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"placeholder","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'*'"},{"name":"skipCharacters","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Sanitize","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":578,"slug":"size","name":"size","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"Size","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":586,"slug":"slug","name":"slug","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"separator","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'-'"},{"name":"locale","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"symbolsMap","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Slug","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBAcGFyYW0gbnVsbHxhcnJheTxhcnJheS1rZXksIG1peGVkPiAkc3ltYm9sc01hcAogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":591,"slug":"split","name":"split","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"separator","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"limit","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"9223372036854775807"}],"return_type":[{"name":"Split","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":596,"slug":"sprintf","name":"sprintf","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"params","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"float","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":true,"default_value":null}],"return_type":[{"name":"Sprintf","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":601,"slug":"startswith","name":"startsWith","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"needle","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"StartsWith","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":609,"slug":"stringafter","name":"stringAfter","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"needle","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"includeNeedle","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"StringAfter","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBSZXR1cm5zIHRoZSBjb250ZW50cyBmb3VuZCBhZnRlciB0aGUgZmlyc3Qgb2NjdXJyZW5jZSBvZiB0aGUgZ2l2ZW4gc3RyaW5nLgogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":617,"slug":"stringafterlast","name":"stringAfterLast","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"needle","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"includeNeedle","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"StringAfterLast","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBSZXR1cm5zIHRoZSBjb250ZW50cyBmb3VuZCBhZnRlciB0aGUgbGFzdCBvY2N1cnJlbmNlIG9mIHRoZSBnaXZlbiBzdHJpbmcuCiAgICAgKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":625,"slug":"stringbefore","name":"stringBefore","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"needle","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"includeNeedle","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"StringBefore","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBSZXR1cm5zIHRoZSBjb250ZW50cyBmb3VuZCBiZWZvcmUgdGhlIGZpcnN0IG9jY3VycmVuY2Ugb2YgdGhlIGdpdmVuIHN0cmluZy4KICAgICAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":633,"slug":"stringbeforelast","name":"stringBeforeLast","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"needle","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"includeNeedle","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"StringBeforeLast","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBSZXR1cm5zIHRoZSBjb250ZW50cyBmb3VuZCBiZWZvcmUgdGhlIGxhc3Qgb2NjdXJyZW5jZSBvZiB0aGUgZ2l2ZW4gc3RyaW5nLgogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":641,"slug":"stringcontainsany","name":"stringContainsAny","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"needles","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"StringContainsAny","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBAcGFyYW0gYXJyYXk8c3RyaW5nPnxTY2FsYXJGdW5jdGlvbiAkbmVlZGxlcwogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":646,"slug":"stringequalsto","name":"stringEqualsTo","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"string","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"StringEqualsTo","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":654,"slug":"stringfold","name":"stringFold","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"StringFold","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBSZXR1cm5zIGEgc3RyaW5nIHRoYXQgeW91IGNhbiB1c2UgaW4gY2FzZS1pbnNlbnNpdGl2ZSBjb21wYXJpc29ucy4KICAgICAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":659,"slug":"stringmatch","name":"stringMatch","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"pattern","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"StringMatch","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":664,"slug":"stringmatchall","name":"stringMatchAll","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"pattern","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"StringMatchAll","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":669,"slug":"stringnormalize","name":"stringNormalize","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"form","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"16"}],"return_type":[{"name":"StringNormalize","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":678,"slug":"stringstyle","name":"stringStyle","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"style","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"StringStyles","namespace":"Flow\\ETL\\String","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"StringStyle","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBDb3ZlcnQgc3RyaW5nIHRvIGEgc3R5bGUgZnJvbSBlbnVtIGxpc3QsIHBhc3NlZCBpbiBwYXJhbWV0ZXIuCiAgICAgKiBDYW4gYmUgc3RyaW5nICJ1cHBlciIgb3IgU3RyaW5nU3R5bGVzOjpVUFBFUiBmb3IgVXBwZXIgKGV4YW1wbGUpLgogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":686,"slug":"stringtitle","name":"stringTitle","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"allWords","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"StringTitle","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBDaGFuZ2VzIGFsbCBncmFwaGVtZXMvY29kZSBwb2ludHMgdG8gInRpdGxlIGNhc2UiLgogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":691,"slug":"stringwidth","name":"stringWidth","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"StringWidth","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":696,"slug":"strpad","name":"strPad","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"length","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"pad_string","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"' '"},{"name":"type","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"1"}],"return_type":[{"name":"StrPad","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":701,"slug":"strpadboth","name":"strPadBoth","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"length","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"pad_string","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"' '"}],"return_type":[{"name":"StrPad","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":706,"slug":"strpadleft","name":"strPadLeft","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"length","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"pad_string","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"' '"}],"return_type":[{"name":"StrPad","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":711,"slug":"strpadright","name":"strPadRight","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"length","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"pad_string","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"' '"}],"return_type":[{"name":"StrPad","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":720,"slug":"strreplace","name":"strReplace","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"search","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"replace","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"StrReplace","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBAcGFyYW0gYXJyYXk8c3RyaW5nPnxTY2FsYXJGdW5jdGlvbnxzdHJpbmcgJHNlYXJjaAogICAgICogQHBhcmFtIGFycmF5PHN0cmluZz58U2NhbGFyRnVuY3Rpb258c3RyaW5nICRyZXBsYWNlCiAgICAgKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":728,"slug":"todate","name":"toDate","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"format","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'Y-m-d\\\\TH:i:sP'"},{"name":"timeZone","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"DateTimeZone","namespace":"","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"DateTimeZone::..."}],"return_type":[{"name":"ToDate","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBAcGFyYW0gU2NhbGFyRnVuY3Rpb258c3RyaW5nICRmb3JtYXQgLSBjdXJyZW50IGZvcm1hdCBvZiB0aGUgZGF0ZSB0aGF0IHdpbGwgYmUgdXNlZCB0byBjcmVhdGUgRGF0ZVRpbWVJbW11dGFibGUgaW5zdGFuY2UKICAgICAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":737,"slug":"todatetime","name":"toDateTime","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"format","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'Y-m-d H:i:s'"},{"name":"timeZone","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"DateTimeZone","namespace":"","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"DateTimeZone::..."}],"return_type":[{"name":"ToDateTime","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBAcGFyYW0gU2NhbGFyRnVuY3Rpb258c3RyaW5nICRmb3JtYXQgLSBjdXJyZW50IGZvcm1hdCBvZiB0aGUgZGF0ZSB0aGF0IHdpbGwgYmUgdXNlZCB0byBjcmVhdGUgRGF0ZVRpbWVJbW11dGFibGUgaW5zdGFuY2UKICAgICAqIEBwYXJhbSBcRGF0ZVRpbWVab25lfFNjYWxhckZ1bmN0aW9uICR0aW1lWm9uZQogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":742,"slug":"trim","name":"trim","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"type","type":[{"name":"Type","namespace":"Flow\\ETL\\Function\\Trim","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Function\\Trim\\Type::..."},{"name":"characters","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"' \\t\\n\\r\\0\u000b'"}],"return_type":[{"name":"Trim","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":747,"slug":"truncate","name":"truncate","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"length","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"ellipsis","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'...'"}],"return_type":[{"name":"Truncate","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":752,"slug":"unicodelength","name":"unicodeLength","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"UnicodeLength","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":779,"slug":"unpack","name":"unpack","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"skipKeys","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"},{"name":"entryPrefix","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"ArrayUnpack","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":"LyoqCiAgICAgKiBAcGFyYW0gYXJyYXk8YXJyYXkta2V5LCBtaXhlZD4gJHNraXBLZXlzCiAgICAgKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":784,"slug":"upper","name":"upper","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[],"return_type":[{"name":"ToUpper","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":789,"slug":"wordwrap","name":"wordwrap","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"width","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"break","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'\\n'"},{"name":"cut","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"Wordwrap","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Function\/ScalarFunctionChain.php","start_line_in_file":794,"slug":"xpath","name":"xpath","class":"Flow\\ETL\\Function\\ScalarFunctionChain","class_slug":"scalarfunctionchain","parameters":[{"name":"string","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"XPath","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Flow.php","start_line_in_file":23,"slug":"setup","name":"setUp","class":"Flow\\ETL\\Flow","class_slug":"flow","parameters":[{"name":"config","type":[{"name":"ConfigBuilder","namespace":"Flow\\ETL\\Config","is_nullable":false,"is_variadic":false},{"name":"Config","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Flow.php","start_line_in_file":28,"slug":"extract","name":"extract","class":"Flow\\ETL\\Flow","class_slug":"flow","parameters":[{"name":"extractor","type":[{"name":"Extractor","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"DataFrame","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Flow.php","start_line_in_file":36,"slug":"from","name":"from","class":"Flow\\ETL\\Flow","class_slug":"flow","parameters":[{"name":"extractor","type":[{"name":"Extractor","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"DataFrame","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Flow.php","start_line_in_file":41,"slug":"process","name":"process","class":"Flow\\ETL\\Flow","class_slug":"flow","parameters":[{"name":"rows","type":[{"name":"Rows","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"DataFrame","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/Flow.php","start_line_in_file":52,"slug":"read","name":"read","class":"Flow\\ETL\\Flow","class_slug":"flow","parameters":[{"name":"extractor","type":[{"name":"Extractor","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"DataFrame","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBBbGlhcyBmb3IgRmxvdzo6ZXh0cmFjdCBmdW5jdGlvbi4KICAgICAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":72,"slug":"aggregate","name":"aggregate","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"aggregations","type":[{"name":"AggregatingFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAbGF6eQogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":82,"slug":"autocast","name":"autoCast","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":104,"slug":"batchby","name":"batchBy","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"column","type":[{"name":"Reference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"minSize","type":[{"name":"int","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBNZXJnZS9TcGxpdCBSb3dzIHlpZWxkZWQgYnkgRXh0cmFjdG9yIGludG8gYmF0Y2hlcyBidXQga2VlcCB0aG9zZSB3aXRoIGNvbW1vbiB2YWx1ZSBpbiBnaXZlbiBjb2x1bW4gdG9nZXRoZXIuCiAgICAgKiBUaGlzIHdvcmtzIHByb3Blcmx5IG9ubHkgb24gc29ydGVkIGRhdGFzZXRzLgogICAgICoKICAgICAqIFdoZW4gbWluU2l6ZSBpcyBub3QgcHJvdmlkZWQsIGJhdGNoZXMgd2lsbCBiZSBjcmVhdGVkIG9ubHkgd2hlbiB0aGVyZSBpcyBhIGNoYW5nZSBpbiB2YWx1ZSBvZiB0aGUgY29sdW1uLgogICAgICogV2hlbiBtaW5TaXplIGlzIHByb3ZpZGVkLCBiYXRjaGVzIHdpbGwgYmUgY3JlYXRlZCBvbmx5IHdoZW4gdGhlcmUgaXMgYSBjaGFuZ2UgaW4gdmFsdWUgb2YgdGhlIGNvbHVtbiBvcgogICAgICogd2hlbiB0aGVyZSBhcmUgYXQgbGVhc3QgbWluU2l6ZSByb3dzIGluIHRoZSBiYXRjaC4KICAgICAqCiAgICAgKiBAcGFyYW0gUmVmZXJlbmNlfHN0cmluZyAkY29sdW1uIC0gY29sdW1uIHRvIGdyb3VwIGJ5IChhbGwgcm93cyB3aXRoIHNhbWUgdmFsdWUgc3RheSB0b2dldGhlcikKICAgICAqIEBwYXJhbSBudWxsfGludDwxLCBtYXg+ICRtaW5TaXplIC0gb3B0aW9uYWwgbWluaW11bSByb3dzIHBlciBiYXRjaCBmb3IgZWZmaWNpZW5jeQogICAgICoKICAgICAqIEBsYXp5CiAgICAgKgogICAgICogQHRocm93cyBJbnZhbGlkQXJndW1lbnRFeGNlcHRpb24KICAgICAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":124,"slug":"batchsize","name":"batchSize","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"size","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBNZXJnZS9TcGxpdCBSb3dzIHlpZWxkZWQgYnkgRXh0cmFjdG9yIGludG8gYmF0Y2hlcyBvZiBnaXZlbiBzaXplLgogICAgICogRm9yIGV4YW1wbGUsIHdoZW4gRXh0cmFjdG9yIGlzIHlpZWxkaW5nIG9uZSByb3cgYXQgdGltZSwgdGhpcyBtZXRob2Qgd2lsbCBtZXJnZSB0aGVtIGludG8gYmF0Y2hlcyBvZiBnaXZlbiBzaXplCiAgICAgKiBiZWZvcmUgcGFzc2luZyB0aGVtIHRvIHRoZSBuZXh0IHBpcGVsaW5lIGVsZW1lbnQuCiAgICAgKiBTaW1pbGFybHkgd2hlbiBFeHRyYWN0b3IgaXMgeWllbGRpbmcgYmF0Y2hlcyBvZiByb3dzLCB0aGlzIG1ldGhvZCB3aWxsIHNwbGl0IHRoZW0gaW50byBzbWFsbGVyIGJhdGNoZXMgb2YgZ2l2ZW4KICAgICAqIHNpemUuCiAgICAgKgogICAgICogSW4gb3JkZXIgdG8gbWVyZ2UgYWxsIFJvd3MgaW50byBhIHNpbmdsZSBiYXRjaCB1c2UgRGF0YUZyYW1lOjpjb2xsZWN0KCkgbWV0aG9kIG9yIHNldCBzaXplIHRvIC0xIG9yIDAuCiAgICAgKgogICAgICogQHBhcmFtIGludDwxLCBtYXg+ICRzaXplCiAgICAgKgogICAgICogQGxhenkKICAgICAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":151,"slug":"cache","name":"cache","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"id","type":[{"name":"string","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"cacheBatchSize","type":[{"name":"int","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBTdGFydCBwcm9jZXNzaW5nIHJvd3MgdXAgdG8gdGhpcyBtb21lbnQgYW5kIHB1dCBlYWNoIGluc3RhbmNlIG9mIFJvd3MKICAgICAqIGludG8gcHJldmlvdXNseSBkZWZpbmVkIGNhY2hlLgogICAgICogQ2FjaGUgdHlwZSBjYW4gYmUgc2V0IHRocm91Z2ggQ29uZmlnQnVpbGRlci4KICAgICAqIEJ5IGRlZmF1bHQgZXZlcnl0aGluZyBpcyBjYWNoZWQgaW4gc3lzdGVtIHRtcCBkaXIuCiAgICAgKgogICAgICogSW1wb3J0YW50OiBjYWNoZSBiYXRjaCBzaXplIG1pZ2h0IHNpZ25pZmljYW50bHkgaW1wcm92ZSBwZXJmb3JtYW5jZSB3aGVuIHByb2Nlc3NpbmcgbGFyZ2UgYW1vdW50IG9mIHJvd3MuCiAgICAgKiBMYXJnZXIgYmF0Y2ggc2l6ZSB3aWxsIGluY3JlYXNlIG1lbW9yeSBjb25zdW1wdGlvbiBidXQgd2lsbCByZWR1Y2UgbnVtYmVyIG9mIElPIG9wZXJhdGlvbnMuCiAgICAgKiBXaGVuIG5vdCBzZXQsIHRoZSBiYXRjaCBzaXplIGlzIHRha2VuIGZyb20gdGhlIGxhc3QgRGF0YUZyYW1lOjpiYXRjaFNpemUoKSBjYWxsLgogICAgICoKICAgICAqIEBsYXp5CiAgICAgKgogICAgICogQHBhcmFtIG51bGx8c3RyaW5nICRpZAogICAgICoKICAgICAqIEB0aHJvd3MgSW52YWxpZEFyZ3VtZW50RXhjZXB0aW9uCiAgICAgKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":172,"slug":"collect","name":"collect","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBCZWZvcmUgdHJhbnNmb3JtaW5nIHJvd3MsIGNvbGxlY3QgdGhlbSBhbmQgbWVyZ2UgaW50byBzaW5nbGUgUm93cyBpbnN0YW5jZS4KICAgICAqIFRoaXMgbWlnaHQgbGVhZCB0byBtZW1vcnkgaXNzdWVzIHdoZW4gcHJvY2Vzc2luZyBsYXJnZSBhbW91bnQgb2Ygcm93cywgdXNlIHdpdGggY2F1dGlvbi4KICAgICAqCiAgICAgKiBAbGF6eQogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":191,"slug":"collectrefs","name":"collectRefs","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"references","type":[{"name":"References","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBUaGlzIG1ldGhvZCBhbGxvd3MgdG8gY29sbGVjdCByZWZlcmVuY2VzIHRvIGFsbCBlbnRyaWVzIHVzZWQgaW4gdGhpcyBwaXBlbGluZS4KICAgICAqCiAgICAgKiBgYGBwaHAKICAgICAqIChuZXcgRmxvdygpKQogICAgICogICAtPnJlYWQoRnJvbTo6Y2hhaW4oKSkKICAgICAqICAgLT5jb2xsZWN0UmVmcygkcmVmcyA9IHJlZnMoKSkKICAgICAqICAgLT5ydW4oKTsKICAgICAqIGBgYAogICAgICoKICAgICAqIEBsYXp5CiAgICAgKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":204,"slug":"constrain","name":"constrain","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"constraint","type":[{"name":"Constraint","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"constraints","type":[{"name":"Constraint","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":217,"slug":"count","name":"count","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[],"return_type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAdHJpZ2dlcgogICAgICogUmV0dXJuIHRvdGFsIGNvdW50IG9mIHJvd3MgcHJvY2Vzc2VkIGJ5IHRoaXMgcGlwZWxpbmUuCiAgICAgKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":238,"slug":"crossjoin","name":"crossJoin","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"dataFrame","type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"prefix","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"''"}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAbGF6eQogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":255,"slug":"display","name":"display","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"limit","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"20"},{"name":"truncate","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"20"},{"name":"formatter","type":[{"name":"Formatter","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Formatter\\AsciiTableFormatter::..."}],"return_type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAcGFyYW0gaW50ICRsaW1pdCBtYXhpbXVtIG51bWJlcnMgb2Ygcm93cyB0byBkaXNwbGF5CiAgICAgKiBAcGFyYW0gYm9vbHxpbnQgJHRydW5jYXRlIGZhbHNlIG9yIGlmIHNldCB0byAwIGNvbHVtbnMgYXJlIG5vdCB0cnVuY2F0ZWQsIG90aGVyd2lzZSBkZWZhdWx0IHRydW5jYXRlIHRvIDIwCiAgICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgIGNoYXJhY3RlcnMKICAgICAqIEBwYXJhbSBGb3JtYXR0ZXIgJGZvcm1hdHRlcgogICAgICoKICAgICAqIEB0cmlnZ2VyCiAgICAgKgogICAgICogQHRocm93cyBJbnZhbGlkQXJndW1lbnRFeGNlcHRpb24KICAgICAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":280,"slug":"drop","name":"drop","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"entries","type":[{"name":"Reference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBEcm9wIGdpdmVuIGVudHJpZXMuCiAgICAgKgogICAgICogQGxhenkKICAgICAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":294,"slug":"dropduplicates","name":"dropDuplicates","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"entries","type":[{"name":"Reference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAcGFyYW0gUmVmZXJlbmNlfHN0cmluZyAuLi4kZW50cmllcwogICAgICoKICAgICAqIEBsYXp5CiAgICAgKgogICAgICogQHJldHVybiAkdGhpcwogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":307,"slug":"droppartitions","name":"dropPartitions","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"dropPartitionColumns","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBEcm9wIGFsbCBwYXJ0aXRpb25zIGZyb20gUm93cywgYWRkaXRpb25hbGx5IHdoZW4gJGRyb3BQYXJ0aXRpb25Db2x1bW5zIGlzIHNldCB0byB0cnVlLCBwYXJ0aXRpb24gY29sdW1ucyBhcmUKICAgICAqIGFsc28gcmVtb3ZlZC4KICAgICAqCiAgICAgKiBAbGF6eQogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":314,"slug":"duplicaterow","name":"duplicateRow","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"condition","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"entries","type":[{"name":"WithEntry","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":334,"slug":"fetch","name":"fetch","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"limit","type":[{"name":"int","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Rows","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBCZSBhd2FyZSB0aGF0IGZldGNoIGlzIG5vdCBtZW1vcnkgc2FmZSBhbmQgd2lsbCBsb2FkIGFsbCByb3dzIGludG8gbWVtb3J5LgogICAgICogSWYgeW91IHdhbnQgdG8gc2FmZWx5IGl0ZXJhdGUgb3ZlciBSb3dzIHVzZSBvZSBvZiB0aGUgZm9sbG93aW5nIG1ldGhvZHM6LgogICAgICoKICAgICAqIERhdGFGcmFtZTo6Z2V0KCkgOiBcR2VuZXJhdG9yCiAgICAgKiBEYXRhRnJhbWU6OmdldEFzQXJyYXkoKSA6IFxHZW5lcmF0b3IKICAgICAqIERhdGFGcmFtZTo6Z2V0RWFjaCgpIDogXEdlbmVyYXRvcgogICAgICogRGF0YUZyYW1lOjpnZXRFYWNoQXNBcnJheSgpIDogXEdlbmVyYXRvcgogICAgICoKICAgICAqIEB0cmlnZ2VyCiAgICAgKgogICAgICogQHRocm93cyBJbnZhbGlkQXJndW1lbnRFeGNlcHRpb24KICAgICAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":359,"slug":"filter","name":"filter","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"function","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAbGF6eQogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":371,"slug":"filterpartitions","name":"filterPartitions","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"filter","type":[{"name":"Filter","namespace":"Flow\\Filesystem\\Path","is_nullable":false,"is_variadic":false},{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAbGF6eQogICAgICoKICAgICAqIEB0aHJvd3MgUnVudGltZUV4Y2VwdGlvbgogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":402,"slug":"filters","name":"filters","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"functions","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAbGF6eQogICAgICoKICAgICAqIEBwYXJhbSBhcnJheTxTY2FsYXJGdW5jdGlvbj4gJGZ1bmN0aW9ucwogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":416,"slug":"foreach","name":"forEach","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"callback","type":[{"name":"callable","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"void","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAdHJpZ2dlcgogICAgICoKICAgICAqIEBwYXJhbSBudWxsfGNhbGxhYmxlKFJvd3MgJHJvd3MpIDogdm9pZCAkY2FsbGJhY2sKICAgICAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":428,"slug":"get","name":"get","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[],"return_type":[{"name":"Generator","namespace":"","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBZaWVsZHMgZWFjaCByb3cgYXMgYW4gaW5zdGFuY2Ugb2YgUm93cy4KICAgICAqCiAgICAgKiBAdHJpZ2dlcgogICAgICoKICAgICAqIEByZXR1cm4gXEdlbmVyYXRvcjxSb3dzPgogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":449,"slug":"getasarray","name":"getAsArray","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[],"return_type":[{"name":"Generator","namespace":"","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBZaWVsZHMgZWFjaCByb3cgYXMgYW4gYXJyYXkuCiAgICAgKgogICAgICogQHRyaWdnZXIKICAgICAqCiAgICAgKiBAcmV0dXJuIFxHZW5lcmF0b3I8YXJyYXk8YXJyYXk8bWl4ZWQ+Pj4KICAgICAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":470,"slug":"geteach","name":"getEach","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[],"return_type":[{"name":"Generator","namespace":"","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBZaWVsZCBlYWNoIHJvdyBhcyBhbiBpbnN0YW5jZSBvZiBSb3cuCiAgICAgKgogICAgICogQHRyaWdnZXIKICAgICAqCiAgICAgKiBAcmV0dXJuIFxHZW5lcmF0b3I8Um93PgogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":493,"slug":"geteachasarray","name":"getEachAsArray","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[],"return_type":[{"name":"Generator","namespace":"","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBZaWVsZCBlYWNoIHJvdyBhcyBhbiBhcnJheS4KICAgICAqCiAgICAgKiBAdHJpZ2dlcgogICAgICoKICAgICAqIEByZXR1cm4gXEdlbmVyYXRvcjxhcnJheTxtaXhlZD4+CiAgICAgKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":512,"slug":"groupby","name":"groupBy","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"entries","type":[{"name":"Reference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"GroupedDataFrame","namespace":"Flow\\ETL\\DataFrame","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAbGF6eQogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":520,"slug":"join","name":"join","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"dataFrame","type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"on","type":[{"name":"Expression","namespace":"Flow\\ETL\\Join","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"type","type":[{"name":"Join","namespace":"Flow\\ETL\\Join","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Join\\Join::..."}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAbGF6eQogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":536,"slug":"joineach","name":"joinEach","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"factory","type":[{"name":"DataFrameFactory","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"on","type":[{"name":"Expression","namespace":"Flow\\ETL\\Join","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"type","type":[{"name":"Join","namespace":"Flow\\ETL\\Join","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Join\\Join::..."}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAbGF6eQogICAgICoKICAgICAqIEBwc2FsbS1wYXJhbSBzdHJpbmd8Sm9pbiAkdHlwZQogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":559,"slug":"limit","name":"limit","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"limit","type":[{"name":"int","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAbGF6eQogICAgICoKICAgICAqIEB0aHJvd3MgSW52YWxpZEFyZ3VtZW50RXhjZXB0aW9uCiAgICAgKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":573,"slug":"load","name":"load","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"loader","type":[{"name":"Loader","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAbGF6eQogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":585,"slug":"map","name":"map","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"callback","type":[{"name":"callable","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAbGF6eQogICAgICoKICAgICAqIEBwYXJhbSBjYWxsYWJsZShSb3cgJHJvdykgOiBSb3cgJGNhbGxiYWNrCiAgICAgKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":597,"slug":"match","name":"match","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"schema","type":[{"name":"Schema","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"validator","type":[{"name":"SchemaValidator","namespace":"Flow\\ETL","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAbGF6eQogICAgICoKICAgICAqIEBwYXJhbSBudWxsfFNjaGVtYVZhbGlkYXRvciAkdmFsaWRhdG9yIC0gd2hlbiBudWxsLCBTdHJpY3RWYWxpZGF0b3IgZ2V0cyBpbml0aWFsaXplZAogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":615,"slug":"mode","name":"mode","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"mode","type":[{"name":"SaveMode","namespace":"Flow\\ETL\\Filesystem","is_nullable":false,"is_variadic":false},{"name":"ExecutionMode","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBUaGlzIG1ldGhvZCBpcyB1c2VkIHRvIHNldCB0aGUgYmVoYXZpb3Igb2YgdGhlIERhdGFGcmFtZS4KICAgICAqCiAgICAgKiBBdmFpbGFibGUgbW9kZXM6CiAgICAgKiAtIFNhdmVNb2RlIGRlZmluZXMgaG93IEZsb3cgc2hvdWxkIGJlaGF2ZSB3aGVuIHdyaXRpbmcgdG8gYSBmaWxlL2ZpbGVzIHRoYXQgYWxyZWFkeSBleGlzdHMuCiAgICAgKiAtIEV4ZWN1dGlvbk1vZGUgLSBkZWZpbmVzIGhvdyBmdW5jdGlvbnMgc2hvdWxkIGJlaGF2ZSB3aGVuIHRoZXkgZW5jb3VudGVyIHVuZXhwZWN0ZWQgZGF0YSAoZS5nLiwgdHlwZSBtaXNtYXRjaGVzLCBtaXNzaW5nIHZhbHVlcykuCiAgICAgKgogICAgICogQGxhenkKICAgICAqCiAgICAgKiBAcmV0dXJuICR0aGlzCiAgICAgKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":640,"slug":"offset","name":"offset","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"offset","type":[{"name":"int","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBTa2lwIGdpdmVuIG51bWJlciBvZiByb3dzIGZyb20gdGhlIGJlZ2lubmluZyBvZiB0aGUgZGF0YXNldC4KICAgICAqIFdoZW4gJG9mZnNldCBpcyBudWxsLCBub3RoaW5nIGhhcHBlbnMgKG5vIHJvd3MgYXJlIHNraXBwZWQpLgogICAgICoKICAgICAqIFBlcmZvcm1hbmNlIE5vdGU6IERhdGFGcmFtZSBtdXN0IGl0ZXJhdGUgdGhyb3VnaCBhbmQgcHJvY2VzcyBhbGwgc2tpcHBlZCByb3dzCiAgICAgKiB0byByZWFjaCB0aGUgb2Zmc2V0IHBvc2l0aW9uLiBGb3IgbGFyZ2Ugb2Zmc2V0cywgdGhpcyBjYW4gaW1wYWN0IHBlcmZvcm1hbmNlCiAgICAgKiBhcyB0aGUgZGF0YSBzb3VyY2Ugc3RpbGwgbmVlZHMgdG8gYmUgcmVhZCBhbmQgcHJvY2Vzc2VkIHVwIHRvIHRoZSBvZmZzZXQgcG9pbnQuCiAgICAgKgogICAgICogQHBhcmFtID9pbnQ8MCwgbWF4PiAkb2Zmc2V0CiAgICAgKgogICAgICogQGxhenkKICAgICAqCiAgICAgKiBAdGhyb3dzIEludmFsaWRBcmd1bWVudEV4Y2VwdGlvbgogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":654,"slug":"onerror","name":"onError","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"handler","type":[{"name":"ErrorHandler","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAbGF6eQogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":664,"slug":"partitionby","name":"partitionBy","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"entry","type":[{"name":"Reference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"entries","type":[{"name":"Reference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAbGF6eQogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":673,"slug":"pivot","name":"pivot","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"ref","type":[{"name":"Reference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":689,"slug":"printrows","name":"printRows","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"limit","type":[{"name":"int","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"20"},{"name":"truncate","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"20"},{"name":"formatter","type":[{"name":"Formatter","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Formatter\\AsciiTableFormatter::..."}],"return_type":[{"name":"void","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAdHJpZ2dlcgogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":703,"slug":"printschema","name":"printSchema","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"limit","type":[{"name":"int","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"20"},{"name":"formatter","type":[{"name":"SchemaFormatter","namespace":"Flow\\ETL\\Schema","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Row\\Formatter\\ASCIISchemaFormatter::..."}],"return_type":[{"name":"void","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAdHJpZ2dlcgogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":716,"slug":"rename","name":"rename","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"from","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"to","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAbGF6eQogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":723,"slug":"renameeach","name":"renameEach","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"strategies","type":[{"name":"RenameEntryStrategy","namespace":"Flow\\ETL\\Transformer\\Rename","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":730,"slug":"reorderentries","name":"reorderEntries","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"comparator","type":[{"name":"Comparator","namespace":"Flow\\ETL\\Transformer\\OrderEntries","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Transformer\\OrderEntries\\TypeComparator::..."}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":741,"slug":"rows","name":"rows","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"transformer","type":[{"name":"Transformer","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false},{"name":"Transformation","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAbGF6eQogICAgICogQWxpYXMgZm9yIEVUTDo6dHJhbnNmb3JtIG1ldGhvZC4KICAgICAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":759,"slug":"run","name":"run","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"callback","type":[{"name":"callable","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"analyze","type":[{"name":"Analyze","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false},{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"Report","namespace":"Flow\\ETL\\Dataset","is_nullable":true,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAdHJpZ2dlcgogICAgICoKICAgICAqIFdoZW4gYW5hbHl6aW5nIHBpcGVsaW5lIGV4ZWN1dGlvbiB3ZSBjYW4gY2hvc2UgdG8gY29sbGVjdCB2YXJpb3VzIG1ldHJpY3MgdGhyb3VnaCBhbmFseXplKCktPndpdGgqKCkgbWV0aG9kCiAgICAgKgogICAgICogLSBjb2x1bW4gc3RhdGlzdGljcyAtIGFuYWx5emUoKS0+d2l0aENvbHVtblN0YXRpc3RpY3MoKQogICAgICogLSBzY2hlbWEgLSBhbmFseXplKCktPndpdGhTY2hlbWEoKQogICAgICoKICAgICAqIEBwYXJhbSBudWxsfGNhbGxhYmxlKFJvd3MgJHJvd3MsIEZsb3dDb250ZXh0ICRjb250ZXh0KTogdm9pZCAkY2FsbGJhY2sKICAgICAqIEBwYXJhbSBBbmFseXplfGJvb2wgJGFuYWx5emUgLSB3aGVuIHNldCBydW4gd2lsbCByZXR1cm4gUmVwb3J0CiAgICAgKgogICAgICogQHJldHVybiAoJGFuYWx5emUgaXMgQW5hbHl6ZXx0cnVlID8gUmVwb3J0IDogbnVsbCkKICAgICAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":791,"slug":"savemode","name":"saveMode","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"mode","type":[{"name":"SaveMode","namespace":"Flow\\ETL\\Filesystem","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBBbGlhcyBmb3IgRGF0YUZyYW1lOjptb2RlLgogICAgICoKICAgICAqIEBsYXp5CiAgICAgKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":801,"slug":"schema","name":"schema","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[],"return_type":[{"name":"Schema","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAdHJpZ2dlcgogICAgICoKICAgICAqIEByZXR1cm4gU2NoZW1hCiAgICAgKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":823,"slug":"select","name":"select","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"entries","type":[{"name":"Reference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAbGF6eQogICAgICogS2VlcCBvbmx5IGdpdmVuIGVudHJpZXMuCiAgICAgKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":833,"slug":"sortby","name":"sortBy","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"entries","type":[{"name":"Reference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAbGF6eQogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":845,"slug":"transform","name":"transform","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"transformer","type":[{"name":"Transformer","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false},{"name":"Transformation","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false},{"name":"Transformations","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false},{"name":"WithEntry","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBBbGlhcyBmb3IgRGF0YUZyYW1lOjp3aXRoKCkuCiAgICAgKgogICAgICogQGxhenkKICAgICAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":856,"slug":"until","name":"until","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"function","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBUaGUgZGlmZmVyZW5jZSBiZXR3ZWVuIGZpbHRlciBhbmQgdW50aWwgaXMgdGhhdCBmaWx0ZXIgd2lsbCBrZWVwIGZpbHRlcmluZyByb3dzIHVudGlsIGV4dHJhY3RvcnMgZmluaXNoIHlpZWxkaW5nCiAgICAgKiByb3dzLiBVbnRpbCB3aWxsIHNlbmQgYSBTVE9QIHNpZ25hbCB0byB0aGUgRXh0cmFjdG9yIHdoZW4gdGhlIGNvbmRpdGlvbiBpcyBub3QgbWV0LgogICAgICoKICAgICAqIEBsYXp5CiAgICAgKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":870,"slug":"validate","name":"validate","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"schema","type":[{"name":"Schema","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"validator","type":[{"name":"SchemaValidator","namespace":"Flow\\ETL","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAZGVwcmVjYXRlZCBQbGVhc2UgdXNlIERhdGFGcmFtZTo6bWF0Y2ggaW5zdGVhZAogICAgICoKICAgICAqIEBsYXp5CiAgICAgKgogICAgICogQHBhcmFtIG51bGx8U2NoZW1hVmFsaWRhdG9yICR2YWxpZGF0b3IgLSB3aGVuIG51bGwsIFN0cmljdFZhbGlkYXRvciBnZXRzIGluaXRpYWxpemVkCiAgICAgKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":884,"slug":"void","name":"void","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAbGF6eQogICAgICogVGhpcyBtZXRob2QgaXMgdXNlZnVsIG1vc3RseSBpbiBkZXZlbG9wbWVudCB3aGVuCiAgICAgKiB5b3Ugd2FudCB0byBwYXVzZSBwcm9jZXNzaW5nIGF0IGNlcnRhaW4gbW9tZW50IHdpdGhvdXQKICAgICAqIHJlbW92aW5nIGNvZGUuIEFsbCBvcGVyYXRpb25zIHdpbGwgZ2V0IHByb2Nlc3NlZCB1cCB0byB0aGlzIHBvaW50LAogICAgICogZnJvbSBoZXJlIG5vIHJvd3MgYXJlIHBhc3NlZCBmb3J3YXJkLgogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":894,"slug":"with","name":"with","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"transformer","type":[{"name":"Transformer","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false},{"name":"Transformation","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false},{"name":"Transformations","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false},{"name":"WithEntry","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAbGF6eQogICAgICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":922,"slug":"withentries","name":"withEntries","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"references","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAbGF6eQogICAgICoKICAgICAqIEBwYXJhbSBhcnJheTxpbnQsIFdpdGhFbnRyeT58YXJyYXk8c3RyaW5nLCBTY2FsYXJGdW5jdGlvbnxXaW5kb3dGdW5jdGlvbnxXaXRoRW50cnk+ICRyZWZlcmVuY2VzCiAgICAgKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":940,"slug":"withentry","name":"withEntry","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"entry","type":[{"name":"Definition","namespace":"Flow\\ETL\\Schema","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"reference","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"WindowFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAcGFyYW0gRGVmaW5pdGlvbjxtaXhlZD58c3RyaW5nICRlbnRyeQogICAgICoKICAgICAqIEBsYXp5CiAgICAgKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame.php","start_line_in_file":967,"slug":"write","name":"write","class":"Flow\\ETL\\DataFrame","class_slug":"dataframe","parameters":[{"name":"loader","type":[{"name":"Loader","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":"LyoqCiAgICAgKiBAbGF6eQogICAgICogQWxpYXMgZm9yIEVUTDo6bG9hZCBmdW5jdGlvbi4KICAgICAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame\/GroupedDataFrame.php","start_line_in_file":18,"slug":"aggregate","name":"aggregate","class":"Flow\\ETL\\DataFrame\\GroupedDataFrame","class_slug":"groupeddataframe","parameters":[{"name":"aggregations","type":[{"name":"AggregatingFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"DataFrame","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DataFrame\/GroupedDataFrame.php","start_line_in_file":34,"slug":"pivot","name":"pivot","class":"Flow\\ETL\\DataFrame\\GroupedDataFrame","class_slug":"groupeddataframe","parameters":[{"name":"ref","type":[{"name":"Reference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"self","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[],"scalar_function_chain":false,"doc_comment":null}] \ No newline at end of file diff --git a/web/landing/resources/dsl.json b/web/landing/resources/dsl.json index 71ebbe01d8..65d2600b4a 100644 --- a/web/landing/resources/dsl.json +++ b/web/landing/resources/dsl.json @@ -1 +1 @@ -[{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":256,"slug":"df","name":"df","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"config","type":[{"name":"Config","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false},{"name":"ConfigBuilder","namespace":"Flow\\ETL\\Config","is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Flow","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}},{"name":"DocumentationExample","namespace":"Flow\\ETL\\Attribute","arguments":{"topic":"data_frame","example":"data_reading","option":"data_frame"}},{"name":"DocumentationExample","namespace":"Flow\\ETL\\Attribute","arguments":{"topic":"data_frame","example":"data_writing","option":"overwrite"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEFsaWFzIGZvciBkYXRhX2ZyYW1lKCkgOiBGbG93LgogKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":264,"slug":"data-frame","name":"data_frame","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"config","type":[{"name":"Config","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false},{"name":"ConfigBuilder","namespace":"Flow\\ETL\\Config","is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Flow","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}},{"name":"DocumentationExample","namespace":"Flow\\ETL\\Attribute","arguments":{"topic":"data_frame","example":"data_reading","option":"data_frame"}},{"name":"DocumentationExample","namespace":"Flow\\ETL\\Attribute","arguments":{"topic":"data_frame","example":"data_writing","option":"overwrite"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":270,"slug":"telemetry-options","name":"telemetry_options","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"trace_loading","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"trace_transformations","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"trace_cache","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"collect_metrics","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"filesystem","type":[{"name":"FilesystemTelemetryOptions","namespace":"Flow\\Filesystem\\Telemetry","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"TelemetryOptions","namespace":"Flow\\ETL\\Config\\Telemetry","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":289,"slug":"from-rows","name":"from_rows","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"rows","type":[{"name":"Rows","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"RowsExtractor","namespace":"Flow\\ETL\\Extractor","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"EXTRACTOR"}},{"name":"DocumentationExample","namespace":"Flow\\ETL\\Attribute","arguments":{"topic":"data_frame","example":"data_reading","option":"data_frame"}},{"name":"DocumentationExample","namespace":"Flow\\ETL\\Attribute","arguments":{"topic":"data_frame","example":"data_writing","option":"overwrite"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":296,"slug":"from-path-partitions","name":"from_path_partitions","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"path","type":[{"name":"Path","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"PathPartitionsExtractor","namespace":"Flow\\ETL\\Extractor","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"EXTRACTOR"}},{"name":"DocumentationExample","namespace":"Flow\\ETL\\Attribute","arguments":{"topic":"partitioning","example":"path_partitions"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":308,"slug":"from-array","name":"from_array","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"array","type":[{"name":"iterable","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"schema","type":[{"name":"Schema","namespace":"Flow\\ETL","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"ArrayExtractor","namespace":"Flow\\ETL\\Extractor","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"EXTRACTOR"}},{"name":"DocumentationExample","namespace":"Flow\\ETL\\Attribute","arguments":{"topic":"data_frame","example":"data_reading","option":"array"}},{"name":"DocumentationExample","namespace":"Flow\\ETL\\Attribute","arguments":{"topic":"data_frame","example":"data_reading","option":"data_frame"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBpdGVyYWJsZTxhcnJheTxtaXhlZD4+ICRhcnJheQogKiBAcGFyYW0gbnVsbHxTY2hlbWEgJHNjaGVtYSAtIEBkZXByZWNhdGVkIHVzZSB3aXRoU2NoZW1hKCkgbWV0aG9kIGluc3RlYWQKICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":325,"slug":"from-cache","name":"from_cache","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"id","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"fallback_extractor","type":[{"name":"Extractor","namespace":"Flow\\ETL","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"clear","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"CacheExtractor","namespace":"Flow\\ETL\\Extractor","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"EXTRACTOR"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBzdHJpbmcgJGlkIC0gY2FjaGUgaWQgZnJvbSB3aGljaCBkYXRhIHdpbGwgYmUgZXh0cmFjdGVkCiAqIEBwYXJhbSBudWxsfEV4dHJhY3RvciAkZmFsbGJhY2tfZXh0cmFjdG9yIC0gZXh0cmFjdG9yIHRoYXQgd2lsbCBiZSB1c2VkIHdoZW4gY2FjaGUgaXMgZW1wdHkgLSBAZGVwcmVjYXRlZCB1c2Ugd2l0aEZhbGxiYWNrRXh0cmFjdG9yKCkgbWV0aG9kIGluc3RlYWQKICogQHBhcmFtIGJvb2wgJGNsZWFyIC0gY2xlYXIgY2FjaGUgYWZ0ZXIgZXh0cmFjdGlvbiAtIEBkZXByZWNhdGVkIHVzZSB3aXRoQ2xlYXJPbkZpbmlzaCgpIG1ldGhvZCBpbnN0ZWFkCiAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":341,"slug":"from-all","name":"from_all","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"extractors","type":[{"name":"Extractor","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"ChainExtractor","namespace":"Flow\\ETL\\Extractor","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"EXTRACTOR"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":347,"slug":"from-memory","name":"from_memory","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"memory","type":[{"name":"Memory","namespace":"Flow\\ETL\\Memory","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"MemoryExtractor","namespace":"Flow\\ETL\\Extractor","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"EXTRACTOR"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":353,"slug":"files","name":"files","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"directory","type":[{"name":"Path","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"FilesExtractor","namespace":"Flow\\ETL\\Extractor","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"EXTRACTOR"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":359,"slug":"filesystem-cache","name":"filesystem_cache","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"cache_dir","type":[{"name":"Path","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"filesystem","type":[{"name":"Filesystem","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\Filesystem\\Local\\NativeLocalFilesystem::..."},{"name":"serializer","type":[{"name":"Serializer","namespace":"Flow\\Serializer","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\Serializer\\NativePHPSerializer::..."}],"return_type":[{"name":"FilesystemCache","namespace":"Flow\\ETL\\Cache\\Implementation","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":368,"slug":"batched-by","name":"batched_by","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"extractor","type":[{"name":"Extractor","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"column","type":[{"name":"Reference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"min_size","type":[{"name":"int","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"BatchByExtractor","namespace":"Flow\\ETL\\Extractor","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"EXTRACTOR"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBudWxsfGludDwxLCBtYXg+ICRtaW5fc2l6ZQogKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":381,"slug":"batches","name":"batches","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"extractor","type":[{"name":"Extractor","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"size","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"BatchExtractor","namespace":"Flow\\ETL\\Extractor","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"EXTRACTOR"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBpbnQ8MSwgbWF4PiAkc2l6ZQogKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":392,"slug":"chunks-from","name":"chunks_from","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"extractor","type":[{"name":"Extractor","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"chunk_size","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"BatchExtractor","namespace":"Flow\\ETL\\Extractor","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"EXTRACTOR"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBpbnQ8MSwgbWF4PiAkY2h1bmtfc2l6ZQogKgogKiBAZGVwcmVjYXRlZCB1c2UgYmF0Y2hlcygpIGluc3RlYWQKICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":398,"slug":"from-pipeline","name":"from_pipeline","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"pipeline","type":[{"name":"Pipeline","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"PipelineExtractor","namespace":"Flow\\ETL\\Extractor","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"EXTRACTOR"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":404,"slug":"from-data-frame","name":"from_data_frame","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"data_frame","type":[{"name":"DataFrame","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"DataFrameExtractor","namespace":"Flow\\ETL\\Extractor","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"EXTRACTOR"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":410,"slug":"from-sequence-date-period","name":"from_sequence_date_period","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"entry_name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"start","type":[{"name":"DateTimeInterface","namespace":"","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"interval","type":[{"name":"DateInterval","namespace":"","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"end","type":[{"name":"DateTimeInterface","namespace":"","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"options","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"0"}],"return_type":[{"name":"SequenceExtractor","namespace":"Flow\\ETL\\Extractor","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"EXTRACTOR"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":419,"slug":"from-sequence-date-period-recurrences","name":"from_sequence_date_period_recurrences","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"entry_name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"start","type":[{"name":"DateTimeInterface","namespace":"","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"interval","type":[{"name":"DateInterval","namespace":"","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"recurrences","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"options","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"0"}],"return_type":[{"name":"SequenceExtractor","namespace":"Flow\\ETL\\Extractor","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"EXTRACTOR"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":428,"slug":"from-sequence-number","name":"from_sequence_number","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"entry_name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"start","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"float","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"end","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"float","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"step","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"float","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"1"}],"return_type":[{"name":"SequenceExtractor","namespace":"Flow\\ETL\\Extractor","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"EXTRACTOR"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":437,"slug":"to-callable","name":"to_callable","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"callable","type":[{"name":"callable","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"CallbackLoader","namespace":"Flow\\ETL\\Loader","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"LOADER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":443,"slug":"to-memory","name":"to_memory","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"memory","type":[{"name":"Memory","namespace":"Flow\\ETL\\Memory","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"MemoryLoader","namespace":"Flow\\ETL\\Loader","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"LOADER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":457,"slug":"to-array","name":"to_array","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"array","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ArrayLoader","namespace":"Flow\\ETL\\Loader","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"LOADER"}},{"name":"DocumentationExample","namespace":"Flow\\ETL\\Attribute","arguments":{"topic":"data_frame","example":"data_writing","option":"array"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENvbnZlcnQgcm93cyB0byBhbiBhcnJheSBhbmQgc3RvcmUgdGhlbSBpbiBwYXNzZWQgYXJyYXkgdmFyaWFibGUuCiAqCiAqIEBwYXJhbSBhcnJheTxhcnJheS1rZXksIG1peGVkPiAkYXJyYXkKICoKICogQHBhcmFtLW91dCBhcnJheTxhcnJheTxtaXhlZD4+ICRhcnJheQogKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":464,"slug":"to-output","name":"to_output","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"truncate","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"20"},{"name":"output","type":[{"name":"Output","namespace":"Flow\\ETL\\Loader\\StreamLoader","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Loader\\StreamLoader\\Output::..."},{"name":"formatter","type":[{"name":"Formatter","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Formatter\\AsciiTableFormatter::..."},{"name":"schemaFormatter","type":[{"name":"SchemaFormatter","namespace":"Flow\\ETL\\Schema","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Row\\Formatter\\ASCIISchemaFormatter::..."}],"return_type":[{"name":"StreamLoader","namespace":"Flow\\ETL\\Loader","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"LOADER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":470,"slug":"to-stderr","name":"to_stderr","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"truncate","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"20"},{"name":"output","type":[{"name":"Output","namespace":"Flow\\ETL\\Loader\\StreamLoader","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Loader\\StreamLoader\\Output::..."},{"name":"formatter","type":[{"name":"Formatter","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Formatter\\AsciiTableFormatter::..."},{"name":"schemaFormatter","type":[{"name":"SchemaFormatter","namespace":"Flow\\ETL\\Schema","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Row\\Formatter\\ASCIISchemaFormatter::..."}],"return_type":[{"name":"StreamLoader","namespace":"Flow\\ETL\\Loader","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"LOADER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":476,"slug":"to-stdout","name":"to_stdout","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"truncate","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"20"},{"name":"output","type":[{"name":"Output","namespace":"Flow\\ETL\\Loader\\StreamLoader","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Loader\\StreamLoader\\Output::..."},{"name":"formatter","type":[{"name":"Formatter","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Formatter\\AsciiTableFormatter::..."},{"name":"schemaFormatter","type":[{"name":"SchemaFormatter","namespace":"Flow\\ETL\\Schema","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Row\\Formatter\\ASCIISchemaFormatter::..."}],"return_type":[{"name":"StreamLoader","namespace":"Flow\\ETL\\Loader","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"LOADER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":482,"slug":"to-stream","name":"to_stream","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"uri","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"truncate","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"20"},{"name":"output","type":[{"name":"Output","namespace":"Flow\\ETL\\Loader\\StreamLoader","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Loader\\StreamLoader\\Output::..."},{"name":"mode","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'w'"},{"name":"formatter","type":[{"name":"Formatter","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Formatter\\AsciiTableFormatter::..."},{"name":"schemaFormatter","type":[{"name":"SchemaFormatter","namespace":"Flow\\ETL\\Schema","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Row\\Formatter\\ASCIISchemaFormatter::..."}],"return_type":[{"name":"StreamLoader","namespace":"Flow\\ETL\\Loader","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"LOADER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":488,"slug":"to-transformation","name":"to_transformation","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"transformer","type":[{"name":"Transformer","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false},{"name":"Transformation","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"loader","type":[{"name":"Loader","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"TransformerLoader","namespace":"Flow\\ETL\\Loader","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"LOADER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":494,"slug":"to-branch","name":"to_branch","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"condition","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"loader","type":[{"name":"Loader","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"BranchingLoader","namespace":"Flow\\ETL\\Loader","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"LOADER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":500,"slug":"rename-style","name":"rename_style","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"style","type":[{"name":"StringStyles","namespace":"Flow\\ETL\\Function\\StyleConverter","is_nullable":false,"is_variadic":false},{"name":"StringStyles","namespace":"Flow\\ETL\\String","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"RenameCaseEntryStrategy","namespace":"Flow\\ETL\\Transformer\\Rename","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"TRANSFORMER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":510,"slug":"rename-replace","name":"rename_replace","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"search","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"replace","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"RenameReplaceEntryStrategy","namespace":"Flow\\ETL\\Transformer\\Rename","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"TRANSFORMER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxzdHJpbmc+fHN0cmluZyAkc2VhcmNoCiAqIEBwYXJhbSBhcnJheTxzdHJpbmc+fHN0cmluZyAkcmVwbGFjZQogKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":519,"slug":"bool-entry","name":"bool_entry","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"value","type":[{"name":"bool","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Entry","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"ENTRY"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gRW50cnk8P2Jvb2w+CiAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":528,"slug":"boolean-entry","name":"boolean_entry","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"value","type":[{"name":"bool","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Entry","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"ENTRY"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gRW50cnk8P2Jvb2w+CiAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":537,"slug":"datetime-entry","name":"datetime_entry","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"value","type":[{"name":"DateTimeInterface","namespace":"","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Entry","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"ENTRY"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gRW50cnk8P1xEYXRlVGltZUludGVyZmFjZT4KICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":546,"slug":"time-entry","name":"time_entry","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"value","type":[{"name":"DateInterval","namespace":"","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Entry","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"ENTRY"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gRW50cnk8P1xEYXRlSW50ZXJ2YWw+CiAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":555,"slug":"date-entry","name":"date_entry","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"value","type":[{"name":"DateTimeInterface","namespace":"","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Entry","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"ENTRY"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gRW50cnk8P1xEYXRlVGltZUludGVyZmFjZT4KICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":564,"slug":"int-entry","name":"int_entry","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"value","type":[{"name":"int","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Entry","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"ENTRY"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gRW50cnk8P2ludD4KICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":573,"slug":"integer-entry","name":"integer_entry","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"value","type":[{"name":"int","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Entry","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"ENTRY"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gRW50cnk8P2ludD4KICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":582,"slug":"enum-entry","name":"enum_entry","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"enum","type":[{"name":"UnitEnum","namespace":"","is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Entry","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"ENTRY"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gRW50cnk8P1xVbml0RW51bT4KICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":591,"slug":"float-entry","name":"float_entry","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"value","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"float","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Entry","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"ENTRY"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gRW50cnk8P2Zsb2F0PgogKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":602,"slug":"json-entry","name":"json_entry","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"data","type":[{"name":"Json","namespace":"Flow\\Types\\Value","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Entry","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"ENTRY"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBudWxsfGFycmF5PGFycmF5LWtleSwgbWl4ZWQ+fEpzb258c3RyaW5nICRkYXRhCiAqCiAqIEByZXR1cm4gRW50cnk8P0pzb24+CiAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":615,"slug":"json-object-entry","name":"json_object_entry","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"data","type":[{"name":"Json","namespace":"Flow\\Types\\Value","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Entry","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"ENTRY"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBudWxsfGFycmF5PGFycmF5LWtleSwgbWl4ZWQ+fEpzb258c3RyaW5nICRkYXRhCiAqCiAqIEB0aHJvd3MgSW52YWxpZEFyZ3VtZW50RXhjZXB0aW9uCiAqCiAqIEByZXR1cm4gRW50cnk8P0pzb24+CiAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":632,"slug":"str-entry","name":"str_entry","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"value","type":[{"name":"string","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Entry","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"ENTRY"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gRW50cnk8P3N0cmluZz4KICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":650,"slug":"null-entry","name":"null_entry","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Entry","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"ENTRY"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIFRoaXMgZnVuY3Rpb25zIGlzIGFuIGFsaWFzIGZvciBjcmVhdGluZyBzdHJpbmcgZW50cnkgZnJvbSBudWxsLgogKiBUaGUgbWFpbiBkaWZmZXJlbmNlIGJldHdlZW4gdXNpbmcgdGhpcyBmdW5jdGlvbiBhbiBzaW1wbHkgc3RyX2VudHJ5IHdpdGggc2Vjb25kIGFyZ3VtZW50IG51bGwKICogaXMgdGhhdCB0aGlzIGZ1bmN0aW9uIHdpbGwgYWxzbyBrZWVwIGEgbm90ZSBpbiB0aGUgbWV0YWRhdGEgdGhhdCB0eXBlIG1pZ2h0IG5vdCBiZSBmaW5hbC4KICogRm9yIGV4YW1wbGUgd2hlbiB3ZSBuZWVkIHRvIGd1ZXNzIGNvbHVtbiB0eXBlIGZyb20gcm93cyBiZWNhdXNlIHNjaGVtYSB3YXMgbm90IHByb3ZpZGVkLAogKiBhbmQgZ2l2ZW4gY29sdW1uIGluIHRoZSBmaXJzdCByb3cgaXMgbnVsbCwgaXQgbWlnaHQgc3RpbGwgY2hhbmdlIG9uY2Ugd2UgZ2V0IHRvIHRoZSBzZWNvbmQgcm93LgogKiBUaGF0IG1ldGFkYXRhIGlzIHVzZWQgdG8gZGV0ZXJtaW5lIGlmIHN0cmluZ19lbnRyeSB3YXMgY3JlYXRlZCBmcm9tIG51bGwgb3Igbm90LgogKgogKiBCeSBkZXNpZ24gZmxvdyBhc3N1bWVzIHdoZW4gZ3Vlc3NpbmcgY29sdW1uIHR5cGUgdGhhdCBudWxsIHdvdWxkIGJlIGEgc3RyaW5nICh0aGUgbW9zdCBmbGV4aWJsZSB0eXBlKS4KICoKICogQHJldHVybiBFbnRyeTw\/c3RyaW5nPgogKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":659,"slug":"string-entry","name":"string_entry","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"value","type":[{"name":"string","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Entry","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"ENTRY"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gRW50cnk8P3N0cmluZz4KICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":668,"slug":"uuid-entry","name":"uuid_entry","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"value","type":[{"name":"Uuid","namespace":"Flow\\Types\\Value","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Entry","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"ENTRY"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gRW50cnk8P1xGbG93XFR5cGVzXFZhbHVlXFV1aWQ+CiAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":677,"slug":"xml-entry","name":"xml_entry","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"value","type":[{"name":"DOMDocument","namespace":"","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Entry","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"ENTRY"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gRW50cnk8P1xET01Eb2N1bWVudD4KICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":686,"slug":"xml-element-entry","name":"xml_element_entry","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"value","type":[{"name":"DOMElement","namespace":"","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Entry","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"ENTRY"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gRW50cnk8P1xET01FbGVtZW50PgogKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":695,"slug":"html-entry","name":"html_entry","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"value","type":[{"name":"Dom\\HTMLDocument","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Entry","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"ENTRY"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gRW50cnk8P0hUTUxEb2N1bWVudD4KICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":704,"slug":"html-element-entry","name":"html_element_entry","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"value","type":[{"name":"Dom\\HTMLElement","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Entry","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"ENTRY"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gRW50cnk8P0hUTUxFbGVtZW50PgogKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":713,"slug":"entries","name":"entries","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"entries","type":[{"name":"Entry","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"Entries","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBFbnRyeTxtaXhlZD4gLi4uJGVudHJpZXMKICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":727,"slug":"struct-entry","name":"struct_entry","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"value","type":[{"name":"array","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"type","type":[{"name":"StructureType","namespace":"Flow\\Types\\Type\\Logical","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Entry","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"ENTRY"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEB0ZW1wbGF0ZSBUCiAqCiAqIEBwYXJhbSA\/YXJyYXk8c3RyaW5nLCBtaXhlZD4gJHZhbHVlCiAqIEBwYXJhbSBTdHJ1Y3R1cmVUeXBlPFQ+ICR0eXBlCiAqCiAqIEByZXR1cm4gRW50cnk8P2FycmF5PHN0cmluZywgVD4+CiAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":741,"slug":"structure-entry","name":"structure_entry","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"value","type":[{"name":"array","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"type","type":[{"name":"StructureType","namespace":"Flow\\Types\\Type\\Logical","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Entry","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"ENTRY"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEB0ZW1wbGF0ZSBUCiAqCiAqIEBwYXJhbSA\/YXJyYXk8c3RyaW5nLCBtaXhlZD4gJHZhbHVlCiAqIEBwYXJhbSBTdHJ1Y3R1cmVUeXBlPFQ+ICR0eXBlCiAqCiAqIEByZXR1cm4gRW50cnk8P2FycmF5PHN0cmluZywgVD4+CiAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":851,"slug":"list-entry","name":"list_entry","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"value","type":[{"name":"array","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"type","type":[{"name":"ListType","namespace":"Flow\\Types\\Type\\Logical","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Entry","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"ENTRY"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEB0ZW1wbGF0ZSBUCiAqCiAqIEBwYXJhbSBudWxsfGxpc3Q8bWl4ZWQ+ICR2YWx1ZQogKiBAcGFyYW0gTGlzdFR5cGU8VD4gJHR5cGUKICoKICogQHJldHVybiBFbnRyeTxtaXhlZD4KICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":897,"slug":"map-entry","name":"map_entry","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"value","type":[{"name":"array","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"mapType","type":[{"name":"MapType","namespace":"Flow\\Types\\Type\\Logical","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Entry","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"ENTRY"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEB0ZW1wbGF0ZSBUS2V5IG9mIGFycmF5LWtleQogKiBAdGVtcGxhdGUgVFZhbHVlCiAqCiAqIEBwYXJhbSA\/YXJyYXk8YXJyYXkta2V5LCBtaXhlZD4gJHZhbHVlCiAqIEBwYXJhbSBNYXBUeXBlPFRLZXksIFRWYWx1ZT4gJG1hcFR5cGUKICoKICogQHJldHVybiBFbnRyeTw\/YXJyYXk8VEtleSwgVFZhbHVlPj4KICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":930,"slug":"type-date","name":"type_date","namespace":"Flow\\ETL\\DSL","parameters":[],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBkZXByZWNhdGVkIHBsZWFzZSB1c2UgXEZsb3dcVHlwZXNcRFNMXHR5cGVfZGF0ZSgpIDogRGF0ZVR5cGUKICoKICogQHJldHVybiBUeXBlPFxEYXRlVGltZUludGVyZmFjZT4KICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":985,"slug":"type-int","name":"type_int","namespace":"Flow\\ETL\\DSL","parameters":[],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBkZXByZWNhdGVkIHBsZWFzZSB1c2UgXEZsb3dcVHlwZXNcRFNMXHR5cGVfaW50ZWdlcigpIDogSW50ZWdlclR5cGUKICoKICogQHJldHVybiBUeXBlPGludD4KICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1112,"slug":"row","name":"row","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"entry","type":[{"name":"Entry","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"Row","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBFbnRyeTxtaXhlZD4gLi4uJGVudHJ5CiAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1118,"slug":"rows","name":"rows","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"row","type":[{"name":"Row","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"Rows","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1128,"slug":"rows-partitioned","name":"rows_partitioned","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"rows","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"partitions","type":[{"name":"Partitions","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Rows","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxSb3c+ICRyb3dzCiAqIEBwYXJhbSBhcnJheTxcRmxvd1xGaWxlc3lzdGVtXFBhcnRpdGlvbnxzdHJpbmc+fFBhcnRpdGlvbnMgJHBhcnRpdGlvbnMKICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1137,"slug":"col","name":"col","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"entry","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"EntryReference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":true,"doc_comment":"LyoqCiAqIEFuIGFsaWFzIGZvciBgcmVmYC4KICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1147,"slug":"entry","name":"entry","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"entry","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"EntryReference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}},{"name":"DocumentationExample","namespace":"Flow\\ETL\\Attribute","arguments":{"topic":"data_frame","example":"columns","option":"create"}}],"scalar_function_chain":true,"doc_comment":"LyoqCiAqIEFuIGFsaWFzIGZvciBgcmVmYC4KICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1154,"slug":"ref","name":"ref","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"entry","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"EntryReference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}},{"name":"DocumentationExample","namespace":"Flow\\ETL\\Attribute","arguments":{"topic":"data_frame","example":"columns","option":"create"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1160,"slug":"structure-ref","name":"structure_ref","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"entry","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"StructureFunctions","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1166,"slug":"list-ref","name":"list_ref","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"entry","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ListFunctions","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1172,"slug":"refs","name":"refs","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"entries","type":[{"name":"Reference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"References","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1178,"slug":"select","name":"select","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"entries","type":[{"name":"Reference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"Select","namespace":"Flow\\ETL\\Transformation","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"TRANSFORMER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1184,"slug":"drop","name":"drop","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"entries","type":[{"name":"Reference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"Drop","namespace":"Flow\\ETL\\Transformation","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"TRANSFORMER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1190,"slug":"add-row-index","name":"add_row_index","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"column","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'index'"},{"name":"startFrom","type":[{"name":"StartFrom","namespace":"Flow\\ETL\\Transformation\\AddRowIndex","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Transformation\\AddRowIndex\\StartFrom::..."}],"return_type":[{"name":"AddRowIndex","namespace":"Flow\\ETL\\Transformation","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"TRANSFORMER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1199,"slug":"batch-size","name":"batch_size","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"size","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"BatchSize","namespace":"Flow\\ETL\\Transformation","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"TRANSFORMER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBpbnQ8MSwgbWF4PiAkc2l6ZQogKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1205,"slug":"limit","name":"limit","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"limit","type":[{"name":"int","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Limit","namespace":"Flow\\ETL\\Transformation","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"TRANSFORMER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1214,"slug":"mask-columns","name":"mask_columns","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"columns","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"},{"name":"mask","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'******'"}],"return_type":[{"name":"MaskColumns","namespace":"Flow\\ETL\\Transformation","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"TRANSFORMER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxpbnQsIHN0cmluZz4gJGNvbHVtbnMKICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1220,"slug":"optional","name":"optional","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"function","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Optional","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1227,"slug":"lit","name":"lit","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"value","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Literal","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}},{"name":"DocumentationExample","namespace":"Flow\\ETL\\Attribute","arguments":{"topic":"data_frame","example":"columns","option":"create"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1233,"slug":"exists","name":"exists","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"ref","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Exists","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1239,"slug":"when","name":"when","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"condition","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"then","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"else","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"When","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1245,"slug":"array-get","name":"array_get","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"ref","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"path","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ArrayGet","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1254,"slug":"array-get-collection","name":"array_get_collection","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"ref","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"keys","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ArrayGetCollection","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxhcnJheS1rZXksIG1peGVkPnxTY2FsYXJGdW5jdGlvbiAka2V5cwogKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1260,"slug":"array-get-collection-first","name":"array_get_collection_first","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"ref","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"keys","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"ArrayGetCollection","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1269,"slug":"array-exists","name":"array_exists","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"ref","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"path","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ArrayPathExists","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxhcnJheS1rZXksIG1peGVkPnxTY2FsYXJGdW5jdGlvbiAkcmVmCiAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1279,"slug":"array-merge","name":"array_merge","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"left","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"right","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ArrayMerge","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxhcnJheS1rZXksIG1peGVkPnxTY2FsYXJGdW5jdGlvbiAkbGVmdAogKiBAcGFyYW0gYXJyYXk8YXJyYXkta2V5LCBtaXhlZD58U2NhbGFyRnVuY3Rpb24gJHJpZ2h0CiAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1288,"slug":"array-merge-collection","name":"array_merge_collection","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"array","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ArrayMergeCollection","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxhcnJheS1rZXksIG1peGVkPnxTY2FsYXJGdW5jdGlvbiAkYXJyYXkKICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1294,"slug":"array-key-rename","name":"array_key_rename","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"ref","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"path","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"newName","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ArrayKeyRename","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1300,"slug":"array-keys-style-convert","name":"array_keys_style_convert","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"ref","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"style","type":[{"name":"StringStyles","namespace":"Flow\\ETL\\Function\\StyleConverter","is_nullable":false,"is_variadic":false},{"name":"StringStyles","namespace":"Flow\\ETL\\String","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\String\\StringStyles::..."}],"return_type":[{"name":"ArrayKeysStyleConvert","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1310,"slug":"array-sort","name":"array_sort","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"function","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"sort_function","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"Sort","namespace":"Flow\\ETL\\Function\\ArraySort","is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"flags","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"recursive","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"true"}],"return_type":[{"name":"ArraySort","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1323,"slug":"array-reverse","name":"array_reverse","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"function","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"preserveKeys","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"ArrayReverse","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxhcnJheS1rZXksIG1peGVkPnxTY2FsYXJGdW5jdGlvbiAkZnVuY3Rpb24KICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1329,"slug":"now","name":"now","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"time_zone","type":[{"name":"DateTimeZone","namespace":"","is_nullable":false,"is_variadic":false},{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"DateTimeZone::..."}],"return_type":[{"name":"Now","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1335,"slug":"between","name":"between","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"value","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"lower_bound","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"upper_bound","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"boundary","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"Boundary","namespace":"Flow\\ETL\\Function\\Between","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Function\\Between\\Boundary::..."}],"return_type":[{"name":"Between","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1341,"slug":"to-date-time","name":"to_date_time","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"ref","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"format","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'Y-m-d H:i:s'"},{"name":"timeZone","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"DateTimeZone","namespace":"","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"DateTimeZone::..."}],"return_type":[{"name":"ToDateTime","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1347,"slug":"to-date","name":"to_date","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"ref","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"format","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'Y-m-d'"},{"name":"timeZone","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"DateTimeZone","namespace":"","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"DateTimeZone::..."}],"return_type":[{"name":"ToDate","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1353,"slug":"date-time-format","name":"date_time_format","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"ref","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"format","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"DateTimeFormat","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1359,"slug":"split","name":"split","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"value","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"separator","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"limit","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"9223372036854775807"}],"return_type":[{"name":"Split","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1369,"slug":"combine","name":"combine","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"keys","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"values","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Combine","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxhcnJheS1rZXksIG1peGVkPnxTY2FsYXJGdW5jdGlvbiAka2V5cwogKiBAcGFyYW0gYXJyYXk8YXJyYXkta2V5LCBtaXhlZD58U2NhbGFyRnVuY3Rpb24gJHZhbHVlcwogKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1378,"slug":"concat","name":"concat","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"functions","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"Concat","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":"LyoqCiAqIENvbmNhdCBhbGwgdmFsdWVzLiBJZiB5b3Ugd2FudCB0byBjb25jYXRlbmF0ZSB2YWx1ZXMgd2l0aCBzZXBhcmF0b3IgdXNlIGNvbmNhdF93cyBmdW5jdGlvbi4KICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1387,"slug":"concat-ws","name":"concat_ws","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"separator","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"functions","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"ConcatWithSeparator","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":"LyoqCiAqIENvbmNhdCBhbGwgdmFsdWVzIHdpdGggc2VwYXJhdG9yLgogKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1393,"slug":"hash","name":"hash","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"value","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"algorithm","type":[{"name":"Algorithm","namespace":"Flow\\ETL\\Hash","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Hash\\NativePHPHash::..."}],"return_type":[{"name":"Hash","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1402,"slug":"cast","name":"cast","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"value","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"type","type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Cast","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":"LyoqCiAqIEBwYXJhbSBcRmxvd1xUeXBlc1xUeXBlPG1peGVkPnxzdHJpbmcgJHR5cGUKICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1408,"slug":"coalesce","name":"coalesce","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"values","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"Coalesce","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1414,"slug":"count","name":"count","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"function","type":[{"name":"EntryReference","namespace":"Flow\\ETL\\Row","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Count","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"AGGREGATING_FUNCTION"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1427,"slug":"call","name":"call","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"callable","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"callable","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"parameters","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"},{"name":"return_type","type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"CallUserFunc","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":"LyoqCiAqIENhbGxzIGEgdXNlci1kZWZpbmVkIGZ1bmN0aW9uIHdpdGggdGhlIGdpdmVuIHBhcmFtZXRlcnMuCiAqCiAqIEBwYXJhbSBjYWxsYWJsZXxTY2FsYXJGdW5jdGlvbiAkY2FsbGFibGUKICogQHBhcmFtIGFycmF5PG1peGVkPiAkcGFyYW1ldGVycwogKiBAcGFyYW0gbnVsbHxUeXBlPG1peGVkPiAkcmV0dXJuX3R5cGUKICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1456,"slug":"array-unpack","name":"array_unpack","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"array","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"skip_keys","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"},{"name":"entry_prefix","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"ArrayUnpack","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxhcnJheS1rZXksIG1peGVkPnxTY2FsYXJGdW5jdGlvbiAkYXJyYXkKICogQHBhcmFtIGFycmF5PGFycmF5LWtleSwgbWl4ZWQ+fFNjYWxhckZ1bmN0aW9uICRza2lwX2tleXMKICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1482,"slug":"array-expand","name":"array_expand","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"function","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"expand","type":[{"name":"ArrayExpand","namespace":"Flow\\ETL\\Function\\ArrayExpand","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Function\\ArrayExpand\\ArrayExpand::..."}],"return_type":[{"name":"ArrayExpand","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":"LyoqCiAqIEV4cGFuZHMgZWFjaCB2YWx1ZSBpbnRvIGVudHJ5LCBpZiB0aGVyZSBhcmUgbW9yZSB0aGFuIG9uZSB2YWx1ZSwgbXVsdGlwbGUgcm93cyB3aWxsIGJlIGNyZWF0ZWQuCiAqIEFycmF5IGtleXMgYXJlIGlnbm9yZWQsIG9ubHkgdmFsdWVzIGFyZSB1c2VkIHRvIGNyZWF0ZSBuZXcgcm93cy4KICoKICogQmVmb3JlOgogKiAgICstLSstLS0tLS0tLS0tLS0tLS0tLS0tKwogKiAgIHxpZHwgICAgICAgICAgICAgIGFycmF5fAogKiAgICstLSstLS0tLS0tLS0tLS0tLS0tLS0tKwogKiAgIHwgMXx7ImEiOjEsImIiOjIsImMiOjN9fAogKiAgICstLSstLS0tLS0tLS0tLS0tLS0tLS0tKwogKgogKiBBZnRlcjoKICogICArLS0rLS0tLS0tLS0rCiAqICAgfGlkfGV4cGFuZGVkfAogKiAgICstLSstLS0tLS0tLSsKICogICB8IDF8ICAgICAgIDF8CiAqICAgfCAxfCAgICAgICAyfAogKiAgIHwgMXwgICAgICAgM3wKICogICArLS0rLS0tLS0tLS0rCiAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1488,"slug":"size","name":"size","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"value","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Size","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1494,"slug":"uuid-v4","name":"uuid_v4","namespace":"Flow\\ETL\\DSL","parameters":[],"return_type":[{"name":"Uuid","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1500,"slug":"uuid-v7","name":"uuid_v7","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"value","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"DateTimeInterface","namespace":"","is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Uuid","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1506,"slug":"ulid","name":"ulid","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"value","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Ulid","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1512,"slug":"lower","name":"lower","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"value","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ToLower","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1518,"slug":"capitalize","name":"capitalize","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"value","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Capitalize","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1524,"slug":"upper","name":"upper","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"value","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ToUpper","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1530,"slug":"all","name":"all","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"functions","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"All","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1536,"slug":"any","name":"any","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"values","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"Any","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1542,"slug":"not","name":"not","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"value","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Not","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1548,"slug":"to-timezone","name":"to_timezone","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"value","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"DateTimeInterface","namespace":"","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"timeZone","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"DateTimeZone","namespace":"","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ToTimeZone","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1554,"slug":"ignore-error-handler","name":"ignore_error_handler","namespace":"Flow\\ETL\\DSL","parameters":[],"return_type":[{"name":"IgnoreError","namespace":"Flow\\ETL\\ErrorHandler","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1560,"slug":"skip-rows-handler","name":"skip_rows_handler","namespace":"Flow\\ETL\\DSL","parameters":[],"return_type":[{"name":"SkipRows","namespace":"Flow\\ETL\\ErrorHandler","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1566,"slug":"throw-error-handler","name":"throw_error_handler","namespace":"Flow\\ETL\\DSL","parameters":[],"return_type":[{"name":"ThrowError","namespace":"Flow\\ETL\\ErrorHandler","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1572,"slug":"regex-replace","name":"regex_replace","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"pattern","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"replacement","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"subject","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"limit","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"RegexReplace","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1578,"slug":"regex-match-all","name":"regex_match_all","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"pattern","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"subject","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"flags","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"0"},{"name":"offset","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"0"}],"return_type":[{"name":"RegexMatchAll","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1584,"slug":"regex-match","name":"regex_match","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"pattern","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"subject","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"flags","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"0"},{"name":"offset","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"0"}],"return_type":[{"name":"RegexMatch","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1590,"slug":"regex","name":"regex","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"pattern","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"subject","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"flags","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"0"},{"name":"offset","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"0"}],"return_type":[{"name":"Regex","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1596,"slug":"regex-all","name":"regex_all","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"pattern","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"subject","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"flags","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"0"},{"name":"offset","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"0"}],"return_type":[{"name":"RegexAll","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1602,"slug":"sprintf","name":"sprintf","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"format","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"args","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"float","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":true,"default_value":null}],"return_type":[{"name":"Sprintf","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1608,"slug":"sanitize","name":"sanitize","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"value","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"placeholder","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'*'"},{"name":"skipCharacters","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Sanitize","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1614,"slug":"round","name":"round","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"value","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"float","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"precision","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"2"},{"name":"mode","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"1"}],"return_type":[{"name":"Round","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1620,"slug":"number-format","name":"number_format","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"value","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"float","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"decimals","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"2"},{"name":"decimal_separator","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'.'"},{"name":"thousands_separator","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"','"}],"return_type":[{"name":"NumberFormat","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1631,"slug":"to-entry","name":"to_entry","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"data","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"entryFactory","type":[{"name":"EntryFactory","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Entry","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxtaXhlZD4gJGRhdGEKICoKICogQHJldHVybiBFbnRyeTxtaXhlZD4KICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1642,"slug":"array-to-row","name":"array_to_row","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"data","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"entryFactory","type":[{"name":"EntryFactory","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"partitions","type":[{"name":"Partitions","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"},{"name":"schema","type":[{"name":"Schema","namespace":"Flow\\ETL","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Row","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxhcnJheTxtaXhlZD4+fGFycmF5PG1peGVkfHN0cmluZz4gJGRhdGEKICogQHBhcmFtIGFycmF5PFBhcnRpdGlvbj58UGFydGl0aW9ucyAkcGFydGl0aW9ucwogKiBAcGFyYW0gbnVsbHxTY2hlbWEgJHNjaGVtYQogKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1687,"slug":"array-to-rows","name":"array_to_rows","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"data","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"entryFactory","type":[{"name":"EntryFactory","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"partitions","type":[{"name":"Partitions","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"},{"name":"schema","type":[{"name":"Schema","namespace":"Flow\\ETL","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Rows","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxhcnJheTxtaXhlZD4+fGFycmF5PG1peGVkfHN0cmluZz4gJGRhdGEKICogQHBhcmFtIGFycmF5PFBhcnRpdGlvbj58UGFydGl0aW9ucyAkcGFydGl0aW9ucwogKiBAcGFyYW0gbnVsbHxTY2hlbWEgJHNjaGVtYQogKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1716,"slug":"rank","name":"rank","namespace":"Flow\\ETL\\DSL","parameters":[],"return_type":[{"name":"Rank","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"WINDOW_FUNCTION"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1722,"slug":"dens-rank","name":"dens_rank","namespace":"Flow\\ETL\\DSL","parameters":[],"return_type":[{"name":"DenseRank","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"WINDOW_FUNCTION"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1728,"slug":"dense-rank","name":"dense_rank","namespace":"Flow\\ETL\\DSL","parameters":[],"return_type":[{"name":"DenseRank","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"WINDOW_FUNCTION"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1734,"slug":"average","name":"average","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"ref","type":[{"name":"EntryReference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"scale","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"2"},{"name":"rounding","type":[{"name":"Rounding","namespace":"Flow\\Calculator","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\Calculator\\Rounding::..."}],"return_type":[{"name":"Average","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"AGGREGATING_FUNCTION"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1740,"slug":"greatest","name":"greatest","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"values","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":true,"default_value":null}],"return_type":[{"name":"Greatest","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1746,"slug":"least","name":"least","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"values","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":true,"default_value":null}],"return_type":[{"name":"Least","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1752,"slug":"collect","name":"collect","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"ref","type":[{"name":"EntryReference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Collect","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"AGGREGATING_FUNCTION"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1758,"slug":"string-agg","name":"string_agg","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"ref","type":[{"name":"EntryReference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"separator","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"', '"},{"name":"sort","type":[{"name":"SortOrder","namespace":"Flow\\ETL\\Row","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"StringAggregate","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"AGGREGATING_FUNCTION"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1764,"slug":"collect-unique","name":"collect_unique","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"ref","type":[{"name":"EntryReference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"CollectUnique","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"AGGREGATING_FUNCTION"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1770,"slug":"window","name":"window","namespace":"Flow\\ETL\\DSL","parameters":[],"return_type":[{"name":"Window","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1776,"slug":"sum","name":"sum","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"ref","type":[{"name":"EntryReference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Sum","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"AGGREGATING_FUNCTION"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1782,"slug":"first","name":"first","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"ref","type":[{"name":"EntryReference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"First","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"AGGREGATING_FUNCTION"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1788,"slug":"last","name":"last","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"ref","type":[{"name":"EntryReference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Last","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"AGGREGATING_FUNCTION"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1794,"slug":"max","name":"max","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"ref","type":[{"name":"EntryReference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Max","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"AGGREGATING_FUNCTION"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1800,"slug":"min","name":"min","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"ref","type":[{"name":"EntryReference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Min","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"AGGREGATING_FUNCTION"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1806,"slug":"row-number","name":"row_number","namespace":"Flow\\ETL\\DSL","parameters":[],"return_type":[{"name":"RowNumber","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1817,"slug":"schema","name":"schema","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"definitions","type":[{"name":"Definition","namespace":"Flow\\ETL\\Schema","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"Schema","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBEZWZpbml0aW9uPG1peGVkPiAuLi4kZGVmaW5pdGlvbnMKICoKICogQHJldHVybiBTY2hlbWEKICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1826,"slug":"schema-to-json","name":"schema_to_json","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"schema","type":[{"name":"Schema","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"pretty","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBTY2hlbWEgJHNjaGVtYQogKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1835,"slug":"schema-to-php","name":"schema_to_php","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"schema","type":[{"name":"Schema","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"valueFormatter","type":[{"name":"ValueFormatter","namespace":"Flow\\ETL\\Schema\\Formatter\\PHPFormatter","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Schema\\Formatter\\PHPFormatter\\ValueFormatter::..."},{"name":"typeFormatter","type":[{"name":"TypeFormatter","namespace":"Flow\\ETL\\Schema\\Formatter\\PHPFormatter","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Schema\\Formatter\\PHPFormatter\\TypeFormatter::..."}],"return_type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBTY2hlbWEgJHNjaGVtYQogKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1844,"slug":"schema-to-ascii","name":"schema_to_ascii","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"schema","type":[{"name":"Schema","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"formatter","type":[{"name":"SchemaFormatter","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBTY2hlbWEgJHNjaGVtYQogKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1854,"slug":"schema-validate","name":"schema_validate","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"expected","type":[{"name":"Schema","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"given","type":[{"name":"Schema","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"validator","type":[{"name":"SchemaValidator","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Schema\\Validator\\StrictValidator::..."}],"return_type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBTY2hlbWEgJGV4cGVjdGVkCiAqIEBwYXJhbSBTY2hlbWEgJGdpdmVuCiAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1860,"slug":"schema-evolving-validator","name":"schema_evolving_validator","namespace":"Flow\\ETL\\DSL","parameters":[],"return_type":[{"name":"EvolvingValidator","namespace":"Flow\\ETL\\Schema\\Validator","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1866,"slug":"schema-strict-validator","name":"schema_strict_validator","namespace":"Flow\\ETL\\DSL","parameters":[],"return_type":[{"name":"StrictValidator","namespace":"Flow\\ETL\\Schema\\Validator","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1872,"slug":"schema-selective-validator","name":"schema_selective_validator","namespace":"Flow\\ETL\\DSL","parameters":[],"return_type":[{"name":"SelectiveValidator","namespace":"Flow\\ETL\\Schema\\Validator","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1881,"slug":"schema-from-json","name":"schema_from_json","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"schema","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Schema","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gU2NoZW1hCiAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1893,"slug":"schema-metadata","name":"schema_metadata","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"metadata","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxzdHJpbmcsIGFycmF5PGJvb2x8ZmxvYXR8aW50fHN0cmluZz58Ym9vbHxmbG9hdHxpbnR8c3RyaW5nPiAkbWV0YWRhdGEKICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1902,"slug":"int-schema","name":"int_schema","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"nullable","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"IntegerDefinition","namespace":"Flow\\ETL\\Schema\\Definition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEFsaWFzIGZvciBgaW50ZWdlcl9zY2hlbWFgLgogKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1908,"slug":"integer-schema","name":"integer_schema","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"nullable","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"IntegerDefinition","namespace":"Flow\\ETL\\Schema\\Definition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1917,"slug":"str-schema","name":"str_schema","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"nullable","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"StringDefinition","namespace":"Flow\\ETL\\Schema\\Definition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEFsaWFzIGZvciBgc3RyaW5nX3NjaGVtYWAuCiAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1923,"slug":"string-schema","name":"string_schema","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"nullable","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"StringDefinition","namespace":"Flow\\ETL\\Schema\\Definition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1929,"slug":"bool-schema","name":"bool_schema","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"nullable","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"BooleanDefinition","namespace":"Flow\\ETL\\Schema\\Definition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1935,"slug":"float-schema","name":"float_schema","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"nullable","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"FloatDefinition","namespace":"Flow\\ETL\\Schema\\Definition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1949,"slug":"map-schema","name":"map_schema","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"type","type":[{"name":"MapType","namespace":"Flow\\Types\\Type\\Logical","is_nullable":false,"is_variadic":false},{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"nullable","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"MapDefinition","namespace":"Flow\\ETL\\Schema\\Definition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEB0ZW1wbGF0ZSBUS2V5IG9mIGFycmF5LWtleQogKiBAdGVtcGxhdGUgVFZhbHVlCiAqCiAqIEBwYXJhbSBNYXBUeXBlPFRLZXksIFRWYWx1ZT58VHlwZTxhcnJheTxUS2V5LCBUVmFsdWU+PiAkdHlwZQogKgogKiBAcmV0dXJuIE1hcERlZmluaXRpb248VEtleSwgVFZhbHVlPgogKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1963,"slug":"list-schema","name":"list_schema","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"type","type":[{"name":"ListType","namespace":"Flow\\Types\\Type\\Logical","is_nullable":false,"is_variadic":false},{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"nullable","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"ListDefinition","namespace":"Flow\\ETL\\Schema\\Definition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEB0ZW1wbGF0ZSBUCiAqCiAqIEBwYXJhbSBMaXN0VHlwZTxUPnxUeXBlPGxpc3Q8VD4+ICR0eXBlCiAqCiAqIEByZXR1cm4gTGlzdERlZmluaXRpb248VD4KICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1977,"slug":"enum-schema","name":"enum_schema","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"type","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"nullable","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"EnumDefinition","namespace":"Flow\\ETL\\Schema\\Definition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEB0ZW1wbGF0ZSBUIG9mIFxVbml0RW51bQogKgogKiBAcGFyYW0gY2xhc3Mtc3RyaW5nPFQ+ICR0eXBlCiAqCiAqIEByZXR1cm4gRW51bURlZmluaXRpb248VD4KICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1983,"slug":"null-schema","name":"null_schema","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"StringDefinition","namespace":"Flow\\ETL\\Schema\\Definition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1989,"slug":"datetime-schema","name":"datetime_schema","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"nullable","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"DateTimeDefinition","namespace":"Flow\\ETL\\Schema\\Definition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1995,"slug":"time-schema","name":"time_schema","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"nullable","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"TimeDefinition","namespace":"Flow\\ETL\\Schema\\Definition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2001,"slug":"date-schema","name":"date_schema","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"nullable","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"DateDefinition","namespace":"Flow\\ETL\\Schema\\Definition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2007,"slug":"json-schema","name":"json_schema","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"nullable","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"JsonDefinition","namespace":"Flow\\ETL\\Schema\\Definition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2013,"slug":"html-schema","name":"html_schema","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"nullable","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"HTMLDefinition","namespace":"Flow\\ETL\\Schema\\Definition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2019,"slug":"html-element-schema","name":"html_element_schema","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"nullable","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"HTMLElementDefinition","namespace":"Flow\\ETL\\Schema\\Definition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2025,"slug":"xml-schema","name":"xml_schema","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"nullable","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"XMLDefinition","namespace":"Flow\\ETL\\Schema\\Definition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2031,"slug":"xml-element-schema","name":"xml_element_schema","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"nullable","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"XMLElementDefinition","namespace":"Flow\\ETL\\Schema\\Definition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2046,"slug":"struct-schema","name":"struct_schema","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"type","type":[{"name":"StructureType","namespace":"Flow\\Types\\Type\\Logical","is_nullable":false,"is_variadic":false},{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"nullable","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"StructureDefinition","namespace":"Flow\\ETL\\Schema\\Definition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEB0ZW1wbGF0ZSBUCiAqCiAqIEBwYXJhbSBTdHJ1Y3R1cmVUeXBlPFQ+fFR5cGU8YXJyYXk8c3RyaW5nLCBUPj4gJHR5cGUKICoKICogQHJldHVybiBTdHJ1Y3R1cmVEZWZpbml0aW9uPFQ+CiAqCiAqIEBkZXByZWNhdGVkIFVzZSBgc3RydWN0dXJlX3NjaGVtYSgpYCBpbnN0ZWFkCiAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2060,"slug":"structure-schema","name":"structure_schema","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"type","type":[{"name":"StructureType","namespace":"Flow\\Types\\Type\\Logical","is_nullable":false,"is_variadic":false},{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"nullable","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"StructureDefinition","namespace":"Flow\\ETL\\Schema\\Definition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEB0ZW1wbGF0ZSBUCiAqCiAqIEBwYXJhbSBTdHJ1Y3R1cmVUeXBlPFQ+fFR5cGU8YXJyYXk8c3RyaW5nLCBUPj4gJHR5cGUKICoKICogQHJldHVybiBTdHJ1Y3R1cmVEZWZpbml0aW9uPFQ+CiAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2067,"slug":"uuid-schema","name":"uuid_schema","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"nullable","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"UuidDefinition","namespace":"Flow\\ETL\\Schema\\Definition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2080,"slug":"definition-from-array","name":"definition_from_array","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"definition","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Definition","namespace":"Flow\\ETL\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIERlZmluaXRpb24gZnJvbSBhbiBhcnJheSByZXByZXNlbnRhdGlvbi4KICoKICogQHBhcmFtIGFycmF5PGFycmF5LWtleSwgbWl4ZWQ+ICRkZWZpbml0aW9uCiAqCiAqIEByZXR1cm4gRGVmaW5pdGlvbjxtaXhlZD4KICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2113,"slug":"definition-from-type","name":"definition_from_type","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"ref","type":[{"name":"Reference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"type","type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"nullable","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Definition","namespace":"Flow\\ETL\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIERlZmluaXRpb24gZnJvbSBhIFR5cGUuCiAqCiAqIEBwYXJhbSBUeXBlPG1peGVkPiAkdHlwZQogKgogKiBAcmV0dXJuIERlZmluaXRpb248bWl4ZWQ+CiAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2139,"slug":"execution-context","name":"execution_context","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"config","type":[{"name":"Config","namespace":"Flow\\ETL","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"FlowContext","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2145,"slug":"flow-context","name":"flow_context","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"config","type":[{"name":"Config","namespace":"Flow\\ETL","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"FlowContext","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2151,"slug":"config","name":"config","namespace":"Flow\\ETL\\DSL","parameters":[],"return_type":[{"name":"Config","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2157,"slug":"config-builder","name":"config_builder","namespace":"Flow\\ETL\\DSL","parameters":[],"return_type":[{"name":"ConfigBuilder","namespace":"Flow\\ETL\\Config","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2166,"slug":"overwrite","name":"overwrite","namespace":"Flow\\ETL\\DSL","parameters":[],"return_type":[{"name":"SaveMode","namespace":"Flow\\ETL\\Filesystem","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEFsaWFzIGZvciBzYXZlX21vZGVfb3ZlcndyaXRlKCkuCiAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2172,"slug":"save-mode-overwrite","name":"save_mode_overwrite","namespace":"Flow\\ETL\\DSL","parameters":[],"return_type":[{"name":"SaveMode","namespace":"Flow\\ETL\\Filesystem","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2181,"slug":"ignore","name":"ignore","namespace":"Flow\\ETL\\DSL","parameters":[],"return_type":[{"name":"SaveMode","namespace":"Flow\\ETL\\Filesystem","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEFsaWFzIGZvciBzYXZlX21vZGVfaWdub3JlKCkuCiAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2187,"slug":"save-mode-ignore","name":"save_mode_ignore","namespace":"Flow\\ETL\\DSL","parameters":[],"return_type":[{"name":"SaveMode","namespace":"Flow\\ETL\\Filesystem","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2196,"slug":"exception-if-exists","name":"exception_if_exists","namespace":"Flow\\ETL\\DSL","parameters":[],"return_type":[{"name":"SaveMode","namespace":"Flow\\ETL\\Filesystem","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEFsaWFzIGZvciBzYXZlX21vZGVfZXhjZXB0aW9uX2lmX2V4aXN0cygpLgogKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2202,"slug":"save-mode-exception-if-exists","name":"save_mode_exception_if_exists","namespace":"Flow\\ETL\\DSL","parameters":[],"return_type":[{"name":"SaveMode","namespace":"Flow\\ETL\\Filesystem","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2211,"slug":"append","name":"append","namespace":"Flow\\ETL\\DSL","parameters":[],"return_type":[{"name":"SaveMode","namespace":"Flow\\ETL\\Filesystem","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEFsaWFzIGZvciBzYXZlX21vZGVfYXBwZW5kKCkuCiAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2217,"slug":"save-mode-append","name":"save_mode_append","namespace":"Flow\\ETL\\DSL","parameters":[],"return_type":[{"name":"SaveMode","namespace":"Flow\\ETL\\Filesystem","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2227,"slug":"execution-strict","name":"execution_strict","namespace":"Flow\\ETL\\DSL","parameters":[],"return_type":[{"name":"ExecutionMode","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEluIHRoaXMgbW9kZSwgZnVuY3Rpb25zIHRocm93cyBleGNlcHRpb25zIGlmIHRoZSBnaXZlbiBlbnRyeSBpcyBub3QgZm91bmQKICogb3IgcGFzc2VkIHBhcmFtZXRlcnMgYXJlIGludmFsaWQuCiAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2236,"slug":"execution-lenient","name":"execution_lenient","namespace":"Flow\\ETL\\DSL","parameters":[],"return_type":[{"name":"ExecutionMode","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEluIHRoaXMgbW9kZSwgZnVuY3Rpb25zIHJldHVybnMgbnVsbHMgaW5zdGVhZCBvZiB0aHJvd2luZyBleGNlcHRpb25zLgogKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2247,"slug":"get-type","name":"get_type","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"value","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gVHlwZTxtaXhlZD4KICoKICogQGRlcHJlY2F0ZWQgUGxlYXNlIHVzZSBcRmxvd1xUeXBlc1xEU0xcZ2V0X3R5cGUoJHZhbHVlKSBpbnN0ZWFkCiAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2258,"slug":"print-schema","name":"print_schema","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"schema","type":[{"name":"Schema","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"formatter","type":[{"name":"SchemaFormatter","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBTY2hlbWEgJHNjaGVtYQogKgogKiBAZGVwcmVjYXRlZCBQbGVhc2UgdXNlIHNjaGVtYV90b19hc2NpaSgkc2NoZW1hKSBpbnN0ZWFkCiAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2264,"slug":"print-rows","name":"print_rows","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"rows","type":[{"name":"Rows","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"truncate","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"formatter","type":[{"name":"Formatter","namespace":"Flow\\ETL","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2270,"slug":"identical","name":"identical","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"left","type":[{"name":"Reference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"right","type":[{"name":"Reference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Identical","namespace":"Flow\\ETL\\Join\\Comparison","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"COMPARISON"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2276,"slug":"equal","name":"equal","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"left","type":[{"name":"Reference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"right","type":[{"name":"Reference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Equal","namespace":"Flow\\ETL\\Join\\Comparison","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"COMPARISON"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2282,"slug":"compare-all","name":"compare_all","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"comparisons","type":[{"name":"Comparison","namespace":"Flow\\ETL\\Join","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"All","namespace":"Flow\\ETL\\Join\\Comparison","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"COMPARISON"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2288,"slug":"compare-any","name":"compare_any","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"comparisons","type":[{"name":"Comparison","namespace":"Flow\\ETL\\Join","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"Any","namespace":"Flow\\ETL\\Join\\Comparison","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"COMPARISON"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2299,"slug":"join-on","name":"join_on","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"comparisons","type":[{"name":"Comparison","namespace":"Flow\\ETL\\Join","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"join_prefix","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"''"}],"return_type":[{"name":"Expression","namespace":"Flow\\ETL\\Join","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}},{"name":"DocumentationExample","namespace":"Flow\\ETL\\Attribute","arguments":{"topic":"join","example":"join"}},{"name":"DocumentationExample","namespace":"Flow\\ETL\\Attribute","arguments":{"topic":"join","example":"join_each"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxcRmxvd1xFVExcSm9pblxDb21wYXJpc29ufHN0cmluZz58Q29tcGFyaXNvbiAkY29tcGFyaXNvbnMKICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2305,"slug":"compare-entries-by-name","name":"compare_entries_by_name","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"order","type":[{"name":"Order","namespace":"Flow\\ETL\\Transformer\\OrderEntries","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Transformer\\OrderEntries\\Order::..."}],"return_type":[{"name":"Comparator","namespace":"Flow\\ETL\\Transformer\\OrderEntries","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2311,"slug":"compare-entries-by-name-desc","name":"compare_entries_by_name_desc","namespace":"Flow\\ETL\\DSL","parameters":[],"return_type":[{"name":"Comparator","namespace":"Flow\\ETL\\Transformer\\OrderEntries","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2320,"slug":"compare-entries-by-type","name":"compare_entries_by_type","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"priorities","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[...]"},{"name":"order","type":[{"name":"Order","namespace":"Flow\\ETL\\Transformer\\OrderEntries","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Transformer\\OrderEntries\\Order::..."}],"return_type":[{"name":"Comparator","namespace":"Flow\\ETL\\Transformer\\OrderEntries","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxjbGFzcy1zdHJpbmc8RW50cnk8bWl4ZWQ+PiwgaW50PiAkcHJpb3JpdGllcwogKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2329,"slug":"compare-entries-by-type-desc","name":"compare_entries_by_type_desc","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"priorities","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[...]"}],"return_type":[{"name":"Comparator","namespace":"Flow\\ETL\\Transformer\\OrderEntries","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxjbGFzcy1zdHJpbmc8RW50cnk8bWl4ZWQ+PiwgaW50PiAkcHJpb3JpdGllcwogKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2338,"slug":"compare-entries-by-type-and-name","name":"compare_entries_by_type_and_name","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"priorities","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[...]"},{"name":"order","type":[{"name":"Order","namespace":"Flow\\ETL\\Transformer\\OrderEntries","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Transformer\\OrderEntries\\Order::..."}],"return_type":[{"name":"Comparator","namespace":"Flow\\ETL\\Transformer\\OrderEntries","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxjbGFzcy1zdHJpbmc8RW50cnk8bWl4ZWQ+PiwgaW50PiAkcHJpb3JpdGllcwogKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2351,"slug":"is-type","name":"is_type","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"type","type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"value","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null}],"return_type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxzdHJpbmd8VHlwZTxtaXhlZD4+fFR5cGU8bWl4ZWQ+ICR0eXBlCiAqIEBwYXJhbSBtaXhlZCAkdmFsdWUKICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2414,"slug":"generate-random-string","name":"generate_random_string","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"length","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"32"},{"name":"generator","type":[{"name":"NativePHPRandomValueGenerator","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\NativePHPRandomValueGenerator::..."}],"return_type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2420,"slug":"generate-random-int","name":"generate_random_int","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"start","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"-9223372036854775808"},{"name":"end","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"9223372036854775807"},{"name":"generator","type":[{"name":"NativePHPRandomValueGenerator","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\NativePHPRandomValueGenerator::..."}],"return_type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2426,"slug":"random-string","name":"random_string","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"length","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"generator","type":[{"name":"RandomValueGenerator","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\NativePHPRandomValueGenerator::..."}],"return_type":[{"name":"RandomString","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2437,"slug":"dom-element-to-string","name":"dom_element_to_string","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"element","type":[{"name":"DOMElement","namespace":"","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"format_output","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"preserver_white_space","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"false","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBkZXByZWNhdGVkIFBsZWFzZSB1c2UgXEZsb3dcVHlwZXNcRFNMXGRvbV9lbGVtZW50X3RvX3N0cmluZygpIGluc3RlYWQKICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2443,"slug":"date-interval-to-milliseconds","name":"date_interval_to_milliseconds","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"interval","type":[{"name":"DateInterval","namespace":"","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2460,"slug":"date-interval-to-seconds","name":"date_interval_to_seconds","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"interval","type":[{"name":"DateInterval","namespace":"","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2477,"slug":"date-interval-to-microseconds","name":"date_interval_to_microseconds","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"interval","type":[{"name":"DateInterval","namespace":"","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2494,"slug":"with-entry","name":"with_entry","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"function","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"WithEntry","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2500,"slug":"constraint-unique","name":"constraint_unique","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"reference","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"references","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"UniqueConstraint","namespace":"Flow\\ETL\\Constraint","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2506,"slug":"constraint-sorted-by","name":"constraint_sorted_by","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"column","type":[{"name":"Reference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"columns","type":[{"name":"Reference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"SortedByConstraint","namespace":"Flow\\ETL\\Constraint","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2517,"slug":"analyze","name":"analyze","namespace":"Flow\\ETL\\DSL","parameters":[],"return_type":[{"name":"Analyze","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2526,"slug":"match-cases","name":"match_cases","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"cases","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"default","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"MatchCases","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxNYXRjaENvbmRpdGlvbj4gJGNhc2VzCiAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2532,"slug":"match-condition","name":"match_condition","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"condition","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"then","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null}],"return_type":[{"name":"MatchCondition","namespace":"Flow\\ETL\\Function\\MatchCases","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2538,"slug":"retry-any-throwable","name":"retry_any_throwable","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"limit","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"AnyThrowable","namespace":"Flow\\ETL\\Retry\\RetryStrategy","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2547,"slug":"retry-on-exception-types","name":"retry_on_exception_types","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"exception_types","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"limit","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"OnExceptionTypes","namespace":"Flow\\ETL\\Retry\\RetryStrategy","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxjbGFzcy1zdHJpbmc8XFRocm93YWJsZT4+ICRleGNlcHRpb25fdHlwZXMKICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2553,"slug":"delay-linear","name":"delay_linear","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"delay","type":[{"name":"Duration","namespace":"Flow\\ETL\\Time","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"increment","type":[{"name":"Duration","namespace":"Flow\\ETL\\Time","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Linear","namespace":"Flow\\ETL\\Retry\\DelayFactory","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2559,"slug":"delay-exponential","name":"delay_exponential","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"base","type":[{"name":"Duration","namespace":"Flow\\ETL\\Time","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"multiplier","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"2"},{"name":"max_delay","type":[{"name":"Duration","namespace":"Flow\\ETL\\Time","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Exponential","namespace":"Flow\\ETL\\Retry\\DelayFactory","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2568,"slug":"delay-jitter","name":"delay_jitter","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"delay","type":[{"name":"DelayFactory","namespace":"Flow\\ETL\\Retry","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"jitter_factor","type":[{"name":"float","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Jitter","namespace":"Flow\\ETL\\Retry\\DelayFactory","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBmbG9hdCAkaml0dGVyX2ZhY3RvciBhIHZhbHVlIGJldHdlZW4gMCBhbmQgMSByZXByZXNlbnRpbmcgdGhlIG1heGltdW0gcGVyY2VudGFnZSBvZiBqaXR0ZXIgdG8gYXBwbHkKICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2574,"slug":"delay-fixed","name":"delay_fixed","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"delay","type":[{"name":"Duration","namespace":"Flow\\ETL\\Time","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Fixed","namespace":"Flow\\ETL\\Retry\\DelayFactory","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2580,"slug":"duration-seconds","name":"duration_seconds","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"seconds","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Duration","namespace":"Flow\\ETL\\Time","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2586,"slug":"duration-milliseconds","name":"duration_milliseconds","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"milliseconds","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Duration","namespace":"Flow\\ETL\\Time","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2592,"slug":"duration-microseconds","name":"duration_microseconds","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"microseconds","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Duration","namespace":"Flow\\ETL\\Time","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2598,"slug":"duration-minutes","name":"duration_minutes","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"minutes","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Duration","namespace":"Flow\\ETL\\Time","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2604,"slug":"write-with-retries","name":"write_with_retries","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"loader","type":[{"name":"Loader","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"retry_strategy","type":[{"name":"RetryStrategy","namespace":"Flow\\ETL\\Retry","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Retry\\RetryStrategy\\AnyThrowable::..."},{"name":"delay_factory","type":[{"name":"DelayFactory","namespace":"Flow\\ETL\\Retry","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Retry\\DelayFactory\\Fixed\\FixedMilliseconds::..."},{"name":"sleep","type":[{"name":"Sleep","namespace":"Flow\\ETL\\Time","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Time\\SystemSleep::..."}],"return_type":[{"name":"RetryLoader","namespace":"Flow\\ETL\\Loader","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"LOADER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2614,"slug":"clock","name":"clock","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"time_zone","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'UTC'"}],"return_type":[{"name":"ClockInterface","namespace":"Psr\\Clock","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/adapter\/etl-adapter-avro\/src\/Flow\/ETL\/Adapter\/Avro\/functions.php","start_line_in_file":13,"slug":"from-avro","name":"from_avro","namespace":"Flow\\ETL\\DSL\\Adapter\\Avro","parameters":[{"name":"path","type":[{"name":"Path","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"AvroExtractor","namespace":"Flow\\ETL\\Adapter\\Avro\\FlixTech","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"AVRO","type":"EXTRACTOR"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/adapter\/etl-adapter-avro\/src\/Flow\/ETL\/Adapter\/Avro\/functions.php","start_line_in_file":21,"slug":"to-avro","name":"to_avro","namespace":"Flow\\ETL\\DSL\\Adapter\\Avro","parameters":[{"name":"path","type":[{"name":"Path","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"schema","type":[{"name":"Schema","namespace":"Flow\\ETL","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"AvroLoader","namespace":"Flow\\ETL\\Adapter\\Avro\\FlixTech","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"AVRO","type":"LOADER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/adapter\/etl-adapter-chartjs\/src\/Flow\/ETL\/Adapter\/ChartJS\/functions.php","start_line_in_file":14,"slug":"bar-chart","name":"bar_chart","namespace":"Flow\\ETL\\Adapter\\ChartJS","parameters":[{"name":"label","type":[{"name":"EntryReference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"datasets","type":[{"name":"References","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"BarChart","namespace":"Flow\\ETL\\Adapter\\ChartJS\\Chart","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CHART_JS","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/adapter\/etl-adapter-chartjs\/src\/Flow\/ETL\/Adapter\/ChartJS\/functions.php","start_line_in_file":20,"slug":"line-chart","name":"line_chart","namespace":"Flow\\ETL\\Adapter\\ChartJS","parameters":[{"name":"label","type":[{"name":"EntryReference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"datasets","type":[{"name":"References","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"LineChart","namespace":"Flow\\ETL\\Adapter\\ChartJS\\Chart","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CHART_JS","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/adapter\/etl-adapter-chartjs\/src\/Flow\/ETL\/Adapter\/ChartJS\/functions.php","start_line_in_file":26,"slug":"pie-chart","name":"pie_chart","namespace":"Flow\\ETL\\Adapter\\ChartJS","parameters":[{"name":"label","type":[{"name":"EntryReference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"datasets","type":[{"name":"References","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"PieChart","namespace":"Flow\\ETL\\Adapter\\ChartJS\\Chart","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CHART_JS","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/adapter\/etl-adapter-chartjs\/src\/Flow\/ETL\/Adapter\/ChartJS\/functions.php","start_line_in_file":32,"slug":"to-chartjs","name":"to_chartjs","namespace":"Flow\\ETL\\Adapter\\ChartJS","parameters":[{"name":"type","type":[{"name":"Chart","namespace":"Flow\\ETL\\Adapter\\ChartJS","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ChartJSLoader","namespace":"Flow\\ETL\\Adapter\\ChartJS","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CHART_JS","type":"LOADER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/adapter\/etl-adapter-chartjs\/src\/Flow\/ETL\/Adapter\/ChartJS\/functions.php","start_line_in_file":43,"slug":"to-chartjs-file","name":"to_chartjs_file","namespace":"Flow\\ETL\\Adapter\\ChartJS","parameters":[{"name":"type","type":[{"name":"Chart","namespace":"Flow\\ETL\\Adapter\\ChartJS","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"output","type":[{"name":"Path","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"template","type":[{"name":"Path","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"ChartJSLoader","namespace":"Flow\\ETL\\Adapter\\ChartJS","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CHART_JS","type":"LOADER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBDaGFydCAkdHlwZQogKiBAcGFyYW0gbnVsbHxQYXRofHN0cmluZyAkb3V0cHV0IC0gQGRlcHJlY2F0ZWQgdXNlICRsb2FkZXItPndpdGhPdXRwdXRQYXRoKCkgaW5zdGVhZAogKiBAcGFyYW0gbnVsbHxQYXRofHN0cmluZyAkdGVtcGxhdGUgLSBAZGVwcmVjYXRlZCB1c2UgJGxvYWRlci0+d2l0aFRlbXBsYXRlKCkgaW5zdGVhZAogKi8="},{"repository_path":"src\/adapter\/etl-adapter-chartjs\/src\/Flow\/ETL\/Adapter\/ChartJS\/functions.php","start_line_in_file":71,"slug":"to-chartjs-var","name":"to_chartjs_var","namespace":"Flow\\ETL\\Adapter\\ChartJS","parameters":[{"name":"type","type":[{"name":"Chart","namespace":"Flow\\ETL\\Adapter\\ChartJS","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"output","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ChartJSLoader","namespace":"Flow\\ETL\\Adapter\\ChartJS","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CHART_JS","type":"LOADER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBDaGFydCAkdHlwZQogKiBAcGFyYW0gYXJyYXk8YXJyYXkta2V5LCBtaXhlZD4gJG91dHB1dCAtIEBkZXByZWNhdGVkIHVzZSAkbG9hZGVyLT53aXRoT3V0cHV0VmFyKCkgaW5zdGVhZAogKi8="},{"repository_path":"src\/adapter\/etl-adapter-csv\/src\/Flow\/ETL\/Adapter\/CSV\/functions.php","start_line_in_file":25,"slug":"from-csv","name":"from_csv","namespace":"Flow\\ETL\\Adapter\\CSV","parameters":[{"name":"path","type":[{"name":"Path","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"with_header","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"true"},{"name":"empty_to_null","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"true"},{"name":"separator","type":[{"name":"string","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"enclosure","type":[{"name":"string","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"escape","type":[{"name":"string","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"characters_read_in_line","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"1000"},{"name":"schema","type":[{"name":"Schema","namespace":"Flow\\ETL","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"CSVExtractor","namespace":"Flow\\ETL\\Adapter\\CSV","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CSV","type":"EXTRACTOR"}},{"name":"DocumentationExample","namespace":"Flow\\ETL\\Attribute","arguments":{"topic":"data_frame","example":"data_reading","option":"csv"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBQYXRofHN0cmluZyAkcGF0aAogKiBAcGFyYW0gYm9vbCAkZW1wdHlfdG9fbnVsbCAtIEBkZXByZWNhdGVkIHVzZSAkbG9hZGVyLT53aXRoRW1wdHlUb051bGwoKSBpbnN0ZWFkCiAqIEBwYXJhbSBib29sICR3aXRoX2hlYWRlciAtIEBkZXByZWNhdGVkIHVzZSAkbG9hZGVyLT53aXRoSGVhZGVyKCkgaW5zdGVhZAogKiBAcGFyYW0gbnVsbHxzdHJpbmcgJHNlcGFyYXRvciAtIEBkZXByZWNhdGVkIHVzZSAkbG9hZGVyLT53aXRoU2VwYXJhdG9yKCkgaW5zdGVhZAogKiBAcGFyYW0gbnVsbHxzdHJpbmcgJGVuY2xvc3VyZSAtIEBkZXByZWNhdGVkIHVzZSAkbG9hZGVyLT53aXRoRW5jbG9zdXJlKCkgaW5zdGVhZAogKiBAcGFyYW0gbnVsbHxzdHJpbmcgJGVzY2FwZSAtIEBkZXByZWNhdGVkIHVzZSAkbG9hZGVyLT53aXRoRXNjYXBlKCkgaW5zdGVhZAogKiBAcGFyYW0gaW50PDEsIG1heD4gJGNoYXJhY3RlcnNfcmVhZF9pbl9saW5lIC0gQGRlcHJlY2F0ZWQgdXNlICRsb2FkZXItPndpdGhDaGFyYWN0ZXJzUmVhZEluTGluZSgpIGluc3RlYWQKICogQHBhcmFtIG51bGx8U2NoZW1hICRzY2hlbWEgLSBAZGVwcmVjYXRlZCB1c2UgJGxvYWRlci0+d2l0aFNjaGVtYSgpIGluc3RlYWQKICov"},{"repository_path":"src\/adapter\/etl-adapter-csv\/src\/Flow\/ETL\/Adapter\/CSV\/functions.php","start_line_in_file":70,"slug":"to-csv","name":"to_csv","namespace":"Flow\\ETL\\Adapter\\CSV","parameters":[{"name":"uri","type":[{"name":"Path","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"with_header","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"true"},{"name":"separator","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"','"},{"name":"enclosure","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'\\\"'"},{"name":"escape","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'\\\\'"},{"name":"new_line_separator","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'\\n'"},{"name":"datetime_format","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'Y-m-d\\\\TH:i:sP'"}],"return_type":[{"name":"CSVLoader","namespace":"Flow\\ETL\\Adapter\\CSV","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CSV","type":"LOADER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBQYXRofHN0cmluZyAkdXJpCiAqIEBwYXJhbSBib29sICR3aXRoX2hlYWRlciAtIEBkZXByZWNhdGVkIHVzZSAkbG9hZGVyLT53aXRoSGVhZGVyKCkgaW5zdGVhZAogKiBAcGFyYW0gc3RyaW5nICRzZXBhcmF0b3IgLSBAZGVwcmVjYXRlZCB1c2UgJGxvYWRlci0+d2l0aFNlcGFyYXRvcigpIGluc3RlYWQKICogQHBhcmFtIHN0cmluZyAkZW5jbG9zdXJlIC0gQGRlcHJlY2F0ZWQgdXNlICRsb2FkZXItPndpdGhFbmNsb3N1cmUoKSBpbnN0ZWFkCiAqIEBwYXJhbSBzdHJpbmcgJGVzY2FwZSAtIEBkZXByZWNhdGVkIHVzZSAkbG9hZGVyLT53aXRoRXNjYXBlKCkgaW5zdGVhZAogKiBAcGFyYW0gc3RyaW5nICRuZXdfbGluZV9zZXBhcmF0b3IgLSBAZGVwcmVjYXRlZCB1c2UgJGxvYWRlci0+d2l0aE5ld0xpbmVTZXBhcmF0b3IoKSBpbnN0ZWFkCiAqIEBwYXJhbSBzdHJpbmcgJGRhdGV0aW1lX2Zvcm1hdCAtIEBkZXByZWNhdGVkIHVzZSAkbG9hZGVyLT53aXRoRGF0ZVRpbWVGb3JtYXQoKSBpbnN0ZWFkCiAqLw=="},{"repository_path":"src\/adapter\/etl-adapter-csv\/src\/Flow\/ETL\/Adapter\/CSV\/functions.php","start_line_in_file":95,"slug":"csv-detect-separator","name":"csv_detect_separator","namespace":"Flow\\ETL\\Adapter\\CSV","parameters":[{"name":"stream","type":[{"name":"SourceStream","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"lines","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"5"},{"name":"fallback","type":[{"name":"Option","namespace":"Flow\\ETL\\Adapter\\CSV\\Detector","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"Flow\\ETL\\Adapter\\CSV\\Detector\\Option::..."},{"name":"options","type":[{"name":"Options","namespace":"Flow\\ETL\\Adapter\\CSV\\Detector","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Option","namespace":"Flow\\ETL\\Adapter\\CSV\\Detector","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CSV","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBTb3VyY2VTdHJlYW0gJHN0cmVhbSAtIHZhbGlkIHJlc291cmNlIHRvIENTViBmaWxlCiAqIEBwYXJhbSBpbnQ8MSwgbWF4PiAkbGluZXMgLSBudW1iZXIgb2YgbGluZXMgdG8gcmVhZCBmcm9tIENTViBmaWxlLCBkZWZhdWx0IDUsIG1vcmUgbGluZXMgbWVhbnMgbW9yZSBhY2N1cmF0ZSBkZXRlY3Rpb24gYnV0IHNsb3dlciBkZXRlY3Rpb24KICogQHBhcmFtIG51bGx8T3B0aW9uICRmYWxsYmFjayAtIGZhbGxiYWNrIG9wdGlvbiB0byB1c2Ugd2hlbiBubyBiZXN0IG9wdGlvbiBjYW4gYmUgZGV0ZWN0ZWQsIGRlZmF1bHQgaXMgT3B0aW9uKCcsJywgJyInLCAnXFwnKQogKiBAcGFyYW0gbnVsbHxPcHRpb25zICRvcHRpb25zIC0gb3B0aW9ucyB0byB1c2UgZm9yIGRldGVjdGlvbiwgZGVmYXVsdCBpcyBPcHRpb25zOjphbGwoKQogKi8="},{"repository_path":"src\/adapter\/etl-adapter-doctrine\/src\/Flow\/ETL\/Adapter\/Doctrine\/functions.php","start_line_in_file":36,"slug":"dbal-dataframe-factory","name":"dbal_dataframe_factory","namespace":"Flow\\ETL\\Adapter\\Doctrine","parameters":[{"name":"connection","type":[{"name":"Connection","namespace":"Doctrine\\DBAL","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"query","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"parameters","type":[{"name":"QueryParameter","namespace":"Flow\\ETL\\Adapter\\Doctrine","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"DbalDataFrameFactory","namespace":"Flow\\ETL\\Adapter\\Doctrine","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"DOCTRINE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxzdHJpbmcsIG1peGVkPnxDb25uZWN0aW9uICRjb25uZWN0aW9uCiAqIEBwYXJhbSBzdHJpbmcgJHF1ZXJ5CiAqIEBwYXJhbSBRdWVyeVBhcmFtZXRlciAuLi4kcGFyYW1ldGVycwogKi8="},{"repository_path":"src\/adapter\/etl-adapter-doctrine\/src\/Flow\/ETL\/Adapter\/Doctrine\/functions.php","start_line_in_file":56,"slug":"from-dbal-limit-offset","name":"from_dbal_limit_offset","namespace":"Flow\\ETL\\Adapter\\Doctrine","parameters":[{"name":"connection","type":[{"name":"Connection","namespace":"Doctrine\\DBAL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"table","type":[{"name":"Table","namespace":"Flow\\ETL\\Adapter\\Doctrine","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"order_by","type":[{"name":"OrderBy","namespace":"Flow\\ETL\\Adapter\\Doctrine","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"page_size","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"1000"},{"name":"maximum","type":[{"name":"int","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"DbalLimitOffsetExtractor","namespace":"Flow\\ETL\\Adapter\\Doctrine","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"DOCTRINE","type":"EXTRACTOR"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBDb25uZWN0aW9uICRjb25uZWN0aW9uCiAqIEBwYXJhbSBzdHJpbmd8VGFibGUgJHRhYmxlCiAqIEBwYXJhbSBhcnJheTxPcmRlckJ5PnxPcmRlckJ5ICRvcmRlcl9ieQogKiBAcGFyYW0gaW50ICRwYWdlX3NpemUKICogQHBhcmFtIG51bGx8aW50ICRtYXhpbXVtCiAqCiAqIEB0aHJvd3MgSW52YWxpZEFyZ3VtZW50RXhjZXB0aW9uCiAqLw=="},{"repository_path":"src\/adapter\/etl-adapter-doctrine\/src\/Flow\/ETL\/Adapter\/Doctrine\/functions.php","start_line_in_file":83,"slug":"from-dbal-limit-offset-qb","name":"from_dbal_limit_offset_qb","namespace":"Flow\\ETL\\Adapter\\Doctrine","parameters":[{"name":"connection","type":[{"name":"Connection","namespace":"Doctrine\\DBAL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"queryBuilder","type":[{"name":"QueryBuilder","namespace":"Doctrine\\DBAL\\Query","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"page_size","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"1000"},{"name":"maximum","type":[{"name":"int","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"offset","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"0"}],"return_type":[{"name":"DbalLimitOffsetExtractor","namespace":"Flow\\ETL\\Adapter\\Doctrine","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"DOCTRINE","type":"EXTRACTOR"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBDb25uZWN0aW9uICRjb25uZWN0aW9uCiAqIEBwYXJhbSBpbnQgJHBhZ2Vfc2l6ZQogKiBAcGFyYW0gbnVsbHxpbnQgJG1heGltdW0gLSBtYXhpbXVtIGNhbiBhbHNvIGJlIHRha2VuIGZyb20gYSBxdWVyeSBidWlsZGVyLCAkbWF4aW11bSBob3dldmVyIGlzIHVzZWQgcmVnYXJkbGVzcyBvZiB0aGUgcXVlcnkgYnVpbGRlciBpZiBpdCdzIHNldAogKiBAcGFyYW0gaW50ICRvZmZzZXQgLSBvZmZzZXQgY2FuIGFsc28gYmUgdGFrZW4gZnJvbSBhIHF1ZXJ5IGJ1aWxkZXIsICRvZmZzZXQgaG93ZXZlciBpcyB1c2VkIHJlZ2FyZGxlc3Mgb2YgdGhlIHF1ZXJ5IGJ1aWxkZXIgaWYgaXQncyBzZXQgdG8gbm9uIDAgdmFsdWUKICov"},{"repository_path":"src\/adapter\/etl-adapter-doctrine\/src\/Flow\/ETL\/Adapter\/Doctrine\/functions.php","start_line_in_file":104,"slug":"from-dbal-key-set-qb","name":"from_dbal_key_set_qb","namespace":"Flow\\ETL\\Adapter\\Doctrine","parameters":[{"name":"connection","type":[{"name":"Connection","namespace":"Doctrine\\DBAL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"queryBuilder","type":[{"name":"QueryBuilder","namespace":"Doctrine\\DBAL\\Query","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"key_set","type":[{"name":"KeySet","namespace":"Flow\\ETL\\Adapter\\Doctrine\\Pagination","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"DbalKeySetExtractor","namespace":"Flow\\ETL\\Adapter\\Doctrine","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"DOCTRINE","type":"EXTRACTOR"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/adapter\/etl-adapter-doctrine\/src\/Flow\/ETL\/Adapter\/Doctrine\/functions.php","start_line_in_file":117,"slug":"from-dbal-queries","name":"from_dbal_queries","namespace":"Flow\\ETL\\Adapter\\Doctrine","parameters":[{"name":"connection","type":[{"name":"Connection","namespace":"Doctrine\\DBAL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"query","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"parameters_set","type":[{"name":"ParametersSet","namespace":"Flow\\ETL\\Adapter\\Doctrine","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"types","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"DbalQueryExtractor","namespace":"Flow\\ETL\\Adapter\\Doctrine","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"DOCTRINE","type":"EXTRACTOR"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBudWxsfFBhcmFtZXRlcnNTZXQgJHBhcmFtZXRlcnNfc2V0IC0gZWFjaCBvbmUgcGFyYW1ldGVycyBhcnJheSB3aWxsIGJlIGV2YWx1YXRlZCBhcyBuZXcgcXVlcnkKICogQHBhcmFtIGFycmF5PGludHxzdHJpbmcsIERiYWxBcnJheVR5cGV8RGJhbFBhcmFtZXRlclR5cGV8RGJhbFR5cGV8aW50fHN0cmluZz4gJHR5cGVzCiAqLw=="},{"repository_path":"src\/adapter\/etl-adapter-doctrine\/src\/Flow\/ETL\/Adapter\/Doctrine\/functions.php","start_line_in_file":147,"slug":"dbal-from-queries","name":"dbal_from_queries","namespace":"Flow\\ETL\\Adapter\\Doctrine","parameters":[{"name":"connection","type":[{"name":"Connection","namespace":"Doctrine\\DBAL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"query","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"parameters_set","type":[{"name":"ParametersSet","namespace":"Flow\\ETL\\Adapter\\Doctrine","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"types","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"DbalQueryExtractor","namespace":"Flow\\ETL\\Adapter\\Doctrine","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"DOCTRINE","type":"EXTRACTOR"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBkZXByZWNhdGVkIHVzZSBmcm9tX2RiYWxfcXVlcmllcygpIGluc3RlYWQKICoKICogQHBhcmFtIG51bGx8UGFyYW1ldGVyc1NldCAkcGFyYW1ldGVyc19zZXQgLSBlYWNoIG9uZSBwYXJhbWV0ZXJzIGFycmF5IHdpbGwgYmUgZXZhbHVhdGVkIGFzIG5ldyBxdWVyeQogKiBAcGFyYW0gYXJyYXk8aW50fHN0cmluZywgRGJhbEFycmF5VHlwZXxEYmFsUGFyYW1ldGVyVHlwZXxEYmFsVHlwZXxpbnR8c3RyaW5nPiAkdHlwZXMKICov"},{"repository_path":"src\/adapter\/etl-adapter-doctrine\/src\/Flow\/ETL\/Adapter\/Doctrine\/functions.php","start_line_in_file":161,"slug":"from-dbal-query","name":"from_dbal_query","namespace":"Flow\\ETL\\Adapter\\Doctrine","parameters":[{"name":"connection","type":[{"name":"Connection","namespace":"Doctrine\\DBAL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"query","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"parameters","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"},{"name":"types","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"DbalQueryExtractor","namespace":"Flow\\ETL\\Adapter\\Doctrine","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"DOCTRINE","type":"EXTRACTOR"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxzdHJpbmcsIG1peGVkPnxsaXN0PG1peGVkPiAkcGFyYW1ldGVycyAtIEBkZXByZWNhdGVkIHVzZSBEYmFsUXVlcnlFeHRyYWN0b3I6OndpdGhQYXJhbWV0ZXJzKCkgaW5zdGVhZAogKiBAcGFyYW0gYXJyYXk8aW50PDAsIG1heD58c3RyaW5nLCBEYmFsQXJyYXlUeXBlfERiYWxQYXJhbWV0ZXJUeXBlfERiYWxUeXBlfHN0cmluZz4gJHR5cGVzIC0gQGRlcHJlY2F0ZWQgdXNlIERiYWxRdWVyeUV4dHJhY3Rvcjo6d2l0aFR5cGVzKCkgaW5zdGVhZAogKi8="},{"repository_path":"src\/adapter\/etl-adapter-doctrine\/src\/Flow\/ETL\/Adapter\/Doctrine\/functions.php","start_line_in_file":182,"slug":"dbal-from-query","name":"dbal_from_query","namespace":"Flow\\ETL\\Adapter\\Doctrine","parameters":[{"name":"connection","type":[{"name":"Connection","namespace":"Doctrine\\DBAL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"query","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"parameters","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"},{"name":"types","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"DbalQueryExtractor","namespace":"Flow\\ETL\\Adapter\\Doctrine","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"DOCTRINE","type":"EXTRACTOR"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBkZXByZWNhdGVkIHVzZSBmcm9tX2RiYWxfcXVlcnkoKSBpbnN0ZWFkCiAqCiAqIEBwYXJhbSBhcnJheTxzdHJpbmcsIG1peGVkPnxsaXN0PG1peGVkPiAkcGFyYW1ldGVycyAtIEBkZXByZWNhdGVkIHVzZSBEYmFsUXVlcnlFeHRyYWN0b3I6OndpdGhQYXJhbWV0ZXJzKCkgaW5zdGVhZAogKiBAcGFyYW0gYXJyYXk8aW50PDAsIG1heD58c3RyaW5nLCBEYmFsQXJyYXlUeXBlfERiYWxQYXJhbWV0ZXJUeXBlfERiYWxUeXBlfHN0cmluZz4gJHR5cGVzIC0gQGRlcHJlY2F0ZWQgdXNlIERiYWxRdWVyeUV4dHJhY3Rvcjo6d2l0aFR5cGVzKCkgaW5zdGVhZAogKi8="},{"repository_path":"src\/adapter\/etl-adapter-doctrine\/src\/Flow\/ETL\/Adapter\/Doctrine\/functions.php","start_line_in_file":208,"slug":"to-dbal-table-insert","name":"to_dbal_table_insert","namespace":"Flow\\ETL\\Adapter\\Doctrine","parameters":[{"name":"connection","type":[{"name":"Connection","namespace":"Doctrine\\DBAL","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"table","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"options","type":[{"name":"InsertOptions","namespace":"Flow\\Doctrine\\Bulk","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"DbalLoader","namespace":"Flow\\ETL\\Adapter\\Doctrine","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"DOCTRINE","type":"LOADER"}},{"name":"DocumentationExample","namespace":"Flow\\ETL\\Attribute","arguments":{"topic":"data_frame","example":"data_writing","option":"database_upsert"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEluc2VydCBuZXcgcm93cyBpbnRvIGEgZGF0YWJhc2UgdGFibGUuCiAqIEluc2VydCBjYW4gYWxzbyBiZSB1c2VkIGFzIGFuIHVwc2VydCB3aXRoIHRoZSBoZWxwIG9mIEluc2VydE9wdGlvbnMuCiAqIEluc2VydE9wdGlvbnMgYXJlIHBsYXRmb3JtIHNwZWNpZmljLCBzbyBwbGVhc2UgY2hvb3NlIHRoZSByaWdodCBvbmUgZm9yIHlvdXIgZGF0YWJhc2UuCiAqCiAqICAtIE15U1FMSW5zZXJ0T3B0aW9ucwogKiAgLSBQb3N0Z3JlU1FMSW5zZXJ0T3B0aW9ucwogKiAgLSBTcWxpdGVJbnNlcnRPcHRpb25zCiAqCiAqIEluIG9yZGVyIHRvIGNvbnRyb2wgdGhlIHNpemUgb2YgdGhlIHNpbmdsZSBpbnNlcnQsIHVzZSBEYXRhRnJhbWU6OmNodW5rU2l6ZSgpIG1ldGhvZCBqdXN0IGJlZm9yZSBjYWxsaW5nIERhdGFGcmFtZTo6bG9hZCgpLgogKgogKiBAcGFyYW0gYXJyYXk8c3RyaW5nLCBtaXhlZD58Q29ubmVjdGlvbiAkY29ubmVjdGlvbgogKgogKiBAdGhyb3dzIEludmFsaWRBcmd1bWVudEV4Y2VwdGlvbgogKi8="},{"repository_path":"src\/adapter\/etl-adapter-doctrine\/src\/Flow\/ETL\/Adapter\/Doctrine\/functions.php","start_line_in_file":228,"slug":"to-dbal-table-update","name":"to_dbal_table_update","namespace":"Flow\\ETL\\Adapter\\Doctrine","parameters":[{"name":"connection","type":[{"name":"Connection","namespace":"Doctrine\\DBAL","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"table","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"options","type":[{"name":"UpdateOptions","namespace":"Flow\\Doctrine\\Bulk","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"DbalLoader","namespace":"Flow\\ETL\\Adapter\\Doctrine","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"DOCTRINE","type":"LOADER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqICBVcGRhdGUgZXhpc3Rpbmcgcm93cyBpbiBkYXRhYmFzZS4KICoKICogIEluIG9yZGVyIHRvIGNvbnRyb2wgdGhlIHNpemUgb2YgdGhlIHNpbmdsZSByZXF1ZXN0LCB1c2UgRGF0YUZyYW1lOjpjaHVua1NpemUoKSBtZXRob2QganVzdCBiZWZvcmUgY2FsbGluZyBEYXRhRnJhbWU6OmxvYWQoKS4KICoKICogQHBhcmFtIGFycmF5PHN0cmluZywgbWl4ZWQ+fENvbm5lY3Rpb24gJGNvbm5lY3Rpb24KICoKICogQHRocm93cyBJbnZhbGlkQXJndW1lbnRFeGNlcHRpb24KICov"},{"repository_path":"src\/adapter\/etl-adapter-doctrine\/src\/Flow\/ETL\/Adapter\/Doctrine\/functions.php","start_line_in_file":248,"slug":"to-dbal-table-delete","name":"to_dbal_table_delete","namespace":"Flow\\ETL\\Adapter\\Doctrine","parameters":[{"name":"connection","type":[{"name":"Connection","namespace":"Doctrine\\DBAL","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"table","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"DbalLoader","namespace":"Flow\\ETL\\Adapter\\Doctrine","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"DOCTRINE","type":"LOADER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIERlbGV0ZSByb3dzIGZyb20gZGF0YWJhc2UgdGFibGUgYmFzZWQgb24gdGhlIHByb3ZpZGVkIGRhdGEuCiAqCiAqIEluIG9yZGVyIHRvIGNvbnRyb2wgdGhlIHNpemUgb2YgdGhlIHNpbmdsZSByZXF1ZXN0LCB1c2UgRGF0YUZyYW1lOjpjaHVua1NpemUoKSBtZXRob2QganVzdCBiZWZvcmUgY2FsbGluZyBEYXRhRnJhbWU6OmxvYWQoKS4KICoKICogQHBhcmFtIGFycmF5PHN0cmluZywgbWl4ZWQ+fENvbm5lY3Rpb24gJGNvbm5lY3Rpb24KICoKICogQHRocm93cyBJbnZhbGlkQXJndW1lbnRFeGNlcHRpb24KICov"},{"repository_path":"src\/adapter\/etl-adapter-doctrine\/src\/Flow\/ETL\/Adapter\/Doctrine\/functions.php","start_line_in_file":265,"slug":"to-dbal-schema-table","name":"to_dbal_schema_table","namespace":"Flow\\ETL\\Adapter\\Doctrine","parameters":[{"name":"schema","type":[{"name":"Schema","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"table_name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"table_options","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"},{"name":"types_map","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"Table","namespace":"Doctrine\\DBAL\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"DOCTRINE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENvbnZlcnRzIGEgRmxvd1xFVExcU2NoZW1hIHRvIGEgRG9jdHJpbmVcREJBTFxTY2hlbWFcVGFibGUuCiAqCiAqIEBwYXJhbSBTY2hlbWEgJHNjaGVtYQogKiBAcGFyYW0gYXJyYXk8YXJyYXkta2V5LCBtaXhlZD4gJHRhYmxlX29wdGlvbnMKICogQHBhcmFtIGFycmF5PGNsYXNzLXN0cmluZzxcRmxvd1xUeXBlc1xUeXBlPG1peGVkPj4sIGNsYXNzLXN0cmluZzxcRG9jdHJpbmVcREJBTFxUeXBlc1xUeXBlPj4gJHR5cGVzX21hcAogKi8="},{"repository_path":"src\/adapter\/etl-adapter-doctrine\/src\/Flow\/ETL\/Adapter\/Doctrine\/functions.php","start_line_in_file":278,"slug":"table-schema-to-flow-schema","name":"table_schema_to_flow_schema","namespace":"Flow\\ETL\\Adapter\\Doctrine","parameters":[{"name":"table","type":[{"name":"Table","namespace":"Doctrine\\DBAL\\Schema","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"types_map","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"Schema","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"DOCTRINE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENvbnZlcnRzIGEgRG9jdHJpbmVcREJBTFxTY2hlbWFcVGFibGUgdG8gYSBGbG93XEVUTFxTY2hlbWEuCiAqCiAqIEBwYXJhbSBhcnJheTxjbGFzcy1zdHJpbmc8XEZsb3dcVHlwZXNcVHlwZTxtaXhlZD4+LCBjbGFzcy1zdHJpbmc8XERvY3RyaW5lXERCQUxcVHlwZXNcVHlwZT4+ICR0eXBlc19tYXAKICoKICogQHJldHVybiBTY2hlbWEKICov"},{"repository_path":"src\/adapter\/etl-adapter-doctrine\/src\/Flow\/ETL\/Adapter\/Doctrine\/functions.php","start_line_in_file":289,"slug":"postgresql-insert-options","name":"postgresql_insert_options","namespace":"Flow\\ETL\\Adapter\\Doctrine","parameters":[{"name":"skip_conflicts","type":[{"name":"bool","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"constraint","type":[{"name":"string","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"conflict_columns","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"},{"name":"update_columns","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"PostgreSQLInsertOptions","namespace":"Flow\\Doctrine\\Bulk\\Dialect","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"DOCTRINE","type":"HELPER"}},{"name":"DocumentationExample","namespace":"Flow\\ETL\\Attribute","arguments":{"topic":"data_frame","example":"data_writing","option":"database_upsert"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxzdHJpbmc+ICRjb25mbGljdF9jb2x1bW5zCiAqIEBwYXJhbSBhcnJheTxzdHJpbmc+ICR1cGRhdGVfY29sdW1ucwogKi8="},{"repository_path":"src\/adapter\/etl-adapter-doctrine\/src\/Flow\/ETL\/Adapter\/Doctrine\/functions.php","start_line_in_file":298,"slug":"mysql-insert-options","name":"mysql_insert_options","namespace":"Flow\\ETL\\Adapter\\Doctrine","parameters":[{"name":"skip_conflicts","type":[{"name":"bool","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"upsert","type":[{"name":"bool","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"update_columns","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"MySQLInsertOptions","namespace":"Flow\\Doctrine\\Bulk\\Dialect","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"DOCTRINE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxzdHJpbmc+ICR1cGRhdGVfY29sdW1ucwogKi8="},{"repository_path":"src\/adapter\/etl-adapter-doctrine\/src\/Flow\/ETL\/Adapter\/Doctrine\/functions.php","start_line_in_file":308,"slug":"sqlite-insert-options","name":"sqlite_insert_options","namespace":"Flow\\ETL\\Adapter\\Doctrine","parameters":[{"name":"skip_conflicts","type":[{"name":"bool","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"conflict_columns","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"},{"name":"update_columns","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"SqliteInsertOptions","namespace":"Flow\\Doctrine\\Bulk\\Dialect","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"DOCTRINE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxzdHJpbmc+ICRjb25mbGljdF9jb2x1bW5zCiAqIEBwYXJhbSBhcnJheTxzdHJpbmc+ICR1cGRhdGVfY29sdW1ucwogKi8="},{"repository_path":"src\/adapter\/etl-adapter-doctrine\/src\/Flow\/ETL\/Adapter\/Doctrine\/functions.php","start_line_in_file":318,"slug":"postgresql-update-options","name":"postgresql_update_options","namespace":"Flow\\ETL\\Adapter\\Doctrine","parameters":[{"name":"primary_key_columns","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"},{"name":"update_columns","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"PostgreSQLUpdateOptions","namespace":"Flow\\Doctrine\\Bulk\\Dialect","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"DOCTRINE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxzdHJpbmc+ICRwcmltYXJ5X2tleV9jb2x1bW5zCiAqIEBwYXJhbSBhcnJheTxzdHJpbmc+ICR1cGRhdGVfY29sdW1ucwogKi8="},{"repository_path":"src\/adapter\/etl-adapter-doctrine\/src\/Flow\/ETL\/Adapter\/Doctrine\/functions.php","start_line_in_file":339,"slug":"to-dbal-transaction","name":"to_dbal_transaction","namespace":"Flow\\ETL\\Adapter\\Doctrine","parameters":[{"name":"connection","type":[{"name":"Connection","namespace":"Doctrine\\DBAL","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"loaders","type":[{"name":"Loader","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"TransactionalDbalLoader","namespace":"Flow\\ETL\\Adapter\\Doctrine","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"DOCTRINE","type":"LOADER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEV4ZWN1dGUgbXVsdGlwbGUgbG9hZGVycyB3aXRoaW4gYSBkYXRhYmFzZSB0cmFuc2FjdGlvbi4KICogRWFjaCBiYXRjaCBvZiByb3dzIHdpbGwgYmUgcHJvY2Vzc2VkIGluIGl0cyBvd24gdHJhbnNhY3Rpb24uCiAqIElmIGFueSBsb2FkZXIgZmFpbHMsIHRoZSBlbnRpcmUgYmF0Y2ggd2lsbCBiZSByb2xsZWQgYmFjay4KICoKICogQHBhcmFtIGFycmF5PHN0cmluZywgbWl4ZWQ+fENvbm5lY3Rpb24gJGNvbm5lY3Rpb24KICogQHBhcmFtIExvYWRlciAuLi4kbG9hZGVycyAtIExvYWRlcnMgdG8gZXhlY3V0ZSB3aXRoaW4gdGhlIHRyYW5zYWN0aW9uCiAqCiAqIEB0aHJvd3MgSW52YWxpZEFyZ3VtZW50RXhjZXB0aW9uCiAqLw=="},{"repository_path":"src\/adapter\/etl-adapter-doctrine\/src\/Flow\/ETL\/Adapter\/Doctrine\/functions.php","start_line_in_file":349,"slug":"pagination-key-asc","name":"pagination_key_asc","namespace":"Flow\\ETL\\Adapter\\Doctrine","parameters":[{"name":"column","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"type","type":[{"name":"ParameterType","namespace":"Doctrine\\DBAL","is_nullable":false,"is_variadic":false},{"name":"Type","namespace":"Doctrine\\DBAL\\Types","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Doctrine\\DBAL\\ParameterType::..."}],"return_type":[{"name":"Key","namespace":"Flow\\ETL\\Adapter\\Doctrine\\Pagination","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"DOCTRINE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/adapter\/etl-adapter-doctrine\/src\/Flow\/ETL\/Adapter\/Doctrine\/functions.php","start_line_in_file":355,"slug":"pagination-key-desc","name":"pagination_key_desc","namespace":"Flow\\ETL\\Adapter\\Doctrine","parameters":[{"name":"column","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"type","type":[{"name":"ParameterType","namespace":"Doctrine\\DBAL","is_nullable":false,"is_variadic":false},{"name":"Type","namespace":"Doctrine\\DBAL\\Types","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Doctrine\\DBAL\\ParameterType::..."}],"return_type":[{"name":"Key","namespace":"Flow\\ETL\\Adapter\\Doctrine\\Pagination","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"DOCTRINE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/adapter\/etl-adapter-doctrine\/src\/Flow\/ETL\/Adapter\/Doctrine\/functions.php","start_line_in_file":361,"slug":"pagination-key-set","name":"pagination_key_set","namespace":"Flow\\ETL\\Adapter\\Doctrine","parameters":[{"name":"keys","type":[{"name":"Key","namespace":"Flow\\ETL\\Adapter\\Doctrine\\Pagination","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"KeySet","namespace":"Flow\\ETL\\Adapter\\Doctrine\\Pagination","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"DOCTRINE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/adapter\/etl-adapter-excel\/src\/Flow\/ETL\/Adapter\/Excel\/DSL\/functions.php","start_line_in_file":18,"slug":"from-excel","name":"from_excel","namespace":"Flow\\ETL\\Adapter\\Excel\\DSL","parameters":[{"name":"path","type":[{"name":"Path","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ExcelExtractor","namespace":"Flow\\ETL\\Adapter\\Excel","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"EXCEL","type":"EXTRACTOR"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/adapter\/etl-adapter-excel\/src\/Flow\/ETL\/Adapter\/Excel\/DSL\/functions.php","start_line_in_file":25,"slug":"to-excel","name":"to_excel","namespace":"Flow\\ETL\\Adapter\\Excel\\DSL","parameters":[{"name":"path","type":[{"name":"Path","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ExcelLoader","namespace":"Flow\\ETL\\Adapter\\Excel","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"EXCEL","type":"LOADER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/adapter\/etl-adapter-excel\/src\/Flow\/ETL\/Adapter\/Excel\/DSL\/functions.php","start_line_in_file":31,"slug":"is-valid-excel-sheet-name","name":"is_valid_excel_sheet_name","namespace":"Flow\\ETL\\Adapter\\Excel\\DSL","parameters":[{"name":"sheet_name","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"IsValidExcelSheetName","namespace":"Flow\\ETL\\Adapter\\Excel\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"EXCEL","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/adapter\/etl-adapter-elasticsearch\/src\/Flow\/ETL\/Adapter\/Elasticsearch\/functions.php","start_line_in_file":36,"slug":"to-es-bulk-index","name":"to_es_bulk_index","namespace":"Flow\\ETL\\Adapter\\Elasticsearch","parameters":[{"name":"config","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"index","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"id_factory","type":[{"name":"IdFactory","namespace":"Flow\\ETL\\Adapter\\Elasticsearch","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"parameters","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"ElasticsearchLoader","namespace":"Flow\\ETL\\Adapter\\Elasticsearch\\ElasticsearchPHP","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"ELASTIC_SEARCH","type":"LOADER"}},{"name":"DocumentationExample","namespace":"Flow\\ETL\\Attribute","arguments":{"topic":"data_frame","example":"data_writing","option":"elasticsearch"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIGh0dHBzOi8vd3d3LmVsYXN0aWMuY28vZ3VpZGUvZW4vZWxhc3RpY3NlYXJjaC9yZWZlcmVuY2UvbWFzdGVyL2RvY3MtYnVsay5odG1sLgogKgogKiBJbiBvcmRlciB0byBjb250cm9sIHRoZSBzaXplIG9mIHRoZSBzaW5nbGUgcmVxdWVzdCwgdXNlIERhdGFGcmFtZTo6Y2h1bmtTaXplKCkgbWV0aG9kIGp1c3QgYmVmb3JlIGNhbGxpbmcgRGF0YUZyYW1lOjpsb2FkKCkuCiAqCiAqIEBwYXJhbSBhcnJheXsKICogIGhvc3RzPzogYXJyYXk8c3RyaW5nPiwKICogIGNvbm5lY3Rpb25QYXJhbXM\/OiBhcnJheTxtaXhlZD4sCiAqICByZXRyaWVzPzogaW50LAogKiAgc25pZmZPblN0YXJ0PzogYm9vbCwKICogIHNzbENlcnQ\/OiBhcnJheTxzdHJpbmc+LAogKiAgc3NsS2V5PzogYXJyYXk8c3RyaW5nPiwKICogIHNzbFZlcmlmaWNhdGlvbj86IGJvb2x8c3RyaW5nLAogKiAgZWxhc3RpY01ldGFIZWFkZXI\/OiBib29sLAogKiAgaW5jbHVkZVBvcnRJbkhvc3RIZWFkZXI\/OiBib29sCiAqIH0gJGNvbmZpZwogKiBAcGFyYW0gc3RyaW5nICRpbmRleAogKiBAcGFyYW0gSWRGYWN0b3J5ICRpZF9mYWN0b3J5CiAqIEBwYXJhbSBhcnJheTxtaXhlZD4gJHBhcmFtZXRlcnMgLSBodHRwczovL3d3dy5lbGFzdGljLmNvL2d1aWRlL2VuL2VsYXN0aWNzZWFyY2gvcmVmZXJlbmNlL21hc3Rlci9kb2NzLWJ1bGsuaHRtbCAtIEBkZXByZWNhdGVkIHVzZSB3aXRoUGFyYW1ldGVycyBtZXRob2QgaW5zdGVhZAogKi8="},{"repository_path":"src\/adapter\/etl-adapter-elasticsearch\/src\/Flow\/ETL\/Adapter\/Elasticsearch\/functions.php","start_line_in_file":47,"slug":"entry-id-factory","name":"entry_id_factory","namespace":"Flow\\ETL\\Adapter\\Elasticsearch","parameters":[{"name":"entry_name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"IdFactory","namespace":"Flow\\ETL\\Adapter\\Elasticsearch","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"ELASTIC_SEARCH","type":"HELPER"}},{"name":"DocumentationExample","namespace":"Flow\\ETL\\Attribute","arguments":{"topic":"data_frame","example":"data_writing","option":"elasticsearch"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/adapter\/etl-adapter-elasticsearch\/src\/Flow\/ETL\/Adapter\/Elasticsearch\/functions.php","start_line_in_file":53,"slug":"hash-id-factory","name":"hash_id_factory","namespace":"Flow\\ETL\\Adapter\\Elasticsearch","parameters":[{"name":"entry_names","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"IdFactory","namespace":"Flow\\ETL\\Adapter\\Elasticsearch","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"ELASTIC_SEARCH","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/adapter\/etl-adapter-elasticsearch\/src\/Flow\/ETL\/Adapter\/Elasticsearch\/functions.php","start_line_in_file":79,"slug":"to-es-bulk-update","name":"to_es_bulk_update","namespace":"Flow\\ETL\\Adapter\\Elasticsearch","parameters":[{"name":"config","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"index","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"id_factory","type":[{"name":"IdFactory","namespace":"Flow\\ETL\\Adapter\\Elasticsearch","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"parameters","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"ElasticsearchLoader","namespace":"Flow\\ETL\\Adapter\\Elasticsearch\\ElasticsearchPHP","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"ELASTIC_SEARCH","type":"LOADER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqICBodHRwczovL3d3dy5lbGFzdGljLmNvL2d1aWRlL2VuL2VsYXN0aWNzZWFyY2gvcmVmZXJlbmNlL21hc3Rlci9kb2NzLWJ1bGsuaHRtbC4KICoKICogSW4gb3JkZXIgdG8gY29udHJvbCB0aGUgc2l6ZSBvZiB0aGUgc2luZ2xlIHJlcXVlc3QsIHVzZSBEYXRhRnJhbWU6OmNodW5rU2l6ZSgpIG1ldGhvZCBqdXN0IGJlZm9yZSBjYWxsaW5nIERhdGFGcmFtZTo6bG9hZCgpLgogKgogKiBAcGFyYW0gYXJyYXl7CiAqICBob3N0cz86IGFycmF5PHN0cmluZz4sCiAqICBjb25uZWN0aW9uUGFyYW1zPzogYXJyYXk8bWl4ZWQ+LAogKiAgcmV0cmllcz86IGludCwKICogIHNuaWZmT25TdGFydD86IGJvb2wsCiAqICBzc2xDZXJ0PzogYXJyYXk8c3RyaW5nPiwKICogIHNzbEtleT86IGFycmF5PHN0cmluZz4sCiAqICBzc2xWZXJpZmljYXRpb24\/OiBib29sfHN0cmluZywKICogIGVsYXN0aWNNZXRhSGVhZGVyPzogYm9vbCwKICogIGluY2x1ZGVQb3J0SW5Ib3N0SGVhZGVyPzogYm9vbAogKiB9ICRjb25maWcKICogQHBhcmFtIHN0cmluZyAkaW5kZXgKICogQHBhcmFtIElkRmFjdG9yeSAkaWRfZmFjdG9yeQogKiBAcGFyYW0gYXJyYXk8bWl4ZWQ+ICRwYXJhbWV0ZXJzIC0gaHR0cHM6Ly93d3cuZWxhc3RpYy5jby9ndWlkZS9lbi9lbGFzdGljc2VhcmNoL3JlZmVyZW5jZS9tYXN0ZXIvZG9jcy1idWxrLmh0bWwgLSBAZGVwcmVjYXRlZCB1c2Ugd2l0aFBhcmFtZXRlcnMgbWV0aG9kIGluc3RlYWQKICov"},{"repository_path":"src\/adapter\/etl-adapter-elasticsearch\/src\/Flow\/ETL\/Adapter\/Elasticsearch\/functions.php","start_line_in_file":95,"slug":"es-hits-to-rows","name":"es_hits_to_rows","namespace":"Flow\\ETL\\Adapter\\Elasticsearch","parameters":[{"name":"source","type":[{"name":"DocumentDataSource","namespace":"Flow\\ETL\\Adapter\\Elasticsearch\\ElasticsearchPHP","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Adapter\\Elasticsearch\\ElasticsearchPHP\\DocumentDataSource::..."}],"return_type":[{"name":"HitsIntoRowsTransformer","namespace":"Flow\\ETL\\Adapter\\Elasticsearch\\ElasticsearchPHP","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"ELASTIC_SEARCH","type":"HELPER"}},{"name":"DocumentationExample","namespace":"Flow\\ETL\\Attribute","arguments":{"topic":"data_frame","example":"data_writing","option":"elasticsearch"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIFRyYW5zZm9ybXMgZWxhc3RpY3NlYXJjaCByZXN1bHRzIGludG8gY2xlYXIgRmxvdyBSb3dzIHVzaW5nIFsnaGl0cyddWydoaXRzJ11beF1bJ19zb3VyY2UnXS4KICoKICogQHJldHVybiBIaXRzSW50b1Jvd3NUcmFuc2Zvcm1lcgogKi8="},{"repository_path":"src\/adapter\/etl-adapter-elasticsearch\/src\/Flow\/ETL\/Adapter\/Elasticsearch\/functions.php","start_line_in_file":124,"slug":"from-es","name":"from_es","namespace":"Flow\\ETL\\Adapter\\Elasticsearch","parameters":[{"name":"config","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"parameters","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"pit_params","type":[{"name":"array","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"ElasticsearchExtractor","namespace":"Flow\\ETL\\Adapter\\Elasticsearch\\ElasticsearchPHP","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"ELASTIC_SEARCH","type":"EXTRACTOR"}},{"name":"DocumentationExample","namespace":"Flow\\ETL\\Attribute","arguments":{"topic":"data_frame","example":"data_reading","option":"elasticsearch"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEV4dHJhY3RvciB3aWxsIGF1dG9tYXRpY2FsbHkgdHJ5IHRvIGl0ZXJhdGUgb3ZlciB3aG9sZSBpbmRleCB1c2luZyBvbmUgb2YgdGhlIHR3byBpdGVyYXRpb24gbWV0aG9kczouCiAqCiAqIC0gZnJvbS9zaXplCiAqIC0gc2VhcmNoX2FmdGVyCiAqCiAqIFNlYXJjaCBhZnRlciBpcyBzZWxlY3RlZCB3aGVuIHlvdSBwcm92aWRlIGRlZmluZSBzb3J0IHBhcmFtZXRlcnMgaW4gcXVlcnksIG90aGVyd2lzZSBpdCB3aWxsIGZhbGxiYWNrIHRvIGZyb20vc2l6ZS4KICoKICogQHBhcmFtIGFycmF5ewogKiAgaG9zdHM\/OiBhcnJheTxzdHJpbmc+LAogKiAgY29ubmVjdGlvblBhcmFtcz86IGFycmF5PG1peGVkPiwKICogIHJldHJpZXM\/OiBpbnQsCiAqICBzbmlmZk9uU3RhcnQ\/OiBib29sLAogKiAgc3NsQ2VydD86IGFycmF5PHN0cmluZz4sCiAqICBzc2xLZXk\/OiBhcnJheTxzdHJpbmc+LAogKiAgc3NsVmVyaWZpY2F0aW9uPzogYm9vbHxzdHJpbmcsCiAqICBlbGFzdGljTWV0YUhlYWRlcj86IGJvb2wsCiAqICBpbmNsdWRlUG9ydEluSG9zdEhlYWRlcj86IGJvb2wKICogfSAkY29uZmlnCiAqIEBwYXJhbSBhcnJheTxtaXhlZD4gJHBhcmFtZXRlcnMgLSBodHRwczovL3d3dy5lbGFzdGljLmNvL2d1aWRlL2VuL2VsYXN0aWNzZWFyY2gvcmVmZXJlbmNlL21hc3Rlci9zZWFyY2gtc2VhcmNoLmh0bWwKICogQHBhcmFtID9hcnJheTxtaXhlZD4gJHBpdF9wYXJhbXMgLSB3aGVuIHVzZWQgZXh0cmFjdG9yIHdpbGwgY3JlYXRlIHBvaW50IGluIHRpbWUgdG8gc3RhYmlsaXplIHNlYXJjaCByZXN1bHRzLiBQb2ludCBpbiB0aW1lIGlzIGF1dG9tYXRpY2FsbHkgY2xvc2VkIHdoZW4gbGFzdCBlbGVtZW50IGlzIGV4dHJhY3RlZC4gaHR0cHM6Ly93d3cuZWxhc3RpYy5jby9ndWlkZS9lbi9lbGFzdGljc2VhcmNoL3JlZmVyZW5jZS9tYXN0ZXIvcG9pbnQtaW4tdGltZS1hcGkuaHRtbCAtIEBkZXByZWNhdGVkIHVzZSB3aXRoUG9pbnRJblRpbWUgbWV0aG9kIGluc3RlYWQKICov"},{"repository_path":"src\/adapter\/etl-adapter-google-sheet\/src\/Flow\/ETL\/Adapter\/GoogleSheet\/functions.php","start_line_in_file":20,"slug":"from-google-sheet","name":"from_google_sheet","namespace":"Flow\\ETL\\Adapter\\GoogleSheet","parameters":[{"name":"auth_config","type":[{"name":"Sheets","namespace":"Google\\Service","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"spreadsheet_id","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"sheet_name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"with_header","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"true"},{"name":"rows_per_page","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"1000"},{"name":"options","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"GoogleSheetExtractor","namespace":"Flow\\ETL\\Adapter\\GoogleSheet","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"GOOGLE_SHEET","type":"EXTRACTOR"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheXt0eXBlOiBzdHJpbmcsIHByb2plY3RfaWQ6IHN0cmluZywgcHJpdmF0ZV9rZXlfaWQ6IHN0cmluZywgcHJpdmF0ZV9rZXk6IHN0cmluZywgY2xpZW50X2VtYWlsOiBzdHJpbmcsIGNsaWVudF9pZDogc3RyaW5nLCBhdXRoX3VyaTogc3RyaW5nLCB0b2tlbl91cmk6IHN0cmluZywgYXV0aF9wcm92aWRlcl94NTA5X2NlcnRfdXJsOiBzdHJpbmcsIGNsaWVudF94NTA5X2NlcnRfdXJsOiBzdHJpbmd9fFNoZWV0cyAkYXV0aF9jb25maWcKICogQHBhcmFtIHN0cmluZyAkc3ByZWFkc2hlZXRfaWQKICogQHBhcmFtIHN0cmluZyAkc2hlZXRfbmFtZQogKiBAcGFyYW0gYm9vbCAkd2l0aF9oZWFkZXIgLSBAZGVwcmVjYXRlZCB1c2Ugd2l0aEhlYWRlciBtZXRob2QgaW5zdGVhZAogKiBAcGFyYW0gaW50ICRyb3dzX3Blcl9wYWdlIC0gaG93IG1hbnkgcm93cyBwZXIgcGFnZSB0byBmZXRjaCBmcm9tIEdvb2dsZSBTaGVldHMgQVBJIC0gQGRlcHJlY2F0ZWQgdXNlIHdpdGhSb3dzUGVyUGFnZSBtZXRob2QgaW5zdGVhZAogKiBAcGFyYW0gYXJyYXl7ZGF0ZVRpbWVSZW5kZXJPcHRpb24\/OiBzdHJpbmcsIG1ham9yRGltZW5zaW9uPzogc3RyaW5nLCB2YWx1ZVJlbmRlck9wdGlvbj86IHN0cmluZ30gJG9wdGlvbnMgLSBAZGVwcmVjYXRlZCB1c2Ugd2l0aE9wdGlvbnMgbWV0aG9kIGluc3RlYWQKICov"},{"repository_path":"src\/adapter\/etl-adapter-google-sheet\/src\/Flow\/ETL\/Adapter\/GoogleSheet\/functions.php","start_line_in_file":57,"slug":"from-google-sheet-columns","name":"from_google_sheet_columns","namespace":"Flow\\ETL\\Adapter\\GoogleSheet","parameters":[{"name":"auth_config","type":[{"name":"Sheets","namespace":"Google\\Service","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"spreadsheet_id","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"sheet_name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"start_range_column","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"end_range_column","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"with_header","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"true"},{"name":"rows_per_page","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"1000"},{"name":"options","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"GoogleSheetExtractor","namespace":"Flow\\ETL\\Adapter\\GoogleSheet","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"GOOGLE_SHEET","type":"EXTRACTOR"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheXt0eXBlOiBzdHJpbmcsIHByb2plY3RfaWQ6IHN0cmluZywgcHJpdmF0ZV9rZXlfaWQ6IHN0cmluZywgcHJpdmF0ZV9rZXk6IHN0cmluZywgY2xpZW50X2VtYWlsOiBzdHJpbmcsIGNsaWVudF9pZDogc3RyaW5nLCBhdXRoX3VyaTogc3RyaW5nLCB0b2tlbl91cmk6IHN0cmluZywgYXV0aF9wcm92aWRlcl94NTA5X2NlcnRfdXJsOiBzdHJpbmcsIGNsaWVudF94NTA5X2NlcnRfdXJsOiBzdHJpbmd9fFNoZWV0cyAkYXV0aF9jb25maWcKICogQHBhcmFtIHN0cmluZyAkc3ByZWFkc2hlZXRfaWQKICogQHBhcmFtIHN0cmluZyAkc2hlZXRfbmFtZQogKiBAcGFyYW0gc3RyaW5nICRzdGFydF9yYW5nZV9jb2x1bW4KICogQHBhcmFtIHN0cmluZyAkZW5kX3JhbmdlX2NvbHVtbgogKiBAcGFyYW0gYm9vbCAkd2l0aF9oZWFkZXIgLSBAZGVwcmVjYXRlZCB1c2Ugd2l0aEhlYWRlciBtZXRob2QgaW5zdGVhZAogKiBAcGFyYW0gaW50ICRyb3dzX3Blcl9wYWdlIC0gaG93IG1hbnkgcm93cyBwZXIgcGFnZSB0byBmZXRjaCBmcm9tIEdvb2dsZSBTaGVldHMgQVBJLCBkZWZhdWx0IDEwMDAgLSBAZGVwcmVjYXRlZCB1c2Ugd2l0aFJvd3NQZXJQYWdlIG1ldGhvZCBpbnN0ZWFkCiAqIEBwYXJhbSBhcnJheXtkYXRlVGltZVJlbmRlck9wdGlvbj86IHN0cmluZywgbWFqb3JEaW1lbnNpb24\/OiBzdHJpbmcsIHZhbHVlUmVuZGVyT3B0aW9uPzogc3RyaW5nfSAkb3B0aW9ucyAtIEBkZXByZWNhdGVkIHVzZSB3aXRoT3B0aW9ucyBtZXRob2QgaW5zdGVhZAogKi8="},{"repository_path":"src\/adapter\/etl-adapter-http\/src\/Flow\/ETL\/Adapter\/Http\/DSL\/functions.php","start_line_in_file":15,"slug":"from-dynamic-http-requests","name":"from_dynamic_http_requests","namespace":"Flow\\ETL\\Adapter\\Http","parameters":[{"name":"client","type":[{"name":"ClientInterface","namespace":"Psr\\Http\\Client","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"requestFactory","type":[{"name":"NextRequestFactory","namespace":"Flow\\ETL\\Adapter\\Http\\DynamicExtractor","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"PsrHttpClientDynamicExtractor","namespace":"Flow\\ETL\\Adapter\\Http","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"HTTP","type":"EXTRACTOR"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/adapter\/etl-adapter-http\/src\/Flow\/ETL\/Adapter\/Http\/DSL\/functions.php","start_line_in_file":29,"slug":"from-static-http-requests","name":"from_static_http_requests","namespace":"Flow\\ETL\\Adapter\\Http","parameters":[{"name":"client","type":[{"name":"ClientInterface","namespace":"Psr\\Http\\Client","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"requests","type":[{"name":"iterable","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"PsrHttpClientStaticExtractor","namespace":"Flow\\ETL\\Adapter\\Http","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"HTTP","type":"EXTRACTOR"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBpdGVyYWJsZTxSZXF1ZXN0SW50ZXJmYWNlPiAkcmVxdWVzdHMKICov"},{"repository_path":"src\/adapter\/etl-adapter-json\/src\/Flow\/ETL\/Adapter\/JSON\/functions.php","start_line_in_file":20,"slug":"from-json","name":"from_json","namespace":"Flow\\ETL\\Adapter\\JSON","parameters":[{"name":"path","type":[{"name":"Path","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"pointer","type":[{"name":"string","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"schema","type":[{"name":"Schema","namespace":"Flow\\ETL","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"JsonExtractor","namespace":"Flow\\ETL\\Adapter\\JSON\\JSONMachine","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"JSON","type":"EXTRACTOR"}},{"name":"DocumentationExample","namespace":"Flow\\ETL\\Attribute","arguments":{"topic":"data_frame","example":"data_reading","option":"json"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBQYXRofHN0cmluZyAkcGF0aCAtIHN0cmluZyBpcyBpbnRlcm5hbGx5IHR1cm5lZCBpbnRvIHN0cmVhbQogKiBAcGFyYW0gP3N0cmluZyAkcG9pbnRlciAtIGlmIHlvdSB3YW50IHRvIGl0ZXJhdGUgb25seSByZXN1bHRzIG9mIGEgc3VidHJlZSwgdXNlIGEgcG9pbnRlciwgcmVhZCBtb3JlIGF0IGh0dHBzOi8vZ2l0aHViLmNvbS9oYWxheGEvanNvbi1tYWNoaW5lI3BhcnNpbmctYS1zdWJ0cmVlIC0gQGRlcHJlY2F0ZSB1c2Ugd2l0aFBvaW50ZXIgbWV0aG9kIGluc3RlYWQKICogQHBhcmFtIG51bGx8U2NoZW1hICRzY2hlbWEgLSBlbmZvcmNlIHNjaGVtYSBvbiB0aGUgZXh0cmFjdGVkIGRhdGEgLSBAZGVwcmVjYXRlIHVzZSB3aXRoU2NoZW1hIG1ldGhvZCBpbnN0ZWFkCiAqLw=="},{"repository_path":"src\/adapter\/etl-adapter-json\/src\/Flow\/ETL\/Adapter\/JSON\/functions.php","start_line_in_file":45,"slug":"from-json-lines","name":"from_json_lines","namespace":"Flow\\ETL\\Adapter\\JSON","parameters":[{"name":"path","type":[{"name":"Path","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"JsonLinesExtractor","namespace":"Flow\\ETL\\Adapter\\JSON\\JSONMachine","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"JSON","type":"EXTRACTOR"}},{"name":"DocumentationExample","namespace":"Flow\\ETL\\Attribute","arguments":{"topic":"data_frame","example":"data_reading","option":"jsonl"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIFVzZWQgdG8gcmVhZCBmcm9tIGEgSlNPTiBsaW5lcyBodHRwczovL2pzb25saW5lcy5vcmcvIGZvcm1hdHRlZCBmaWxlLgogKgogKiBAcGFyYW0gUGF0aHxzdHJpbmcgJHBhdGggLSBzdHJpbmcgaXMgaW50ZXJuYWxseSB0dXJuZWQgaW50byBzdHJlYW0KICov"},{"repository_path":"src\/adapter\/etl-adapter-json\/src\/Flow\/ETL\/Adapter\/JSON\/functions.php","start_line_in_file":60,"slug":"to-json","name":"to_json","namespace":"Flow\\ETL\\Adapter\\JSON","parameters":[{"name":"path","type":[{"name":"Path","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"flags","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"4194304"},{"name":"date_time_format","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'Y-m-d\\\\TH:i:sP'"},{"name":"put_rows_in_new_lines","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"JsonLoader","namespace":"Flow\\ETL\\Adapter\\JSON","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"JSON","type":"LOADER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBQYXRofHN0cmluZyAkcGF0aAogKiBAcGFyYW0gaW50ICRmbGFncyAtIFBIUCBKU09OIEZsYWdzIC0gQGRlcHJlY2F0ZSB1c2Ugd2l0aEZsYWdzIG1ldGhvZCBpbnN0ZWFkCiAqIEBwYXJhbSBzdHJpbmcgJGRhdGVfdGltZV9mb3JtYXQgLSBmb3JtYXQgZm9yIERhdGVUaW1lSW50ZXJmYWNlOjpmb3JtYXQoKSAtIEBkZXByZWNhdGUgdXNlIHdpdGhEYXRlVGltZUZvcm1hdCBtZXRob2QgaW5zdGVhZAogKiBAcGFyYW0gYm9vbCAkcHV0X3Jvd3NfaW5fbmV3X2xpbmVzIC0gaWYgeW91IHdhbnQgdG8gcHV0IGVhY2ggcm93IGluIGEgbmV3IGxpbmUgLSBAZGVwcmVjYXRlIHVzZSB3aXRoUm93c0luTmV3TGluZXMgbWV0aG9kIGluc3RlYWQKICoKICogQHJldHVybiBKc29uTG9hZGVyCiAqLw=="},{"repository_path":"src\/adapter\/etl-adapter-json\/src\/Flow\/ETL\/Adapter\/JSON\/functions.php","start_line_in_file":80,"slug":"to-json-lines","name":"to_json_lines","namespace":"Flow\\ETL\\Adapter\\JSON","parameters":[{"name":"path","type":[{"name":"Path","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"JsonLinesLoader","namespace":"Flow\\ETL\\Adapter\\JSON","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"JSON","type":"LOADER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIFVzZWQgdG8gd3JpdGUgdG8gYSBKU09OIGxpbmVzIGh0dHBzOi8vanNvbmxpbmVzLm9yZy8gZm9ybWF0dGVkIGZpbGUuCiAqCiAqIEBwYXJhbSBQYXRofHN0cmluZyAkcGF0aAogKgogKiBAcmV0dXJuIEpzb25MaW5lc0xvYWRlcgogKi8="},{"repository_path":"src\/adapter\/etl-adapter-parquet\/src\/Flow\/ETL\/Adapter\/Parquet\/functions.php","start_line_in_file":27,"slug":"from-parquet","name":"from_parquet","namespace":"Flow\\ETL\\Adapter\\Parquet","parameters":[{"name":"path","type":[{"name":"Path","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"columns","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"},{"name":"options","type":[{"name":"Options","namespace":"Flow\\Parquet","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\Parquet\\Options::..."},{"name":"byte_order","type":[{"name":"ByteOrder","namespace":"Flow\\Parquet","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\Parquet\\ByteOrder::..."},{"name":"offset","type":[{"name":"int","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"ParquetExtractor","namespace":"Flow\\ETL\\Adapter\\Parquet","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PARQUET","type":"EXTRACTOR"}},{"name":"DocumentationExample","namespace":"Flow\\ETL\\Attribute","arguments":{"topic":"data_frame","example":"data_reading","option":"parquet"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBQYXRofHN0cmluZyAkcGF0aAogKiBAcGFyYW0gYXJyYXk8c3RyaW5nPiAkY29sdW1ucyAtIGxpc3Qgb2YgY29sdW1ucyB0byByZWFkIGZyb20gcGFycXVldCBmaWxlIC0gQGRlcHJlY2F0ZWQgdXNlIGB3aXRoQ29sdW1uc2AgbWV0aG9kIGluc3RlYWQKICogQHBhcmFtIE9wdGlvbnMgJG9wdGlvbnMgLSBAZGVwcmVjYXRlZCB1c2UgYHdpdGhPcHRpb25zYCBtZXRob2QgaW5zdGVhZAogKiBAcGFyYW0gQnl0ZU9yZGVyICRieXRlX29yZGVyIC0gQGRlcHJlY2F0ZWQgdXNlIGB3aXRoQnl0ZU9yZGVyYCBtZXRob2QgaW5zdGVhZAogKiBAcGFyYW0gbnVsbHxpbnQgJG9mZnNldCAtIEBkZXByZWNhdGVkIHVzZSBgd2l0aE9mZnNldGAgbWV0aG9kIGluc3RlYWQKICov"},{"repository_path":"src\/adapter\/etl-adapter-parquet\/src\/Flow\/ETL\/Adapter\/Parquet\/functions.php","start_line_in_file":57,"slug":"to-parquet","name":"to_parquet","namespace":"Flow\\ETL\\Adapter\\Parquet","parameters":[{"name":"path","type":[{"name":"Path","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"options","type":[{"name":"Options","namespace":"Flow\\Parquet","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"compressions","type":[{"name":"Compressions","namespace":"Flow\\Parquet\\ParquetFile","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\Parquet\\ParquetFile\\Compressions::..."},{"name":"schema","type":[{"name":"Schema","namespace":"Flow\\ETL","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"ParquetLoader","namespace":"Flow\\ETL\\Adapter\\Parquet","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PARQUET","type":"LOADER"}},{"name":"DocumentationExample","namespace":"Flow\\ETL\\Attribute","arguments":{"topic":"data_frame","example":"data_writing","option":"parquet"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBQYXRofHN0cmluZyAkcGF0aAogKiBAcGFyYW0gbnVsbHxPcHRpb25zICRvcHRpb25zIC0gQGRlcHJlY2F0ZWQgdXNlIGB3aXRoT3B0aW9uc2AgbWV0aG9kIGluc3RlYWQKICogQHBhcmFtIENvbXByZXNzaW9ucyAkY29tcHJlc3Npb25zIC0gQGRlcHJlY2F0ZWQgdXNlIGB3aXRoQ29tcHJlc3Npb25zYCBtZXRob2QgaW5zdGVhZAogKiBAcGFyYW0gbnVsbHxTY2hlbWEgJHNjaGVtYSAtIEBkZXByZWNhdGVkIHVzZSBgd2l0aFNjaGVtYWAgbWV0aG9kIGluc3RlYWQKICov"},{"repository_path":"src\/adapter\/etl-adapter-parquet\/src\/Flow\/ETL\/Adapter\/Parquet\/functions.php","start_line_in_file":85,"slug":"array-to-generator","name":"array_to_generator","namespace":"Flow\\ETL\\Adapter\\Parquet","parameters":[{"name":"data","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Generator","namespace":"","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PARQUET","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEB0ZW1wbGF0ZSBUCiAqCiAqIEBwYXJhbSBhcnJheTxUPiAkZGF0YQogKgogKiBAcmV0dXJuIFxHZW5lcmF0b3I8VD4KICov"},{"repository_path":"src\/adapter\/etl-adapter-parquet\/src\/Flow\/ETL\/Adapter\/Parquet\/functions.php","start_line_in_file":93,"slug":"empty-generator","name":"empty_generator","namespace":"Flow\\ETL\\Adapter\\Parquet","parameters":[],"return_type":[{"name":"Generator","namespace":"","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PARQUET","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/adapter\/etl-adapter-parquet\/src\/Flow\/ETL\/Adapter\/Parquet\/functions.php","start_line_in_file":99,"slug":"schema-to-parquet","name":"schema_to_parquet","namespace":"Flow\\ETL\\Adapter\\Parquet","parameters":[{"name":"schema","type":[{"name":"Schema","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Schema","namespace":"Flow\\Parquet\\ParquetFile","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PARQUET","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/adapter\/etl-adapter-parquet\/src\/Flow\/ETL\/Adapter\/Parquet\/functions.php","start_line_in_file":105,"slug":"schema-from-parquet","name":"schema_from_parquet","namespace":"Flow\\ETL\\Adapter\\Parquet","parameters":[{"name":"schema","type":[{"name":"Schema","namespace":"Flow\\Parquet\\ParquetFile","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Schema","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PARQUET","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/adapter\/etl-adapter-text\/src\/Flow\/ETL\/Adapter\/Text\/functions.php","start_line_in_file":15,"slug":"from-text","name":"from_text","namespace":"Flow\\ETL\\Adapter\\Text","parameters":[{"name":"path","type":[{"name":"Path","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"TextExtractor","namespace":"Flow\\ETL\\Adapter\\Text","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TEXT","type":"EXTRACTOR"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBQYXRofHN0cmluZyAkcGF0aAogKi8="},{"repository_path":"src\/adapter\/etl-adapter-text\/src\/Flow\/ETL\/Adapter\/Text\/functions.php","start_line_in_file":30,"slug":"to-text","name":"to_text","namespace":"Flow\\ETL\\Adapter\\Text","parameters":[{"name":"path","type":[{"name":"Path","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"new_line_separator","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'\\n'"}],"return_type":[{"name":"Loader","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TEXT","type":"LOADER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBQYXRofHN0cmluZyAkcGF0aAogKiBAcGFyYW0gc3RyaW5nICRuZXdfbGluZV9zZXBhcmF0b3IgLSBkZWZhdWx0IFBIUF9FT0wgLSBAZGVwcmVjYXRlZCB1c2Ugd2l0aE5ld0xpbmVTZXBhcmF0b3IgbWV0aG9kIGluc3RlYWQKICoKICogQHJldHVybiBMb2FkZXIKICov"},{"repository_path":"src\/adapter\/etl-adapter-xml\/src\/Flow\/ETL\/Adapter\/XML\/functions.php","start_line_in_file":34,"slug":"from-xml","name":"from_xml","namespace":"Flow\\ETL\\Adapter\\XML","parameters":[{"name":"path","type":[{"name":"Path","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"xml_node_path","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"''"}],"return_type":[{"name":"XMLParserExtractor","namespace":"Flow\\ETL\\Adapter\\XML","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"XML","type":"EXTRACTOR"}},{"name":"DocumentationExample","namespace":"Flow\\ETL\\Attribute","arguments":{"topic":"data_frame","example":"data_reading","option":"xml"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqICBJbiBvcmRlciB0byBpdGVyYXRlIG9ubHkgb3ZlciA8ZWxlbWVudD4gbm9kZXMgdXNlIGBmcm9tX3htbCgkZmlsZSktPndpdGhYTUxOb2RlUGF0aCgncm9vdC9lbGVtZW50cy9lbGVtZW50JylgLgogKgogKiAgPHJvb3Q+CiAqICAgIDxlbGVtZW50cz4KICogICAgICA8ZWxlbWVudD48L2VsZW1lbnQ+CiAqICAgICAgPGVsZW1lbnQ+PC9lbGVtZW50PgogKiAgICA8ZWxlbWVudHM+CiAqICA8L3Jvb3Q+CiAqCiAqICBYTUwgTm9kZSBQYXRoIGRvZXMgbm90IHN1cHBvcnQgYXR0cmlidXRlcyBhbmQgaXQncyBub3QgeHBhdGgsIGl0IGlzIGp1c3QgYSBzZXF1ZW5jZQogKiAgb2Ygbm9kZSBuYW1lcyBzZXBhcmF0ZWQgd2l0aCBzbGFzaC4KICoKICogQHBhcmFtIFBhdGh8c3RyaW5nICRwYXRoCiAqIEBwYXJhbSBzdHJpbmcgJHhtbF9ub2RlX3BhdGggLSBAZGVwcmVjYXRlZCB1c2UgYGZyb21feG1sKCRmaWxlKS0+d2l0aFhNTE5vZGVQYXRoKCR4bWxOb2RlUGF0aClgIG1ldGhvZCBpbnN0ZWFkCiAqLw=="},{"repository_path":"src\/adapter\/etl-adapter-xml\/src\/Flow\/ETL\/Adapter\/XML\/functions.php","start_line_in_file":50,"slug":"to-xml","name":"to_xml","namespace":"Flow\\ETL\\Adapter\\XML","parameters":[{"name":"path","type":[{"name":"Path","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"root_element_name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'rows'"},{"name":"row_element_name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'row'"},{"name":"attribute_prefix","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'_'"},{"name":"date_time_format","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'Y-m-d\\\\TH:i:s.uP'"},{"name":"xml_writer","type":[{"name":"XMLWriter","namespace":"Flow\\ETL\\Adapter\\XML","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Adapter\\XML\\XMLWriter\\DOMDocumentWriter::..."}],"return_type":[{"name":"XMLLoader","namespace":"Flow\\ETL\\Adapter\\XML\\Loader","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"XML","type":"LOADER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBQYXRofHN0cmluZyAkcGF0aAogKiBAcGFyYW0gc3RyaW5nICRyb290X2VsZW1lbnRfbmFtZSAtIEBkZXByZWNhdGVkIHVzZSBgd2l0aFJvb3RFbGVtZW50TmFtZSgpYCBtZXRob2QgaW5zdGVhZAogKiBAcGFyYW0gc3RyaW5nICRyb3dfZWxlbWVudF9uYW1lIC0gQGRlcHJlY2F0ZWQgdXNlIGB3aXRoUm93RWxlbWVudE5hbWUoKWAgbWV0aG9kIGluc3RlYWQKICogQHBhcmFtIHN0cmluZyAkYXR0cmlidXRlX3ByZWZpeCAtIEBkZXByZWNhdGVkIHVzZSBgd2l0aEF0dHJpYnV0ZVByZWZpeCgpYCBtZXRob2QgaW5zdGVhZAogKiBAcGFyYW0gc3RyaW5nICRkYXRlX3RpbWVfZm9ybWF0IC0gQGRlcHJlY2F0ZWQgdXNlIGB3aXRoRGF0ZVRpbWVGb3JtYXQoKWAgbWV0aG9kIGluc3RlYWQKICogQHBhcmFtIFhNTFdyaXRlciAkeG1sX3dyaXRlcgogKi8="},{"repository_path":"src\/lib\/filesystem\/src\/Flow\/Filesystem\/DSL\/functions.php","start_line_in_file":23,"slug":"protocol","name":"protocol","namespace":"Flow\\Filesystem\\DSL","parameters":[{"name":"protocol","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Protocol","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"FILESYSTEM","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/filesystem\/src\/Flow\/Filesystem\/DSL\/functions.php","start_line_in_file":29,"slug":"partition","name":"partition","namespace":"Flow\\Filesystem\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"value","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Partition","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"FILESYSTEM","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/filesystem\/src\/Flow\/Filesystem\/DSL\/functions.php","start_line_in_file":35,"slug":"partitions","name":"partitions","namespace":"Flow\\Filesystem\\DSL","parameters":[{"name":"partition","type":[{"name":"Partition","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"Partitions","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"FILESYSTEM","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/filesystem\/src\/Flow\/Filesystem\/DSL\/functions.php","start_line_in_file":54,"slug":"path","name":"path","namespace":"Flow\\Filesystem\\DSL","parameters":[{"name":"path","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"options","type":[{"name":"Options","namespace":"Flow\\Filesystem\\Path","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"Path","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"FILESYSTEM","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIFBhdGggc3VwcG9ydHMgZ2xvYiBwYXR0ZXJucy4KICogRXhhbXBsZXM6CiAqICAtIHBhdGgoJyouY3N2JykgLSBhbnkgY3N2IGZpbGUgaW4gY3VycmVudCBkaXJlY3RvcnkKICogIC0gcGF0aCgnLyoqIC8gKi5jc3YnKSAtIGFueSBjc3YgZmlsZSBpbiBhbnkgc3ViZGlyZWN0b3J5IChyZW1vdmUgZW1wdHkgc3BhY2VzKQogKiAgLSBwYXRoKCcvZGlyL3BhcnRpdGlvbj0qIC8qLnBhcnF1ZXQnKSAtIGFueSBwYXJxdWV0IGZpbGUgaW4gZ2l2ZW4gcGFydGl0aW9uIGRpcmVjdG9yeS4KICoKICogR2xvYiBwYXR0ZXJuIGlzIGFsc28gc3VwcG9ydGVkIGJ5IHJlbW90ZSBmaWxlc3lzdGVtcyBsaWtlIEF6dXJlCiAqCiAqICAtIHBhdGgoJ2F6dXJlLWJsb2I6Ly9kaXJlY3RvcnkvKi5jc3YnKSAtIGFueSBjc3YgZmlsZSBpbiBnaXZlbiBkaXJlY3RvcnkKICoKICogQHBhcmFtIGFycmF5PHN0cmluZywgbnVsbHxib29sfGZsb2F0fGludHxzdHJpbmd8XFVuaXRFbnVtPnxQYXRoXE9wdGlvbnMgJG9wdGlvbnMKICov"},{"repository_path":"src\/lib\/filesystem\/src\/Flow\/Filesystem\/DSL\/functions.php","start_line_in_file":67,"slug":"path-stdout","name":"path_stdout","namespace":"Flow\\Filesystem\\DSL","parameters":[{"name":"options","type":[{"name":"array","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Path","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"FILESYSTEM","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIHBhdGggdG8gcGhwIHN0ZG91dCBzdHJlYW0uCiAqCiAqIEBwYXJhbSBudWxsfGFycmF5eydzdHJlYW0nOiAnb3V0cHV0J3wnc3RkZXJyJ3wnc3Rkb3V0J30gJG9wdGlvbnMKICoKICogQHJldHVybiBQYXRoCiAqLw=="},{"repository_path":"src\/lib\/filesystem\/src\/Flow\/Filesystem\/DSL\/functions.php","start_line_in_file":81,"slug":"path-memory","name":"path_memory","namespace":"Flow\\Filesystem\\DSL","parameters":[{"name":"path","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"''"},{"name":"options","type":[{"name":"array","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Path","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"FILESYSTEM","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIHBhdGggdG8gcGhwIG1lbW9yeSBzdHJlYW0uCiAqCiAqIEBwYXJhbSBzdHJpbmcgJHBhdGggLSBkZWZhdWx0ID0gJycgLSBwYXRoIGlzIHVzZWQgYXMgYW4gaWRlbnRpZmllciBpbiBtZW1vcnkgZmlsZXN5c3RlbSwgc28gd2UgY2FuIHdyaXRlIG11bHRpcGxlIGZpbGVzIHRvIG1lbW9yeSBhdCBvbmNlLCBlYWNoIHBhdGggaXMgYSBuZXcgaGFuZGxlCiAqIEBwYXJhbSBudWxsfGFycmF5eydzdHJlYW0nOiAnbWVtb3J5J3wndGVtcCd9ICRvcHRpb25zIC0gd2hlbiBub3RoaW5nIGlzIHByb3ZpZGVkLCAndGVtcCcgc3RyZWFtIGlzIHVzZWQgYnkgZGVmYXVsdAogKgogKiBAcmV0dXJuIFBhdGgKICov"},{"repository_path":"src\/lib\/filesystem\/src\/Flow\/Filesystem\/DSL\/functions.php","start_line_in_file":92,"slug":"path-real","name":"path_real","namespace":"Flow\\Filesystem\\DSL","parameters":[{"name":"path","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"options","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"Path","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"FILESYSTEM","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIFJlc29sdmUgcmVhbCBwYXRoIGZyb20gZ2l2ZW4gcGF0aC4KICoKICogQHBhcmFtIGFycmF5PHN0cmluZywgbnVsbHxib29sfGZsb2F0fGludHxzdHJpbmd8XFVuaXRFbnVtPiAkb3B0aW9ucwogKi8="},{"repository_path":"src\/lib\/filesystem\/src\/Flow\/Filesystem\/DSL\/functions.php","start_line_in_file":98,"slug":"native-local-filesystem","name":"native_local_filesystem","namespace":"Flow\\Filesystem\\DSL","parameters":[],"return_type":[{"name":"NativeLocalFilesystem","namespace":"Flow\\Filesystem\\Local","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"FILESYSTEM","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/filesystem\/src\/Flow\/Filesystem\/DSL\/functions.php","start_line_in_file":108,"slug":"stdout-filesystem","name":"stdout_filesystem","namespace":"Flow\\Filesystem\\DSL","parameters":[],"return_type":[{"name":"StdOutFilesystem","namespace":"Flow\\Filesystem\\Local","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"FILESYSTEM","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIFdyaXRlLW9ubHkgZmlsZXN5c3RlbSB1c2VmdWwgd2hlbiB3ZSBqdXN0IHdhbnQgdG8gd3JpdGUgdGhlIG91dHB1dCB0byBzdGRvdXQuCiAqIFRoZSBtYWluIHVzZSBjYXNlIGlzIGZvciBzdHJlYW1pbmcgZGF0YXNldHMgb3ZlciBodHRwLgogKi8="},{"repository_path":"src\/lib\/filesystem\/src\/Flow\/Filesystem\/DSL\/functions.php","start_line_in_file":117,"slug":"memory-filesystem","name":"memory_filesystem","namespace":"Flow\\Filesystem\\DSL","parameters":[],"return_type":[{"name":"MemoryFilesystem","namespace":"Flow\\Filesystem\\Local","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"FILESYSTEM","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIG5ldyBtZW1vcnkgZmlsZXN5c3RlbSBhbmQgd3JpdGVzIGRhdGEgdG8gaXQgaW4gbWVtb3J5LgogKi8="},{"repository_path":"src\/lib\/filesystem\/src\/Flow\/Filesystem\/DSL\/functions.php","start_line_in_file":128,"slug":"fstab","name":"fstab","namespace":"Flow\\Filesystem\\DSL","parameters":[{"name":"filesystems","type":[{"name":"Filesystem","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"FilesystemTable","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"FILESYSTEM","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIG5ldyBmaWxlc3lzdGVtIHRhYmxlIHdpdGggZ2l2ZW4gZmlsZXN5c3RlbXMuCiAqIEZpbGVzeXN0ZW1zIGNhbiBiZSBhbHNvIG1vdW50ZWQgbGF0ZXIuCiAqIElmIG5vIGZpbGVzeXN0ZW1zIGFyZSBwcm92aWRlZCwgbG9jYWwgZmlsZXN5c3RlbSBpcyBtb3VudGVkLgogKi8="},{"repository_path":"src\/lib\/filesystem\/src\/Flow\/Filesystem\/DSL\/functions.php","start_line_in_file":144,"slug":"traceable-filesystem","name":"traceable_filesystem","namespace":"Flow\\Filesystem\\DSL","parameters":[{"name":"filesystem","type":[{"name":"Filesystem","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"telemetryConfig","type":[{"name":"FilesystemTelemetryConfig","namespace":"Flow\\Filesystem\\Telemetry","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"TraceableFilesystem","namespace":"Flow\\Filesystem\\Telemetry","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"FILESYSTEM","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIFdyYXAgYSBmaWxlc3lzdGVtIHdpdGggdGVsZW1ldHJ5IHRyYWNpbmcgc3VwcG9ydC4KICogQWxsIGZpbGVzeXN0ZW0gYW5kIHN0cmVhbSBvcGVyYXRpb25zIHdpbGwgYmUgdHJhY2VkIGFjY29yZGluZyB0byB0aGUgY29uZmlndXJhdGlvbi4KICov"},{"repository_path":"src\/lib\/filesystem\/src\/Flow\/Filesystem\/DSL\/functions.php","start_line_in_file":155,"slug":"filesystem-telemetry-config","name":"filesystem_telemetry_config","namespace":"Flow\\Filesystem\\DSL","parameters":[{"name":"telemetry","type":[{"name":"Telemetry","namespace":"Flow\\Telemetry","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"clock","type":[{"name":"ClockInterface","namespace":"Psr\\Clock","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"options","type":[{"name":"FilesystemTelemetryOptions","namespace":"Flow\\Filesystem\\Telemetry","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"FilesystemTelemetryConfig","namespace":"Flow\\Filesystem\\Telemetry","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"FILESYSTEM","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIHRlbGVtZXRyeSBjb25maWd1cmF0aW9uIGZvciB0aGUgZmlsZXN5c3RlbS4KICov"},{"repository_path":"src\/lib\/filesystem\/src\/Flow\/Filesystem\/DSL\/functions.php","start_line_in_file":170,"slug":"filesystem-telemetry-options","name":"filesystem_telemetry_options","namespace":"Flow\\Filesystem\\DSL","parameters":[{"name":"traceStreams","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"true"},{"name":"collectMetrics","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"true"}],"return_type":[{"name":"FilesystemTelemetryOptions","namespace":"Flow\\Filesystem\\Telemetry","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"FILESYSTEM","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBvcHRpb25zIGZvciBmaWxlc3lzdGVtIHRlbGVtZXRyeS4KICoKICogQHBhcmFtIGJvb2wgJHRyYWNlU3RyZWFtcyBDcmVhdGUgYSBzaW5nbGUgc3BhbiBwZXIgc3RyZWFtIGxpZmVjeWNsZSAoZGVmYXVsdDogT04pCiAqIEBwYXJhbSBib29sICRjb2xsZWN0TWV0cmljcyBDb2xsZWN0IG1ldHJpY3MgZm9yIGJ5dGVzL29wZXJhdGlvbiBjb3VudHMgKGRlZmF1bHQ6IE9OKQogKi8="},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":56,"slug":"type-structure","name":"type_structure","namespace":"Flow\\Types\\DSL","parameters":[{"name":"elements","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"},{"name":"optional_elements","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"},{"name":"allow_extra","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"StructureType","namespace":"Flow\\Types\\Type\\Logical","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEB0ZW1wbGF0ZSBUCiAqCiAqIEBwYXJhbSBhcnJheTxzdHJpbmcsIFR5cGU8VD4+ICRlbGVtZW50cwogKiBAcGFyYW0gYXJyYXk8c3RyaW5nLCBUeXBlPFQ+PiAkb3B0aW9uYWxfZWxlbWVudHMKICoKICogQHJldHVybiBTdHJ1Y3R1cmVUeXBlPFQ+CiAqLw=="},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":73,"slug":"type-union","name":"type_union","namespace":"Flow\\Types\\DSL","parameters":[{"name":"first","type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"second","type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"types","type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEB0ZW1wbGF0ZSBUCiAqIEB0ZW1wbGF0ZSBUCiAqIEB0ZW1wbGF0ZSBUCiAqCiAqIEBwYXJhbSBUeXBlPFQ+ICRmaXJzdAogKiBAcGFyYW0gVHlwZTxUPiAkc2Vjb25kCiAqIEBwYXJhbSBUeXBlPFQ+IC4uLiR0eXBlcwogKgogKiBAcmV0dXJuIFR5cGU8VD4KICov"},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":94,"slug":"type-intersection","name":"type_intersection","namespace":"Flow\\Types\\DSL","parameters":[{"name":"first","type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"second","type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"types","type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEB0ZW1wbGF0ZSBUCiAqCiAqIEBwYXJhbSBUeXBlPFQ+ICRmaXJzdAogKiBAcGFyYW0gVHlwZTxUPiAkc2Vjb25kCiAqIEBwYXJhbSBUeXBlPFQ+IC4uLiR0eXBlcwogKgogKiBAcmV0dXJuIFR5cGU8VD4KICov"},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":109,"slug":"type-numeric-string","name":"type_numeric_string","namespace":"Flow\\Types\\DSL","parameters":[],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gVHlwZTxudW1lcmljLXN0cmluZz4KICov"},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":122,"slug":"type-optional","name":"type_optional","namespace":"Flow\\Types\\DSL","parameters":[{"name":"type","type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEB0ZW1wbGF0ZSBUCiAqCiAqIEBwYXJhbSBUeXBlPFQ+ICR0eXBlCiAqCiAqIEByZXR1cm4gVHlwZTxUPgogKi8="},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":133,"slug":"type-from-array","name":"type_from_array","namespace":"Flow\\Types\\DSL","parameters":[{"name":"data","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxzdHJpbmcsIG1peGVkPiAkZGF0YQogKgogKiBAcmV0dXJuIFR5cGU8bWl4ZWQ+CiAqLw=="},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":144,"slug":"type-is-nullable","name":"type_is_nullable","namespace":"Flow\\Types\\DSL","parameters":[{"name":"type","type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEB0ZW1wbGF0ZSBUCiAqCiAqIEBwYXJhbSBUeXBlPFQ+ICR0eXBlCiAqLw=="},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":166,"slug":"type-equals","name":"type_equals","namespace":"Flow\\Types\\DSL","parameters":[{"name":"left","type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"right","type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBUeXBlPG1peGVkPiAkbGVmdAogKiBAcGFyYW0gVHlwZTxtaXhlZD4gJHJpZ2h0CiAqLw=="},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":179,"slug":"types","name":"types","namespace":"Flow\\Types\\DSL","parameters":[{"name":"types","type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"Types","namespace":"Flow\\Types\\Type","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEB0ZW1wbGF0ZSBUCiAqCiAqIEBwYXJhbSBUeXBlPFQ+IC4uLiR0eXBlcwogKgogKiBAcmV0dXJuIFR5cGVzPFQ+CiAqLw=="},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":192,"slug":"type-list","name":"type_list","namespace":"Flow\\Types\\DSL","parameters":[{"name":"element","type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ListType","namespace":"Flow\\Types\\Type\\Logical","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEB0ZW1wbGF0ZSBUCiAqCiAqIEBwYXJhbSBUeXBlPFQ+ICRlbGVtZW50CiAqCiAqIEByZXR1cm4gTGlzdFR5cGU8VD4KICov"},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":207,"slug":"type-map","name":"type_map","namespace":"Flow\\Types\\DSL","parameters":[{"name":"key_type","type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"value_type","type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"MapType","namespace":"Flow\\Types\\Type\\Logical","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEB0ZW1wbGF0ZSBUS2V5IG9mIGFycmF5LWtleQogKiBAdGVtcGxhdGUgVFZhbHVlCiAqCiAqIEBwYXJhbSBUeXBlPFRLZXk+ICRrZXlfdHlwZQogKiBAcGFyYW0gVHlwZTxUVmFsdWU+ICR2YWx1ZV90eXBlCiAqCiAqIEByZXR1cm4gTWFwVHlwZTxUS2V5LCBUVmFsdWU+CiAqLw=="},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":216,"slug":"type-json","name":"type_json","namespace":"Flow\\Types\\DSL","parameters":[],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gVHlwZTxKc29uPgogKi8="},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":225,"slug":"type-datetime","name":"type_datetime","namespace":"Flow\\Types\\DSL","parameters":[],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gVHlwZTxcRGF0ZVRpbWVJbnRlcmZhY2U+CiAqLw=="},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":234,"slug":"type-date","name":"type_date","namespace":"Flow\\Types\\DSL","parameters":[],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gVHlwZTxcRGF0ZVRpbWVJbnRlcmZhY2U+CiAqLw=="},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":243,"slug":"type-time","name":"type_time","namespace":"Flow\\Types\\DSL","parameters":[],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gVHlwZTxcRGF0ZUludGVydmFsPgogKi8="},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":252,"slug":"type-time-zone","name":"type_time_zone","namespace":"Flow\\Types\\DSL","parameters":[],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gVHlwZTxcRGF0ZVRpbWVab25lPgogKi8="},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":261,"slug":"type-xml","name":"type_xml","namespace":"Flow\\Types\\DSL","parameters":[],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gVHlwZTxcRE9NRG9jdW1lbnQ+CiAqLw=="},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":270,"slug":"type-xml-element","name":"type_xml_element","namespace":"Flow\\Types\\DSL","parameters":[],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gVHlwZTxcRE9NRWxlbWVudD4KICov"},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":279,"slug":"type-uuid","name":"type_uuid","namespace":"Flow\\Types\\DSL","parameters":[],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gVHlwZTxVdWlkPgogKi8="},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":288,"slug":"type-integer","name":"type_integer","namespace":"Flow\\Types\\DSL","parameters":[],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gVHlwZTxpbnQ+CiAqLw=="},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":297,"slug":"type-string","name":"type_string","namespace":"Flow\\Types\\DSL","parameters":[],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gVHlwZTxzdHJpbmc+CiAqLw=="},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":306,"slug":"type-float","name":"type_float","namespace":"Flow\\Types\\DSL","parameters":[],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gVHlwZTxmbG9hdD4KICov"},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":315,"slug":"type-boolean","name":"type_boolean","namespace":"Flow\\Types\\DSL","parameters":[],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gVHlwZTxib29sPgogKi8="},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":328,"slug":"type-instance-of","name":"type_instance_of","namespace":"Flow\\Types\\DSL","parameters":[{"name":"class","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEB0ZW1wbGF0ZSBUIG9mIG9iamVjdAogKgogKiBAcGFyYW0gY2xhc3Mtc3RyaW5nPFQ+ICRjbGFzcwogKgogKiBAcmV0dXJuIFR5cGU8VD4KICov"},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":337,"slug":"type-object","name":"type_object","namespace":"Flow\\Types\\DSL","parameters":[],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gVHlwZTxvYmplY3Q+CiAqLw=="},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":346,"slug":"type-scalar","name":"type_scalar","namespace":"Flow\\Types\\DSL","parameters":[],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gVHlwZTxib29sfGZsb2F0fGludHxzdHJpbmc+CiAqLw=="},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":355,"slug":"type-resource","name":"type_resource","namespace":"Flow\\Types\\DSL","parameters":[],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gVHlwZTxyZXNvdXJjZT4KICov"},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":364,"slug":"type-array","name":"type_array","namespace":"Flow\\Types\\DSL","parameters":[],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gVHlwZTxhcnJheTxtaXhlZD4+CiAqLw=="},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":373,"slug":"type-callable","name":"type_callable","namespace":"Flow\\Types\\DSL","parameters":[],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gVHlwZTxjYWxsYWJsZT4KICov"},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":382,"slug":"type-null","name":"type_null","namespace":"Flow\\Types\\DSL","parameters":[],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gVHlwZTxudWxsPgogKi8="},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":391,"slug":"type-mixed","name":"type_mixed","namespace":"Flow\\Types\\DSL","parameters":[],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gVHlwZTxtaXhlZD4KICov"},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":400,"slug":"type-positive-integer","name":"type_positive_integer","namespace":"Flow\\Types\\DSL","parameters":[],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gVHlwZTxpbnQ8MCwgbWF4Pj4KICov"},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":409,"slug":"type-non-empty-string","name":"type_non_empty_string","namespace":"Flow\\Types\\DSL","parameters":[],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gVHlwZTxub24tZW1wdHktc3RyaW5nPgogKi8="},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":422,"slug":"type-enum","name":"type_enum","namespace":"Flow\\Types\\DSL","parameters":[{"name":"class","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEB0ZW1wbGF0ZSBUIG9mIFVuaXRFbnVtCiAqCiAqIEBwYXJhbSBjbGFzcy1zdHJpbmc8VD4gJGNsYXNzCiAqCiAqIEByZXR1cm4gVHlwZTxUPgogKi8="},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":435,"slug":"type-literal","name":"type_literal","namespace":"Flow\\Types\\DSL","parameters":[{"name":"value","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"float","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"LiteralType","namespace":"Flow\\Types\\Type\\Logical","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEB0ZW1wbGF0ZSBUIG9mIGJvb2x8ZmxvYXR8aW50fHN0cmluZwogKgogKiBAcGFyYW0gVCAkdmFsdWUKICoKICogQHJldHVybiBMaXRlcmFsVHlwZTxUPgogKi8="},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":444,"slug":"type-html","name":"type_html","namespace":"Flow\\Types\\DSL","parameters":[],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gVHlwZTxIVE1MRG9jdW1lbnQ+CiAqLw=="},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":453,"slug":"type-html-element","name":"type_html_element","namespace":"Flow\\Types\\DSL","parameters":[],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gVHlwZTxIVE1MRWxlbWVudD4KICov"},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":465,"slug":"type-is","name":"type_is","namespace":"Flow\\Types\\DSL","parameters":[{"name":"type","type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"typeClass","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEB0ZW1wbGF0ZSBUCiAqCiAqIEBwYXJhbSBUeXBlPFQ+ICR0eXBlCiAqIEBwYXJhbSBjbGFzcy1zdHJpbmc8VHlwZTxtaXhlZD4+ICR0eXBlQ2xhc3MKICov"},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":478,"slug":"type-is-any","name":"type_is_any","namespace":"Flow\\Types\\DSL","parameters":[{"name":"type","type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"typeClass","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"typeClasses","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEB0ZW1wbGF0ZSBUCiAqCiAqIEBwYXJhbSBUeXBlPFQ+ICR0eXBlCiAqIEBwYXJhbSBjbGFzcy1zdHJpbmc8VHlwZTxtaXhlZD4+ICR0eXBlQ2xhc3MKICogQHBhcmFtIGNsYXNzLXN0cmluZzxUeXBlPG1peGVkPj4gLi4uJHR5cGVDbGFzc2VzCiAqLw=="},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":487,"slug":"get-type","name":"get_type","namespace":"Flow\\Types\\DSL","parameters":[{"name":"value","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gVHlwZTxtaXhlZD4KICov"},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":500,"slug":"type-class-string","name":"type_class_string","namespace":"Flow\\Types\\DSL","parameters":[{"name":"class","type":[{"name":"string","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEB0ZW1wbGF0ZSBUIG9mIG9iamVjdAogKgogKiBAcGFyYW0gbnVsbHxjbGFzcy1zdHJpbmc8VD4gJGNsYXNzCiAqCiAqIEByZXR1cm4gKCRjbGFzcyBpcyBudWxsID8gVHlwZTxjbGFzcy1zdHJpbmc+IDogVHlwZTxjbGFzcy1zdHJpbmc8VD4+KQogKi8="},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":506,"slug":"dom-element-to-string","name":"dom_element_to_string","namespace":"Flow\\Types\\DSL","parameters":[{"name":"element","type":[{"name":"DOMElement","namespace":"","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"format_output","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"preserver_white_space","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"false","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":185,"slug":"sql-parser","name":"sql_parser","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"Parser","namespace":"Flow\\PostgreSql","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":191,"slug":"sql-parse","name":"sql_parse","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"sql","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ParsedQuery","namespace":"Flow\\PostgreSql","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":201,"slug":"sql-fingerprint","name":"sql_fingerprint","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"sql","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"string","namespace":null,"is_nullable":true,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIFJldHVybnMgYSBmaW5nZXJwcmludCBvZiB0aGUgZ2l2ZW4gU1FMIHF1ZXJ5LgogKiBMaXRlcmFsIHZhbHVlcyBhcmUgbm9ybWFsaXplZCBzbyB0aGV5IHdvbid0IGFmZmVjdCB0aGUgZmluZ2VycHJpbnQuCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":212,"slug":"sql-normalize","name":"sql_normalize","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"sql","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"string","namespace":null,"is_nullable":true,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIE5vcm1hbGl6ZSBTUUwgcXVlcnkgYnkgcmVwbGFjaW5nIGxpdGVyYWwgdmFsdWVzIGFuZCBuYW1lZCBwYXJhbWV0ZXJzIHdpdGggcG9zaXRpb25hbCBwYXJhbWV0ZXJzLgogKiBXSEVSRSBpZCA9IDppZCB3aWxsIGJlIGNoYW5nZWQgaW50byBXSEVSRSBpZCA9ICQxCiAqIFdIRVJFIGlkID0gMSB3aWxsIGJlIGNoYW5nZWQgaW50byBXSEVSRSBpZCA9ICQxLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":222,"slug":"sql-normalize-utility","name":"sql_normalize_utility","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"sql","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"string","namespace":null,"is_nullable":true,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIE5vcm1hbGl6ZSB1dGlsaXR5IFNRTCBzdGF0ZW1lbnRzIChEREwgbGlrZSBDUkVBVEUsIEFMVEVSLCBEUk9QKS4KICogVGhpcyBoYW5kbGVzIERETCBzdGF0ZW1lbnRzIGRpZmZlcmVudGx5IGZyb20gcGdfbm9ybWFsaXplKCkgd2hpY2ggaXMgb3B0aW1pemVkIGZvciBETUwuCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":233,"slug":"sql-split","name":"sql_split","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"sql","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIFNwbGl0IHN0cmluZyB3aXRoIG11bHRpcGxlIFNRTCBzdGF0ZW1lbnRzIGludG8gYXJyYXkgb2YgaW5kaXZpZHVhbCBzdGF0ZW1lbnRzLgogKgogKiBAcmV0dXJuIGFycmF5PHN0cmluZz4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":242,"slug":"sql-deparse-options","name":"sql_deparse_options","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"DeparseOptions","namespace":"Flow\\PostgreSql","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBEZXBhcnNlT3B0aW9ucyBmb3IgY29uZmlndXJpbmcgU1FMIGZvcm1hdHRpbmcuCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":256,"slug":"sql-deparse","name":"sql_deparse","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"query","type":[{"name":"ParsedQuery","namespace":"Flow\\PostgreSql","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"options","type":[{"name":"DeparseOptions","namespace":"Flow\\PostgreSql","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENvbnZlcnQgYSBQYXJzZWRRdWVyeSBBU1QgYmFjayB0byBTUUwgc3RyaW5nLgogKgogKiBXaGVuIGNhbGxlZCB3aXRob3V0IG9wdGlvbnMsIHJldHVybnMgdGhlIFNRTCBhcyBhIHNpbXBsZSBzdHJpbmcuCiAqIFdoZW4gY2FsbGVkIHdpdGggRGVwYXJzZU9wdGlvbnMsIGFwcGxpZXMgZm9ybWF0dGluZyAocHJldHR5LXByaW50aW5nLCBpbmRlbnRhdGlvbiwgZXRjLikuCiAqCiAqIEB0aHJvd3MgXFJ1bnRpbWVFeGNlcHRpb24gaWYgZGVwYXJzaW5nIGZhaWxzCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":272,"slug":"sql-format","name":"sql_format","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"sql","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"options","type":[{"name":"DeparseOptions","namespace":"Flow\\PostgreSql","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIFBhcnNlIGFuZCBmb3JtYXQgU1FMIHF1ZXJ5IHdpdGggcHJldHR5IHByaW50aW5nLgogKgogKiBUaGlzIGlzIGEgY29udmVuaWVuY2UgZnVuY3Rpb24gdGhhdCBwYXJzZXMgU1FMIGFuZCByZXR1cm5zIGl0IGZvcm1hdHRlZC4KICoKICogQHBhcmFtIHN0cmluZyAkc3FsIFRoZSBTUUwgcXVlcnkgdG8gZm9ybWF0CiAqIEBwYXJhbSBudWxsfERlcGFyc2VPcHRpb25zICRvcHRpb25zIEZvcm1hdHRpbmcgb3B0aW9ucyAoZGVmYXVsdHMgdG8gcHJldHR5LXByaW50IGVuYWJsZWQpCiAqCiAqIEB0aHJvd3MgXFJ1bnRpbWVFeGNlcHRpb24gaWYgcGFyc2luZyBvciBkZXBhcnNpbmcgZmFpbHMKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":282,"slug":"sql-summary","name":"sql_summary","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"sql","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"options","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"0"},{"name":"truncateLimit","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"0"}],"return_type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEdlbmVyYXRlIGEgc3VtbWFyeSBvZiBwYXJzZWQgcXVlcmllcyBpbiBwcm90b2J1ZiBmb3JtYXQuCiAqIFVzZWZ1bCBmb3IgcXVlcnkgbW9uaXRvcmluZyBhbmQgbG9nZ2luZyB3aXRob3V0IGZ1bGwgQVNUIG92ZXJoZWFkLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":297,"slug":"sql-to-paginated-query","name":"sql_to_paginated_query","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"sql","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"limit","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"offset","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"0"}],"return_type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIFRyYW5zZm9ybSBhIFNRTCBxdWVyeSBpbnRvIGEgcGFnaW5hdGVkIHF1ZXJ5IHdpdGggTElNSVQgYW5kIE9GRlNFVC4KICoKICogQHBhcmFtIHN0cmluZyAkc3FsIFRoZSBTUUwgcXVlcnkgdG8gcGFnaW5hdGUKICogQHBhcmFtIGludCAkbGltaXQgTWF4aW11bSBudW1iZXIgb2Ygcm93cyB0byByZXR1cm4KICogQHBhcmFtIGludCAkb2Zmc2V0IE51bWJlciBvZiByb3dzIHRvIHNraXAgKHJlcXVpcmVzIE9SREVSIEJZIGluIHF1ZXJ5KQogKgogKiBAcmV0dXJuIHN0cmluZyBUaGUgcGFnaW5hdGVkIFNRTCBxdWVyeQogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":314,"slug":"sql-to-limited-query","name":"sql_to_limited_query","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"sql","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"limit","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIFRyYW5zZm9ybSBhIFNRTCBxdWVyeSB0byBsaW1pdCByZXN1bHRzIHRvIGEgc3BlY2lmaWMgbnVtYmVyIG9mIHJvd3MuCiAqCiAqIEBwYXJhbSBzdHJpbmcgJHNxbCBUaGUgU1FMIHF1ZXJ5IHRvIGxpbWl0CiAqIEBwYXJhbSBpbnQgJGxpbWl0IE1heGltdW0gbnVtYmVyIG9mIHJvd3MgdG8gcmV0dXJuCiAqCiAqIEByZXR1cm4gc3RyaW5nIFRoZSBsaW1pdGVkIFNRTCBxdWVyeQogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":333,"slug":"sql-to-count-query","name":"sql_to_count_query","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"sql","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIFRyYW5zZm9ybSBhIFNRTCBxdWVyeSBpbnRvIGEgQ09VTlQgcXVlcnkgZm9yIHBhZ2luYXRpb24uCiAqCiAqIFdyYXBzIHRoZSBxdWVyeSBpbjogU0VMRUNUIENPVU5UKCopIEZST00gKC4uLikgQVMgX2NvdW50X3N1YnEKICogUmVtb3ZlcyBPUkRFUiBCWSBhbmQgTElNSVQvT0ZGU0VUIGZyb20gdGhlIGlubmVyIHF1ZXJ5LgogKgogKiBAcGFyYW0gc3RyaW5nICRzcWwgVGhlIFNRTCBxdWVyeSB0byB0cmFuc2Zvcm0KICoKICogQHJldHVybiBzdHJpbmcgVGhlIENPVU5UIHF1ZXJ5CiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":355,"slug":"sql-to-keyset-query","name":"sql_to_keyset_query","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"sql","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"limit","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"columns","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"cursor","type":[{"name":"array","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIFRyYW5zZm9ybSBhIFNRTCBxdWVyeSBpbnRvIGEga2V5c2V0IChjdXJzb3ItYmFzZWQpIHBhZ2luYXRlZCBxdWVyeS4KICoKICogTW9yZSBlZmZpY2llbnQgdGhhbiBPRkZTRVQgZm9yIGxhcmdlIGRhdGFzZXRzIC0gdXNlcyBpbmRleGVkIFdIRVJFIGNvbmRpdGlvbnMuCiAqIEF1dG9tYXRpY2FsbHkgZGV0ZWN0cyBleGlzdGluZyBxdWVyeSBwYXJhbWV0ZXJzIGFuZCBhcHBlbmRzIGtleXNldCBwbGFjZWhvbGRlcnMgYXQgdGhlIGVuZC4KICoKICogQHBhcmFtIHN0cmluZyAkc3FsIFRoZSBTUUwgcXVlcnkgdG8gcGFnaW5hdGUgKG11c3QgaGF2ZSBPUkRFUiBCWSkKICogQHBhcmFtIGludCAkbGltaXQgTWF4aW11bSBudW1iZXIgb2Ygcm93cyB0byByZXR1cm4KICogQHBhcmFtIGxpc3Q8S2V5c2V0Q29sdW1uPiAkY29sdW1ucyBDb2x1bW5zIGZvciBrZXlzZXQgcGFnaW5hdGlvbiAobXVzdCBtYXRjaCBPUkRFUiBCWSkKICogQHBhcmFtIG51bGx8bGlzdDxudWxsfGJvb2x8ZmxvYXR8aW50fHN0cmluZz4gJGN1cnNvciBWYWx1ZXMgZnJvbSBsYXN0IHJvdyBvZiBwcmV2aW91cyBwYWdlIChudWxsIGZvciBmaXJzdCBwYWdlKQogKgogKiBAcmV0dXJuIHN0cmluZyBUaGUgcGFnaW5hdGVkIFNRTCBxdWVyeQogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":370,"slug":"sql-keyset-column","name":"sql_keyset_column","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"column","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"order","type":[{"name":"SortOrder","namespace":"Flow\\PostgreSql\\AST\\Transformers","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\PostgreSql\\AST\\Transformers\\SortOrder::..."}],"return_type":[{"name":"KeysetColumn","namespace":"Flow\\PostgreSql\\AST\\Transformers","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIEtleXNldENvbHVtbiBmb3Iga2V5c2V0IHBhZ2luYXRpb24uCiAqCiAqIEBwYXJhbSBzdHJpbmcgJGNvbHVtbiBDb2x1bW4gbmFtZSAoY2FuIGluY2x1ZGUgdGFibGUgYWxpYXMgbGlrZSAidS5pZCIpCiAqIEBwYXJhbSBTb3J0T3JkZXIgJG9yZGVyIFNvcnQgb3JkZXIgKEFTQyBvciBERVNDKQogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":379,"slug":"sql-query-columns","name":"sql_query_columns","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"query","type":[{"name":"ParsedQuery","namespace":"Flow\\PostgreSql","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Columns","namespace":"Flow\\PostgreSql\\Extractors","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEV4dHJhY3QgY29sdW1ucyBmcm9tIGEgcGFyc2VkIFNRTCBxdWVyeS4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":388,"slug":"sql-query-tables","name":"sql_query_tables","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"query","type":[{"name":"ParsedQuery","namespace":"Flow\\PostgreSql","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Tables","namespace":"Flow\\PostgreSql\\Extractors","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEV4dHJhY3QgdGFibGVzIGZyb20gYSBwYXJzZWQgU1FMIHF1ZXJ5LgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":397,"slug":"sql-query-functions","name":"sql_query_functions","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"query","type":[{"name":"ParsedQuery","namespace":"Flow\\PostgreSql","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Functions","namespace":"Flow\\PostgreSql\\Extractors","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEV4dHJhY3QgZnVuY3Rpb25zIGZyb20gYSBwYXJzZWQgU1FMIHF1ZXJ5LgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":406,"slug":"sql-query-order-by","name":"sql_query_order_by","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"query","type":[{"name":"ParsedQuery","namespace":"Flow\\PostgreSql","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"OrderBy","namespace":"Flow\\PostgreSql\\Extractors","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEV4dHJhY3QgT1JERVIgQlkgY2xhdXNlcyBmcm9tIGEgcGFyc2VkIFNRTCBxdWVyeS4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":420,"slug":"sql-query-depth","name":"sql_query_depth","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"sql","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEdldCB0aGUgbWF4aW11bSBuZXN0aW5nIGRlcHRoIG9mIGEgU1FMIHF1ZXJ5LgogKgogKiBFeGFtcGxlOgogKiAtICJTRUxFQ1QgKiBGUk9NIHQiID0+IDEKICogLSAiU0VMRUNUICogRlJPTSAoU0VMRUNUICogRlJPTSB0KSIgPT4gMgogKiAtICJTRUxFQ1QgKiBGUk9NIChTRUxFQ1QgKiBGUk9NIChTRUxFQ1QgKiBGUk9NIHQpKSIgPT4gMwogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":437,"slug":"sql-to-explain","name":"sql_to_explain","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"sql","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"config","type":[{"name":"ExplainConfig","namespace":"Flow\\PostgreSql\\AST\\Transformers","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIFRyYW5zZm9ybSBhIFNRTCBxdWVyeSBpbnRvIGFuIEVYUExBSU4gcXVlcnkuCiAqCiAqIFJldHVybnMgdGhlIG1vZGlmaWVkIFNRTCB3aXRoIEVYUExBSU4gd3JhcHBlZCBhcm91bmQgaXQuCiAqIERlZmF1bHRzIHRvIEVYUExBSU4gQU5BTFlaRSB3aXRoIEpTT04gZm9ybWF0IGZvciBlYXN5IHBhcnNpbmcuCiAqCiAqIEBwYXJhbSBzdHJpbmcgJHNxbCBUaGUgU1FMIHF1ZXJ5IHRvIGV4cGxhaW4KICogQHBhcmFtIG51bGx8RXhwbGFpbkNvbmZpZyAkY29uZmlnIEVYUExBSU4gY29uZmlndXJhdGlvbiAoZGVmYXVsdHMgdG8gZm9yQW5hbHlzaXMoKSkKICoKICogQHJldHVybiBzdHJpbmcgVGhlIEVYUExBSU4gcXVlcnkKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":457,"slug":"sql-explain-config","name":"sql_explain_config","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"analyze","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"true"},{"name":"verbose","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"costs","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"true"},{"name":"buffers","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"true"},{"name":"timing","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"true"},{"name":"format","type":[{"name":"ExplainFormat","namespace":"Flow\\PostgreSql\\QueryBuilder\\Utility","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\PostgreSql\\QueryBuilder\\Utility\\ExplainFormat::..."}],"return_type":[{"name":"ExplainConfig","namespace":"Flow\\PostgreSql\\AST\\Transformers","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBFeHBsYWluQ29uZmlnIGZvciBjdXN0b21pemluZyBFWFBMQUlOIG9wdGlvbnMuCiAqCiAqIEBwYXJhbSBib29sICRhbmFseXplIFdoZXRoZXIgdG8gYWN0dWFsbHkgZXhlY3V0ZSB0aGUgcXVlcnkgKEFOQUxZWkUpCiAqIEBwYXJhbSBib29sICR2ZXJib3NlIEluY2x1ZGUgdmVyYm9zZSBvdXRwdXQKICogQHBhcmFtIGJvb2wgJGNvc3RzIEluY2x1ZGUgY29zdCBlc3RpbWF0ZXMgKGRlZmF1bHQgdHJ1ZSkKICogQHBhcmFtIGJvb2wgJGJ1ZmZlcnMgSW5jbHVkZSBidWZmZXIgdXNhZ2Ugc3RhdGlzdGljcyAocmVxdWlyZXMgYW5hbHl6ZSkKICogQHBhcmFtIGJvb2wgJHRpbWluZyBJbmNsdWRlIHRpbWluZyBpbmZvcm1hdGlvbiAocmVxdWlyZXMgYW5hbHl6ZSkKICogQHBhcmFtIEV4cGxhaW5Gb3JtYXQgJGZvcm1hdCBPdXRwdXQgZm9ybWF0IChKU09OIHJlY29tbWVuZGVkIGZvciBwYXJzaW5nKQogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":479,"slug":"sql-explain-modifier","name":"sql_explain_modifier","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"config","type":[{"name":"ExplainConfig","namespace":"Flow\\PostgreSql\\AST\\Transformers","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ExplainModifier","namespace":"Flow\\PostgreSql\\AST\\Transformers","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBFeHBsYWluTW9kaWZpZXIgZm9yIHRyYW5zZm9ybWluZyBxdWVyaWVzIGludG8gRVhQTEFJTiBxdWVyaWVzLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":492,"slug":"sql-explain-parse","name":"sql_explain_parse","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"jsonOutput","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Plan","namespace":"Flow\\PostgreSql\\Explain\\Plan","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIFBhcnNlIEVYUExBSU4gSlNPTiBvdXRwdXQgaW50byBhIFBsYW4gb2JqZWN0LgogKgogKiBAcGFyYW0gc3RyaW5nICRqc29uT3V0cHV0IFRoZSBKU09OIG91dHB1dCBmcm9tIEVYUExBSU4gKEZPUk1BVCBKU09OKQogKgogKiBAcmV0dXJuIFBsYW4gVGhlIHBhcnNlZCBleGVjdXRpb24gcGxhbgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":505,"slug":"sql-analyze","name":"sql_analyze","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"plan","type":[{"name":"Plan","namespace":"Flow\\PostgreSql\\Explain\\Plan","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"PlanAnalyzer","namespace":"Flow\\PostgreSql\\Explain\\Analyzer","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIHBsYW4gYW5hbHl6ZXIgZm9yIGFuYWx5emluZyBFWFBMQUlOIHBsYW5zLgogKgogKiBAcGFyYW0gUGxhbiAkcGxhbiBUaGUgZXhlY3V0aW9uIHBsYW4gdG8gYW5hbHl6ZQogKgogKiBAcmV0dXJuIFBsYW5BbmFseXplciBUaGUgYW5hbHl6ZXIgZm9yIGV4dHJhY3RpbmcgaW5zaWdodHMKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":516,"slug":"select","name":"select","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expressions","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"SelectBuilder","namespace":"Flow\\PostgreSql\\QueryBuilder\\Select","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIG5ldyBTRUxFQ1QgcXVlcnkgYnVpbGRlci4KICoKICogQHBhcmFtIEV4cHJlc3Npb24gLi4uJGV4cHJlc3Npb25zIENvbHVtbnMgdG8gc2VsZWN0LiBJZiBlbXB0eSwgcmV0dXJucyBTZWxlY3RTZWxlY3RTdGVwLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":532,"slug":"with","name":"with","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"ctes","type":[{"name":"CTE","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"WithBuilder","namespace":"Flow\\PostgreSql\\QueryBuilder\\With","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFdJVEggY2xhdXNlIGJ1aWxkZXIgZm9yIENURXMuCiAqCiAqIEV4YW1wbGU6IHdpdGgoY3RlKCd1c2VycycsICRzdWJxdWVyeSkpLT5zZWxlY3Qoc3RhcigpKS0+ZnJvbSh0YWJsZSgndXNlcnMnKSkKICogRXhhbXBsZTogd2l0aChjdGUoJ2EnLCAkcTEpLCBjdGUoJ2InLCAkcTIpKS0+cmVjdXJzaXZlKCktPnNlbGVjdCguLi4pLT5mcm9tKHRhYmxlKCdhJykpCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":545,"slug":"insert","name":"insert","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"InsertIntoStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Insert","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIG5ldyBJTlNFUlQgcXVlcnkgYnVpbGRlci4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":561,"slug":"bulk-insert","name":"bulk_insert","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"table","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"columns","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"rowCount","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"BulkInsert","namespace":"Flow\\PostgreSql\\QueryBuilder\\Insert","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBvcHRpbWl6ZWQgYnVsayBJTlNFUlQgcXVlcnkgZm9yIGhpZ2gtcGVyZm9ybWFuY2UgbXVsdGktcm93IGluc2VydHMuCiAqCiAqIFVubGlrZSBpbnNlcnQoKSB3aGljaCB1c2VzIGltbXV0YWJsZSBidWlsZGVyIHBhdHRlcm5zIChPKG7CsikgZm9yIG4gcm93cyksCiAqIHRoaXMgZnVuY3Rpb24gZ2VuZXJhdGVzIFNRTCBkaXJlY3RseSB1c2luZyBzdHJpbmcgb3BlcmF0aW9ucyAoTyhuKSBjb21wbGV4aXR5KS4KICoKICogQHBhcmFtIHN0cmluZyAkdGFibGUgVGFibGUgbmFtZQogKiBAcGFyYW0gbGlzdDxzdHJpbmc+ICRjb2x1bW5zIENvbHVtbiBuYW1lcwogKiBAcGFyYW0gaW50ICRyb3dDb3VudCBOdW1iZXIgb2Ygcm93cyB0byBpbnNlcnQKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":570,"slug":"update","name":"update","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"UpdateTableStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Update","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIG5ldyBVUERBVEUgcXVlcnkgYnVpbGRlci4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":579,"slug":"delete","name":"delete","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"DeleteFromStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Delete","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIG5ldyBERUxFVEUgcXVlcnkgYnVpbGRlci4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":591,"slug":"merge","name":"merge","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"table","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"alias","type":[{"name":"string","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"MergeUsingStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Merge","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIG5ldyBNRVJHRSBxdWVyeSBidWlsZGVyLgogKgogKiBAcGFyYW0gc3RyaW5nICR0YWJsZSBUYXJnZXQgdGFibGUgbmFtZQogKiBAcGFyYW0gbnVsbHxzdHJpbmcgJGFsaWFzIE9wdGlvbmFsIHRhYmxlIGFsaWFzCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":605,"slug":"copy","name":"copy","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"CopyFactory","namespace":"Flow\\PostgreSql\\QueryBuilder\\Factory","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIG5ldyBDT1BZIHF1ZXJ5IGJ1aWxkZXIgZm9yIGRhdGEgaW1wb3J0L2V4cG9ydC4KICoKICogVXNhZ2U6CiAqICAgY29weSgpLT5mcm9tKCd1c2VycycpLT5maWxlKCcvdG1wL3VzZXJzLmNzdicpLT5mb3JtYXQoQ29weUZvcm1hdDo6Q1NWKQogKiAgIGNvcHkoKS0+dG8oJ3VzZXJzJyktPmZpbGUoJy90bXAvdXNlcnMuY3N2JyktPmZvcm1hdChDb3B5Rm9ybWF0OjpDU1YpCiAqICAgY29weSgpLT50b1F1ZXJ5KHNlbGVjdCguLi4pKS0+ZmlsZSgnL3RtcC9kYXRhLmNzdicpCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":626,"slug":"col","name":"col","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"column","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"table","type":[{"name":"string","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"schema","type":[{"name":"string","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Column","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGNvbHVtbiByZWZlcmVuY2UgZXhwcmVzc2lvbi4KICoKICogQ2FuIGJlIHVzZWQgaW4gdHdvIG1vZGVzOgogKiAtIFBhcnNlIG1vZGU6IGNvbCgndXNlcnMuaWQnKSBvciBjb2woJ3NjaGVtYS50YWJsZS5jb2x1bW4nKSAtIHBhcnNlcyBkb3Qtc2VwYXJhdGVkIHN0cmluZwogKiAtIEV4cGxpY2l0IG1vZGU6IGNvbCgnaWQnLCAndXNlcnMnKSBvciBjb2woJ2lkJywgJ3VzZXJzJywgJ3NjaGVtYScpIC0gc2VwYXJhdGUgYXJndW1lbnRzCiAqCiAqIFdoZW4gJHRhYmxlIG9yICRzY2hlbWEgaXMgcHJvdmlkZWQsICRjb2x1bW4gbXVzdCBiZSBhIHBsYWluIGNvbHVtbiBuYW1lIChubyBkb3RzKS4KICoKICogQHBhcmFtIHN0cmluZyAkY29sdW1uIENvbHVtbiBuYW1lLCBvciBkb3Qtc2VwYXJhdGVkIHBhdGggbGlrZSAidGFibGUuY29sdW1uIiBvciAic2NoZW1hLnRhYmxlLmNvbHVtbiIKICogQHBhcmFtIG51bGx8c3RyaW5nICR0YWJsZSBUYWJsZSBuYW1lIChvcHRpb25hbCwgdHJpZ2dlcnMgZXhwbGljaXQgbW9kZSkKICogQHBhcmFtIG51bGx8c3RyaW5nICRzY2hlbWEgU2NoZW1hIG5hbWUgKG9wdGlvbmFsLCByZXF1aXJlcyAkdGFibGUpCiAqCiAqIEB0aHJvd3MgSW52YWxpZEV4cHJlc3Npb25FeGNlcHRpb24gd2hlbiAkc2NoZW1hIGlzIHByb3ZpZGVkIHdpdGhvdXQgJHRhYmxlLCBvciB3aGVuICRjb2x1bW4gY29udGFpbnMgZG90cyBpbiBleHBsaWNpdCBtb2RlCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":655,"slug":"star","name":"star","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"table","type":[{"name":"string","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Star","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFNFTEVDVCAqIGV4cHJlc3Npb24uCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":671,"slug":"literal","name":"literal","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"value","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"float","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Literal","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGxpdGVyYWwgdmFsdWUgZm9yIHVzZSBpbiBxdWVyaWVzLgogKgogKiBBdXRvbWF0aWNhbGx5IGRldGVjdHMgdGhlIHR5cGUgYW5kIGNyZWF0ZXMgdGhlIGFwcHJvcHJpYXRlIGxpdGVyYWw6CiAqIC0gbGl0ZXJhbCgnaGVsbG8nKSBjcmVhdGVzIGEgc3RyaW5nIGxpdGVyYWwKICogLSBsaXRlcmFsKDQyKSBjcmVhdGVzIGFuIGludGVnZXIgbGl0ZXJhbAogKiAtIGxpdGVyYWwoMy4xNCkgY3JlYXRlcyBhIGZsb2F0IGxpdGVyYWwKICogLSBsaXRlcmFsKHRydWUpIGNyZWF0ZXMgYSBib29sZWFuIGxpdGVyYWwKICogLSBsaXRlcmFsKG51bGwpIGNyZWF0ZXMgYSBOVUxMIGxpdGVyYWwKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":686,"slug":"param","name":"param","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"position","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Parameter","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIHBvc2l0aW9uYWwgcGFyYW1ldGVyICgkMSwgJDIsIGV0Yy4pLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":698,"slug":"func","name":"func","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"args","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"FunctionCall","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGZ1bmN0aW9uIGNhbGwgZXhwcmVzc2lvbi4KICoKICogQHBhcmFtIHN0cmluZyAkbmFtZSBGdW5jdGlvbiBuYW1lIChjYW4gaW5jbHVkZSBzY2hlbWEgbGlrZSAicGdfY2F0YWxvZy5ub3ciKQogKiBAcGFyYW0gbGlzdDxFeHByZXNzaW9uPiAkYXJncyBGdW5jdGlvbiBhcmd1bWVudHMKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":711,"slug":"agg","name":"agg","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"args","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"},{"name":"distinct","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"AggregateCall","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBhZ2dyZWdhdGUgZnVuY3Rpb24gY2FsbCAoQ09VTlQsIFNVTSwgQVZHLCBldGMuKS4KICoKICogQHBhcmFtIHN0cmluZyAkbmFtZSBBZ2dyZWdhdGUgZnVuY3Rpb24gbmFtZQogKiBAcGFyYW0gbGlzdDxFeHByZXNzaW9uPiAkYXJncyBGdW5jdGlvbiBhcmd1bWVudHMKICogQHBhcmFtIGJvb2wgJGRpc3RpbmN0IFVzZSBESVNUSU5DVCBtb2RpZmllcgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":720,"slug":"agg-count","name":"agg_count","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expr","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"distinct","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"AggregateCall","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBDT1VOVCgqKSBhZ2dyZWdhdGUuCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":733,"slug":"agg-sum","name":"agg_sum","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expr","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"distinct","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"AggregateCall","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBTVU0gYWdncmVnYXRlLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":742,"slug":"agg-avg","name":"agg_avg","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expr","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"distinct","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"AggregateCall","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBBVkcgYWdncmVnYXRlLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":751,"slug":"agg-min","name":"agg_min","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expr","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"AggregateCall","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBNSU4gYWdncmVnYXRlLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":760,"slug":"agg-max","name":"agg_max","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expr","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"AggregateCall","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBNQVggYWdncmVnYXRlLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":771,"slug":"coalesce","name":"coalesce","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expressions","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"Coalesce","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIENPQUxFU0NFIGV4cHJlc3Npb24uCiAqCiAqIEBwYXJhbSBFeHByZXNzaW9uIC4uLiRleHByZXNzaW9ucyBFeHByZXNzaW9ucyB0byBjb2FsZXNjZQogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":780,"slug":"nullif","name":"nullif","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expr1","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"expr2","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"NullIf","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIE5VTExJRiBleHByZXNzaW9uLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":791,"slug":"greatest","name":"greatest","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expressions","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"Greatest","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIEdSRUFURVNUIGV4cHJlc3Npb24uCiAqCiAqIEBwYXJhbSBFeHByZXNzaW9uIC4uLiRleHByZXNzaW9ucyBFeHByZXNzaW9ucyB0byBjb21wYXJlCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":802,"slug":"least","name":"least","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expressions","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"Least","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIExFQVNUIGV4cHJlc3Npb24uCiAqCiAqIEBwYXJhbSBFeHByZXNzaW9uIC4uLiRleHByZXNzaW9ucyBFeHByZXNzaW9ucyB0byBjb21wYXJlCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":814,"slug":"cast","name":"cast","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expr","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"dataType","type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"TypeCast","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIHR5cGUgY2FzdCBleHByZXNzaW9uLgogKgogKiBAcGFyYW0gRXhwcmVzc2lvbiAkZXhwciBFeHByZXNzaW9uIHRvIGNhc3QKICogQHBhcmFtIERhdGFUeXBlICRkYXRhVHlwZSBUYXJnZXQgZGF0YSB0eXBlICh1c2UgZGF0YV90eXBlXyogZnVuY3Rpb25zKQogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":823,"slug":"data-type-integer","name":"data_type_integer","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBpbnRlZ2VyIGRhdGEgdHlwZSAoUG9zdGdyZVNRTCBpbnQ0KS4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":832,"slug":"data-type-smallint","name":"data_type_smallint","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIHNtYWxsaW50IGRhdGEgdHlwZSAoUG9zdGdyZVNRTCBpbnQyKS4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":841,"slug":"data-type-bigint","name":"data_type_bigint","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGJpZ2ludCBkYXRhIHR5cGUgKFBvc3RncmVTUUwgaW50OCkuCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":850,"slug":"data-type-boolean","name":"data_type_boolean","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGJvb2xlYW4gZGF0YSB0eXBlLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":859,"slug":"data-type-text","name":"data_type_text","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIHRleHQgZGF0YSB0eXBlLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":868,"slug":"data-type-varchar","name":"data_type_varchar","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"length","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIHZhcmNoYXIgZGF0YSB0eXBlIHdpdGggbGVuZ3RoIGNvbnN0cmFpbnQuCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":877,"slug":"data-type-char","name":"data_type_char","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"length","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGNoYXIgZGF0YSB0eXBlIHdpdGggbGVuZ3RoIGNvbnN0cmFpbnQuCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":886,"slug":"data-type-numeric","name":"data_type_numeric","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"precision","type":[{"name":"int","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"scale","type":[{"name":"int","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIG51bWVyaWMgZGF0YSB0eXBlIHdpdGggb3B0aW9uYWwgcHJlY2lzaW9uIGFuZCBzY2FsZS4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":895,"slug":"data-type-decimal","name":"data_type_decimal","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"precision","type":[{"name":"int","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"scale","type":[{"name":"int","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGRlY2ltYWwgZGF0YSB0eXBlIHdpdGggb3B0aW9uYWwgcHJlY2lzaW9uIGFuZCBzY2FsZS4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":904,"slug":"data-type-real","name":"data_type_real","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIHJlYWwgZGF0YSB0eXBlIChQb3N0Z3JlU1FMIGZsb2F0NCkuCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":913,"slug":"data-type-double-precision","name":"data_type_double_precision","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGRvdWJsZSBwcmVjaXNpb24gZGF0YSB0eXBlIChQb3N0Z3JlU1FMIGZsb2F0OCkuCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":922,"slug":"data-type-date","name":"data_type_date","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGRhdGUgZGF0YSB0eXBlLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":931,"slug":"data-type-time","name":"data_type_time","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"precision","type":[{"name":"int","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIHRpbWUgZGF0YSB0eXBlIHdpdGggb3B0aW9uYWwgcHJlY2lzaW9uLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":940,"slug":"data-type-timestamp","name":"data_type_timestamp","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"precision","type":[{"name":"int","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIHRpbWVzdGFtcCBkYXRhIHR5cGUgd2l0aCBvcHRpb25hbCBwcmVjaXNpb24uCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":949,"slug":"data-type-timestamptz","name":"data_type_timestamptz","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"precision","type":[{"name":"int","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIHRpbWVzdGFtcCB3aXRoIHRpbWUgem9uZSBkYXRhIHR5cGUgd2l0aCBvcHRpb25hbCBwcmVjaXNpb24uCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":958,"slug":"data-type-interval","name":"data_type_interval","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBpbnRlcnZhbCBkYXRhIHR5cGUuCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":973,"slug":"current-timestamp","name":"current_timestamp","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"SQLValueFunctionExpression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIFNRTCBzdGFuZGFyZCBDVVJSRU5UX1RJTUVTVEFNUCBmdW5jdGlvbi4KICoKICogUmV0dXJucyB0aGUgY3VycmVudCBkYXRlIGFuZCB0aW1lIChhdCB0aGUgc3RhcnQgb2YgdGhlIHRyYW5zYWN0aW9uKS4KICogVXNlZnVsIGFzIGEgY29sdW1uIGRlZmF1bHQgdmFsdWUgb3IgaW4gU0VMRUNUIHF1ZXJpZXMuCiAqCiAqIEV4YW1wbGU6IGNvbHVtbignY3JlYXRlZF9hdCcsIGRhdGFfdHlwZV90aW1lc3RhbXAoKSktPmRlZmF1bHQoY3VycmVudF90aW1lc3RhbXAoKSkKICogRXhhbXBsZTogc2VsZWN0KCktPnNlbGVjdChjdXJyZW50X3RpbWVzdGFtcCgpLT5hcygnbm93JykpCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":988,"slug":"current-date","name":"current_date","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"SQLValueFunctionExpression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIFNRTCBzdGFuZGFyZCBDVVJSRU5UX0RBVEUgZnVuY3Rpb24uCiAqCiAqIFJldHVybnMgdGhlIGN1cnJlbnQgZGF0ZSAoYXQgdGhlIHN0YXJ0IG9mIHRoZSB0cmFuc2FjdGlvbikuCiAqIFVzZWZ1bCBhcyBhIGNvbHVtbiBkZWZhdWx0IHZhbHVlIG9yIGluIFNFTEVDVCBxdWVyaWVzLgogKgogKiBFeGFtcGxlOiBjb2x1bW4oJ2JpcnRoX2RhdGUnLCBkYXRhX3R5cGVfZGF0ZSgpKS0+ZGVmYXVsdChjdXJyZW50X2RhdGUoKSkKICogRXhhbXBsZTogc2VsZWN0KCktPnNlbGVjdChjdXJyZW50X2RhdGUoKS0+YXMoJ3RvZGF5JykpCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1003,"slug":"current-time","name":"current_time","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"SQLValueFunctionExpression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIFNRTCBzdGFuZGFyZCBDVVJSRU5UX1RJTUUgZnVuY3Rpb24uCiAqCiAqIFJldHVybnMgdGhlIGN1cnJlbnQgdGltZSAoYXQgdGhlIHN0YXJ0IG9mIHRoZSB0cmFuc2FjdGlvbikuCiAqIFVzZWZ1bCBhcyBhIGNvbHVtbiBkZWZhdWx0IHZhbHVlIG9yIGluIFNFTEVDVCBxdWVyaWVzLgogKgogKiBFeGFtcGxlOiBjb2x1bW4oJ3N0YXJ0X3RpbWUnLCBkYXRhX3R5cGVfdGltZSgpKS0+ZGVmYXVsdChjdXJyZW50X3RpbWUoKSkKICogRXhhbXBsZTogc2VsZWN0KCktPnNlbGVjdChjdXJyZW50X3RpbWUoKS0+YXMoJ25vd190aW1lJykpCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1012,"slug":"data-type-uuid","name":"data_type_uuid","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFVVSUQgZGF0YSB0eXBlLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1021,"slug":"data-type-json","name":"data_type_json","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIEpTT04gZGF0YSB0eXBlLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1030,"slug":"data-type-jsonb","name":"data_type_jsonb","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIEpTT05CIGRhdGEgdHlwZS4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1039,"slug":"data-type-bytea","name":"data_type_bytea","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGJ5dGVhIGRhdGEgdHlwZS4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1048,"slug":"data-type-inet","name":"data_type_inet","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBpbmV0IGRhdGEgdHlwZS4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1057,"slug":"data-type-cidr","name":"data_type_cidr","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGNpZHIgZGF0YSB0eXBlLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1066,"slug":"data-type-macaddr","name":"data_type_macaddr","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIG1hY2FkZHIgZGF0YSB0eXBlLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1075,"slug":"data-type-serial","name":"data_type_serial","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIHNlcmlhbCBkYXRhIHR5cGUuCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1084,"slug":"data-type-smallserial","name":"data_type_smallserial","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIHNtYWxsc2VyaWFsIGRhdGEgdHlwZS4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1093,"slug":"data-type-bigserial","name":"data_type_bigserial","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGJpZ3NlcmlhbCBkYXRhIHR5cGUuCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1102,"slug":"data-type-array","name":"data_type_array","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"elementType","type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBhcnJheSBkYXRhIHR5cGUgZnJvbSBhbiBlbGVtZW50IHR5cGUuCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1114,"slug":"data-type-custom","name":"data_type_custom","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"typeName","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"schema","type":[{"name":"string","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGN1c3RvbSBkYXRhIHR5cGUuCiAqCiAqIEBwYXJhbSBzdHJpbmcgJHR5cGVOYW1lIFR5cGUgbmFtZQogKiBAcGFyYW0gbnVsbHxzdHJpbmcgJHNjaGVtYSBPcHRpb25hbCBzY2hlbWEgbmFtZQogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1127,"slug":"case-when","name":"case_when","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"whenClauses","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"elseResult","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"operand","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"CaseExpression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIENBU0UgZXhwcmVzc2lvbi4KICoKICogQHBhcmFtIG5vbi1lbXB0eS1saXN0PFdoZW5DbGF1c2U+ICR3aGVuQ2xhdXNlcyBXSEVOIGNsYXVzZXMKICogQHBhcmFtIG51bGx8RXhwcmVzc2lvbiAkZWxzZVJlc3VsdCBFTFNFIHJlc3VsdCAob3B0aW9uYWwpCiAqIEBwYXJhbSBudWxsfEV4cHJlc3Npb24gJG9wZXJhbmQgQ0FTRSBvcGVyYW5kIGZvciBzaW1wbGUgQ0FTRSAob3B0aW9uYWwpCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1136,"slug":"when","name":"when","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"condition","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"result","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"WhenClause","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFdIRU4gY2xhdXNlIGZvciBDQVNFIGV4cHJlc3Npb24uCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1145,"slug":"sub-select","name":"sub_select","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"query","type":[{"name":"SelectFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Select","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Subquery","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIHN1YnF1ZXJ5IGV4cHJlc3Npb24uCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1159,"slug":"array-expr","name":"array_expr","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"elements","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ArrayExpression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBhcnJheSBleHByZXNzaW9uLgogKgogKiBAcGFyYW0gbGlzdDxFeHByZXNzaW9uPiAkZWxlbWVudHMgQXJyYXkgZWxlbWVudHMKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1170,"slug":"row-expr","name":"row_expr","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"elements","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"RowExpression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIHJvdyBleHByZXNzaW9uLgogKgogKiBAcGFyYW0gbGlzdDxFeHByZXNzaW9uPiAkZWxlbWVudHMgUm93IGVsZW1lbnRzCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1192,"slug":"raw-expr","name":"raw_expr","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"sql","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"RawExpression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIHJhdyBTUUwgZXhwcmVzc2lvbiAodXNlIHdpdGggY2F1dGlvbikuCiAqCiAqIFNFQ1VSSVRZIFdBUk5JTkc6IFRoaXMgZnVuY3Rpb24gYWNjZXB0cyByYXcgU1FMIHdpdGhvdXQgcGFyYW1ldGVyaXphdGlvbi4KICogU1FMIGluamVjdGlvbiBpcyBwb3NzaWJsZSBpZiB1c2VkIHdpdGggdW50cnVzdGVkIHVzZXIgaW5wdXQuCiAqIE9ubHkgdXNlIHdpdGggdHJ1c3RlZCwgdmFsaWRhdGVkIGlucHV0LgogKgogKiBGb3IgdXNlci1wcm92aWRlZCB2YWx1ZXMsIHVzZSBwYXJhbSgpIGluc3RlYWQ6CiAqIGBgYHBocAogKiAvLyBVTlNBRkUgLSBTUUwgaW5qZWN0aW9uIHBvc3NpYmxlOgogKiByYXdfZXhwcigiY3VzdG9tX2Z1bmMoJyIgLiAkdXNlcklucHV0IC4gIicpIikKICoKICogLy8gU0FGRSAtIHVzZSBwYXJhbWV0ZXJzOgogKiBmdW5jKCdjdXN0b21fZnVuYycsIHBhcmFtKDEpKQogKiBgYGAKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1201,"slug":"binary-expr","name":"binary_expr","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"left","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"operator","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"right","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"BinaryExpression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGJpbmFyeSBleHByZXNzaW9uIChsZWZ0IG9wIHJpZ2h0KS4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1215,"slug":"window-func","name":"window_func","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"args","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"},{"name":"partitionBy","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"},{"name":"orderBy","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"WindowFunction","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIHdpbmRvdyBmdW5jdGlvbi4KICoKICogQHBhcmFtIHN0cmluZyAkbmFtZSBGdW5jdGlvbiBuYW1lCiAqIEBwYXJhbSBsaXN0PEV4cHJlc3Npb24+ICRhcmdzIEZ1bmN0aW9uIGFyZ3VtZW50cwogKiBAcGFyYW0gbGlzdDxFeHByZXNzaW9uPiAkcGFydGl0aW9uQnkgUEFSVElUSU9OIEJZIGV4cHJlc3Npb25zCiAqIEBwYXJhbSBsaXN0PE9yZGVyQnk+ICRvcmRlckJ5IE9SREVSIEJZIGl0ZW1zCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1228,"slug":"eq","name":"eq","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"left","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"right","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Comparison","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBlcXVhbGl0eSBjb21wYXJpc29uIChjb2x1bW4gPSB2YWx1ZSkuCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1237,"slug":"neq","name":"neq","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"left","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"right","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Comparison","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIG5vdC1lcXVhbCBjb21wYXJpc29uIChjb2x1bW4gIT0gdmFsdWUpLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1246,"slug":"lt","name":"lt","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"left","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"right","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Comparison","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGxlc3MtdGhhbiBjb21wYXJpc29uIChjb2x1bW4gPCB2YWx1ZSkuCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1255,"slug":"lte","name":"lte","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"left","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"right","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Comparison","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGxlc3MtdGhhbi1vci1lcXVhbCBjb21wYXJpc29uIChjb2x1bW4gPD0gdmFsdWUpLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1264,"slug":"gt","name":"gt","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"left","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"right","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Comparison","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGdyZWF0ZXItdGhhbiBjb21wYXJpc29uIChjb2x1bW4gPiB2YWx1ZSkuCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1273,"slug":"gte","name":"gte","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"left","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"right","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Comparison","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGdyZWF0ZXItdGhhbi1vci1lcXVhbCBjb21wYXJpc29uIChjb2x1bW4gPj0gdmFsdWUpLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1282,"slug":"between","name":"between","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expr","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"low","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"high","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"not","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"Between","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIEJFVFdFRU4gY29uZGl0aW9uLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1294,"slug":"is-in","name":"is_in","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expr","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"values","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"In","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBJTiBjb25kaXRpb24uCiAqCiAqIEBwYXJhbSBFeHByZXNzaW9uICRleHByIEV4cHJlc3Npb24gdG8gY2hlY2sKICogQHBhcmFtIGxpc3Q8RXhwcmVzc2lvbj4gJHZhbHVlcyBMaXN0IG9mIHZhbHVlcwogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1303,"slug":"is-null","name":"is_null","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expr","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"not","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"IsNull","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBJUyBOVUxMIGNvbmRpdGlvbi4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1312,"slug":"like","name":"like","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expr","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"pattern","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"caseInsensitive","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"Like","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIExJS0UgY29uZGl0aW9uLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1321,"slug":"similar-to","name":"similar_to","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expr","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"pattern","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"SimilarTo","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFNJTUlMQVIgVE8gY29uZGl0aW9uLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1330,"slug":"is-distinct-from","name":"is_distinct_from","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"left","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"right","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"not","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"IsDistinctFrom","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBJUyBESVNUSU5DVCBGUk9NIGNvbmRpdGlvbi4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1339,"slug":"exists","name":"exists","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"subquery","type":[{"name":"SelectFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Select","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Exists","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBFWElTVFMgY29uZGl0aW9uLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1351,"slug":"any-sub-select","name":"any_sub_select","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"left","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"operator","type":[{"name":"ComparisonOperator","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"subquery","type":[{"name":"SelectFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Select","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Any","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBBTlkgY29uZGl0aW9uLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1363,"slug":"all-sub-select","name":"all_sub_select","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"left","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"operator","type":[{"name":"ComparisonOperator","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"subquery","type":[{"name":"SelectFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Select","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"All","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBBTEwgY29uZGl0aW9uLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1389,"slug":"conditions","name":"conditions","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"ConditionBuilder","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGNvbmRpdGlvbiBidWlsZGVyIGZvciBmbHVlbnQgY29uZGl0aW9uIGNvbXBvc2l0aW9uLgogKgogKiBUaGlzIGJ1aWxkZXIgYWxsb3dzIGluY3JlbWVudGFsIGNvbmRpdGlvbiBidWlsZGluZyB3aXRoIGEgZmx1ZW50IEFQSToKICoKICogYGBgcGhwCiAqICRidWlsZGVyID0gY29uZGl0aW9ucygpOwogKgogKiBpZiAoJGhhc0ZpbHRlcikgewogKiAgICAgJGJ1aWxkZXIgPSAkYnVpbGRlci0+YW5kKGVxKGNvbCgnc3RhdHVzJyksIGxpdGVyYWwoJ2FjdGl2ZScpKSk7CiAqIH0KICoKICogaWYgKCEkYnVpbGRlci0+aXNFbXB0eSgpKSB7CiAqICAgICAkcXVlcnkgPSBzZWxlY3QoKS0+ZnJvbSh0YWJsZSgndXNlcnMnKSktPndoZXJlKCRidWlsZGVyKTsKICogfQogKiBgYGAKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1400,"slug":"cond-and","name":"cond_and","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"conditions","type":[{"name":"Condition","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"AndCondition","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENvbWJpbmUgY29uZGl0aW9ucyB3aXRoIEFORC4KICoKICogQHBhcmFtIENvbmRpdGlvbiAuLi4kY29uZGl0aW9ucyBDb25kaXRpb25zIHRvIGNvbWJpbmUKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1411,"slug":"cond-or","name":"cond_or","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"conditions","type":[{"name":"Condition","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"OrCondition","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENvbWJpbmUgY29uZGl0aW9ucyB3aXRoIE9SLgogKgogKiBAcGFyYW0gQ29uZGl0aW9uIC4uLiRjb25kaXRpb25zIENvbmRpdGlvbnMgdG8gY29tYmluZQogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1420,"slug":"cond-not","name":"cond_not","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"condition","type":[{"name":"Condition","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"NotCondition","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIE5lZ2F0ZSBhIGNvbmRpdGlvbiB3aXRoIE5PVC4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1442,"slug":"raw-cond","name":"raw_cond","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"sql","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"RawCondition","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIHJhdyBTUUwgY29uZGl0aW9uICh1c2Ugd2l0aCBjYXV0aW9uKS4KICoKICogU0VDVVJJVFkgV0FSTklORzogVGhpcyBmdW5jdGlvbiBhY2NlcHRzIHJhdyBTUUwgd2l0aG91dCBwYXJhbWV0ZXJpemF0aW9uLgogKiBTUUwgaW5qZWN0aW9uIGlzIHBvc3NpYmxlIGlmIHVzZWQgd2l0aCB1bnRydXN0ZWQgdXNlciBpbnB1dC4KICogT25seSB1c2Ugd2l0aCB0cnVzdGVkLCB2YWxpZGF0ZWQgaW5wdXQuCiAqCiAqIEZvciB1c2VyLXByb3ZpZGVkIHZhbHVlcywgdXNlIHN0YW5kYXJkIGNvbmRpdGlvbiBmdW5jdGlvbnMgd2l0aCBwYXJhbSgpOgogKiBgYGBwaHAKICogLy8gVU5TQUZFIC0gU1FMIGluamVjdGlvbiBwb3NzaWJsZToKICogcmF3X2NvbmQoInN0YXR1cyA9ICciIC4gJHVzZXJJbnB1dCAuICInIikKICoKICogLy8gU0FGRSAtIHVzZSB0eXBlZCBjb25kaXRpb25zOgogKiBlcShjb2woJ3N0YXR1cycpLCBwYXJhbSgxKSkKICogYGBgCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1455,"slug":"cond-true","name":"cond_true","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"RawCondition","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFRSVUUgY29uZGl0aW9uIGZvciBXSEVSRSBjbGF1c2VzLgogKgogKiBVc2VmdWwgd2hlbiB5b3UgbmVlZCBhIGNvbmRpdGlvbiB0aGF0IGFsd2F5cyBldmFsdWF0ZXMgdG8gdHJ1ZS4KICoKICogRXhhbXBsZTogc2VsZWN0KGxpdGVyYWwoMSkpLT53aGVyZShjb25kX3RydWUoKSkgLy8gU0VMRUNUIDEgV0hFUkUgdHJ1ZQogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1469,"slug":"cond-false","name":"cond_false","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"RawCondition","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIEZBTFNFIGNvbmRpdGlvbiBmb3IgV0hFUkUgY2xhdXNlcy4KICoKICogVXNlZnVsIHdoZW4geW91IG5lZWQgYSBjb25kaXRpb24gdGhhdCBhbHdheXMgZXZhbHVhdGVzIHRvIGZhbHNlLAogKiB0eXBpY2FsbHkgZm9yIHRlc3Rpbmcgb3IgdG8gcmV0dXJuIGFuIGVtcHR5IHJlc3VsdCBzZXQuCiAqCiAqIEV4YW1wbGU6IHNlbGVjdChsaXRlcmFsKDEpKS0+d2hlcmUoY29uZF9mYWxzZSgpKSAvLyBTRUxFQ1QgMSBXSEVSRSBmYWxzZQogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1481,"slug":"json-contains","name":"json_contains","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"left","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"right","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"OperatorCondition","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIEpTT05CIGNvbnRhaW5zIGNvbmRpdGlvbiAoQD4pLgogKgogKiBFeGFtcGxlOiBqc29uX2NvbnRhaW5zKGNvbCgnbWV0YWRhdGEnKSwgbGl0ZXJhbF9qc29uKCd7ImNhdGVnb3J5IjogImVsZWN0cm9uaWNzIn0nKSkKICogUHJvZHVjZXM6IG1ldGFkYXRhIEA+ICd7ImNhdGVnb3J5IjogImVsZWN0cm9uaWNzIn0nCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1493,"slug":"json-contained-by","name":"json_contained_by","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"left","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"right","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"OperatorCondition","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIEpTT05CIGlzIGNvbnRhaW5lZCBieSBjb25kaXRpb24gKDxAKS4KICoKICogRXhhbXBsZToganNvbl9jb250YWluZWRfYnkoY29sKCdtZXRhZGF0YScpLCBsaXRlcmFsX2pzb24oJ3siY2F0ZWdvcnkiOiAiZWxlY3Ryb25pY3MiLCAicHJpY2UiOiAxMDB9JykpCiAqIFByb2R1Y2VzOiBtZXRhZGF0YSA8QCAneyJjYXRlZ29yeSI6ICJlbGVjdHJvbmljcyIsICJwcmljZSI6IDEwMH0nCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1506,"slug":"json-get","name":"json_get","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expr","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"key","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"BinaryExpression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIEpTT04gZmllbGQgYWNjZXNzIGV4cHJlc3Npb24gKC0+KS4KICogUmV0dXJucyBKU09OLgogKgogKiBFeGFtcGxlOiBqc29uX2dldChjb2woJ21ldGFkYXRhJyksIGxpdGVyYWxfc3RyaW5nKCdjYXRlZ29yeScpKQogKiBQcm9kdWNlczogbWV0YWRhdGEgLT4gJ2NhdGVnb3J5JwogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1519,"slug":"json-get-text","name":"json_get_text","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expr","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"key","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"BinaryExpression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIEpTT04gZmllbGQgYWNjZXNzIGV4cHJlc3Npb24gKC0+PikuCiAqIFJldHVybnMgdGV4dC4KICoKICogRXhhbXBsZToganNvbl9nZXRfdGV4dChjb2woJ21ldGFkYXRhJyksIGxpdGVyYWxfc3RyaW5nKCduYW1lJykpCiAqIFByb2R1Y2VzOiBtZXRhZGF0YSAtPj4gJ25hbWUnCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1532,"slug":"json-path","name":"json_path","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expr","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"path","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"BinaryExpression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIEpTT04gcGF0aCBhY2Nlc3MgZXhwcmVzc2lvbiAoIz4pLgogKiBSZXR1cm5zIEpTT04uCiAqCiAqIEV4YW1wbGU6IGpzb25fcGF0aChjb2woJ21ldGFkYXRhJyksIGxpdGVyYWxfc3RyaW5nKCd7Y2F0ZWdvcnksbmFtZX0nKSkKICogUHJvZHVjZXM6IG1ldGFkYXRhICM+ICd7Y2F0ZWdvcnksbmFtZX0nCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1545,"slug":"json-path-text","name":"json_path_text","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expr","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"path","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"BinaryExpression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIEpTT04gcGF0aCBhY2Nlc3MgZXhwcmVzc2lvbiAoIz4+KS4KICogUmV0dXJucyB0ZXh0LgogKgogKiBFeGFtcGxlOiBqc29uX3BhdGhfdGV4dChjb2woJ21ldGFkYXRhJyksIGxpdGVyYWxfc3RyaW5nKCd7Y2F0ZWdvcnksbmFtZX0nKSkKICogUHJvZHVjZXM6IG1ldGFkYXRhICM+PiAne2NhdGVnb3J5LG5hbWV9JwogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1557,"slug":"json-exists","name":"json_exists","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expr","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"key","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"OperatorCondition","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIEpTT05CIGtleSBleGlzdHMgY29uZGl0aW9uICg\/KS4KICoKICogRXhhbXBsZToganNvbl9leGlzdHMoY29sKCdtZXRhZGF0YScpLCBsaXRlcmFsX3N0cmluZygnY2F0ZWdvcnknKSkKICogUHJvZHVjZXM6IG1ldGFkYXRhID8gJ2NhdGVnb3J5JwogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1569,"slug":"json-exists-any","name":"json_exists_any","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expr","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"keys","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"OperatorCondition","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIEpTT05CIGFueSBrZXkgZXhpc3RzIGNvbmRpdGlvbiAoP3wpLgogKgogKiBFeGFtcGxlOiBqc29uX2V4aXN0c19hbnkoY29sKCdtZXRhZGF0YScpLCByYXdfZXhwcigiYXJyYXlbJ2NhdGVnb3J5JywgJ25hbWUnXSIpKQogKiBQcm9kdWNlczogbWV0YWRhdGEgP3wgYXJyYXlbJ2NhdGVnb3J5JywgJ25hbWUnXQogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1581,"slug":"json-exists-all","name":"json_exists_all","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expr","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"keys","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"OperatorCondition","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIEpTT05CIGFsbCBrZXlzIGV4aXN0IGNvbmRpdGlvbiAoPyYpLgogKgogKiBFeGFtcGxlOiBqc29uX2V4aXN0c19hbGwoY29sKCdtZXRhZGF0YScpLCByYXdfZXhwcigiYXJyYXlbJ2NhdGVnb3J5JywgJ25hbWUnXSIpKQogKiBQcm9kdWNlczogbWV0YWRhdGEgPyYgYXJyYXlbJ2NhdGVnb3J5JywgJ25hbWUnXQogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1593,"slug":"array-contains","name":"array_contains","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"left","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"right","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"OperatorCondition","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBhcnJheSBjb250YWlucyBjb25kaXRpb24gKEA+KS4KICoKICogRXhhbXBsZTogYXJyYXlfY29udGFpbnMoY29sKCd0YWdzJyksIHJhd19leHByKCJBUlJBWVsnc2FsZSddIikpCiAqIFByb2R1Y2VzOiB0YWdzIEA+IEFSUkFZWydzYWxlJ10KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1605,"slug":"array-contained-by","name":"array_contained_by","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"left","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"right","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"OperatorCondition","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBhcnJheSBpcyBjb250YWluZWQgYnkgY29uZGl0aW9uICg8QCkuCiAqCiAqIEV4YW1wbGU6IGFycmF5X2NvbnRhaW5lZF9ieShjb2woJ3RhZ3MnKSwgcmF3X2V4cHIoIkFSUkFZWydzYWxlJywgJ2ZlYXR1cmVkJywgJ25ldyddIikpCiAqIFByb2R1Y2VzOiB0YWdzIDxAIEFSUkFZWydzYWxlJywgJ2ZlYXR1cmVkJywgJ25ldyddCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1617,"slug":"array-overlap","name":"array_overlap","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"left","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"right","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"OperatorCondition","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBhcnJheSBvdmVybGFwIGNvbmRpdGlvbiAoJiYpLgogKgogKiBFeGFtcGxlOiBhcnJheV9vdmVybGFwKGNvbCgndGFncycpLCByYXdfZXhwcigiQVJSQVlbJ3NhbGUnLCAnZmVhdHVyZWQnXSIpKQogKiBQcm9kdWNlczogdGFncyAmJiBBUlJBWVsnc2FsZScsICdmZWF0dXJlZCddCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1631,"slug":"regex-match","name":"regex_match","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expr","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"pattern","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"OperatorCondition","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFBPU0lYIHJlZ2V4IG1hdGNoIGNvbmRpdGlvbiAofikuCiAqIENhc2Utc2Vuc2l0aXZlLgogKgogKiBFeGFtcGxlOiByZWdleF9tYXRjaChjb2woJ2VtYWlsJyksIGxpdGVyYWxfc3RyaW5nKCcuKkBnbWFpbFxcLmNvbScpKQogKgogKiBQcm9kdWNlczogZW1haWwgfiAnLipAZ21haWxcLmNvbScKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1645,"slug":"regex-imatch","name":"regex_imatch","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expr","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"pattern","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"OperatorCondition","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFBPU0lYIHJlZ2V4IG1hdGNoIGNvbmRpdGlvbiAofiopLgogKiBDYXNlLWluc2Vuc2l0aXZlLgogKgogKiBFeGFtcGxlOiByZWdleF9pbWF0Y2goY29sKCdlbWFpbCcpLCBsaXRlcmFsX3N0cmluZygnLipAZ21haWxcXC5jb20nKSkKICoKICogUHJvZHVjZXM6IGVtYWlsIH4qICcuKkBnbWFpbFwuY29tJwogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1659,"slug":"not-regex-match","name":"not_regex_match","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expr","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"pattern","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"OperatorCondition","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFBPU0lYIHJlZ2V4IG5vdCBtYXRjaCBjb25kaXRpb24gKCF+KS4KICogQ2FzZS1zZW5zaXRpdmUuCiAqCiAqIEV4YW1wbGU6IG5vdF9yZWdleF9tYXRjaChjb2woJ2VtYWlsJyksIGxpdGVyYWxfc3RyaW5nKCcuKkBzcGFtXFwuY29tJykpCiAqCiAqIFByb2R1Y2VzOiBlbWFpbCAhfiAnLipAc3BhbVwuY29tJwogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1673,"slug":"not-regex-imatch","name":"not_regex_imatch","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expr","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"pattern","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"OperatorCondition","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFBPU0lYIHJlZ2V4IG5vdCBtYXRjaCBjb25kaXRpb24gKCF+KikuCiAqIENhc2UtaW5zZW5zaXRpdmUuCiAqCiAqIEV4YW1wbGU6IG5vdF9yZWdleF9pbWF0Y2goY29sKCdlbWFpbCcpLCBsaXRlcmFsX3N0cmluZygnLipAc3BhbVxcLmNvbScpKQogKgogKiBQcm9kdWNlczogZW1haWwgIX4qICcuKkBzcGFtXC5jb20nCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1685,"slug":"text-search-match","name":"text_search_match","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"document","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"query","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"OperatorCondition","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGZ1bGwtdGV4dCBzZWFyY2ggbWF0Y2ggY29uZGl0aW9uIChAQCkuCiAqCiAqIEV4YW1wbGU6IHRleHRfc2VhcmNoX21hdGNoKGNvbCgnZG9jdW1lbnQnKSwgcmF3X2V4cHIoInRvX3RzcXVlcnkoJ2VuZ2xpc2gnLCAnaGVsbG8gJiB3b3JsZCcpIikpCiAqIFByb2R1Y2VzOiBkb2N1bWVudCBAQCB0b190c3F1ZXJ5KCdlbmdsaXNoJywgJ2hlbGxvICYgd29ybGQnKQogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1700,"slug":"table","name":"table","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"schema","type":[{"name":"string","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Table","namespace":"Flow\\PostgreSql\\QueryBuilder\\Table","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIHRhYmxlIHJlZmVyZW5jZS4KICoKICogU3VwcG9ydHMgZG90IG5vdGF0aW9uIGZvciBzY2hlbWEtcXVhbGlmaWVkIG5hbWVzOiAicHVibGljLnVzZXJzIiBvciBleHBsaWNpdCBzY2hlbWEgcGFyYW1ldGVyLgogKiBEb3VibGUtcXVvdGVkIGlkZW50aWZpZXJzIHByZXNlcnZlIGRvdHM6ICcibXkudGFibGUiJyBjcmVhdGVzIGEgc2luZ2xlIGlkZW50aWZpZXIuCiAqCiAqIEBwYXJhbSBzdHJpbmcgJG5hbWUgVGFibGUgbmFtZSAobWF5IGluY2x1ZGUgc2NoZW1hIGFzICJzY2hlbWEudGFibGUiKQogKiBAcGFyYW0gbnVsbHxzdHJpbmcgJHNjaGVtYSBTY2hlbWEgbmFtZSAob3B0aW9uYWwsIG92ZXJyaWRlcyBwYXJzZWQgc2NoZW1hKQogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1715,"slug":"derived","name":"derived","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"query","type":[{"name":"SelectFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Select","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"alias","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"DerivedTable","namespace":"Flow\\PostgreSql\\QueryBuilder\\Table","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGRlcml2ZWQgdGFibGUgKHN1YnF1ZXJ5IGluIEZST00gY2xhdXNlKS4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1729,"slug":"lateral","name":"lateral","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"reference","type":[{"name":"TableReference","namespace":"Flow\\PostgreSql\\QueryBuilder\\Table","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Lateral","namespace":"Flow\\PostgreSql\\QueryBuilder\\Table","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIExBVEVSQUwgc3VicXVlcnkuCiAqCiAqIEBwYXJhbSBUYWJsZVJlZmVyZW5jZSAkcmVmZXJlbmNlIFRoZSBzdWJxdWVyeSBvciB0YWJsZSBmdW5jdGlvbiByZWZlcmVuY2UKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1741,"slug":"table-func","name":"table_func","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"function","type":[{"name":"FunctionCall","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"withOrdinality","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"TableFunction","namespace":"Flow\\PostgreSql\\QueryBuilder\\Table","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIHRhYmxlIGZ1bmN0aW9uIHJlZmVyZW5jZS4KICoKICogQHBhcmFtIEZ1bmN0aW9uQ2FsbCAkZnVuY3Rpb24gVGhlIHRhYmxlLXZhbHVlZCBmdW5jdGlvbgogKiBAcGFyYW0gYm9vbCAkd2l0aE9yZGluYWxpdHkgV2hldGhlciB0byBhZGQgV0lUSCBPUkRJTkFMSVRZCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1760,"slug":"values-table","name":"values_table","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"rows","type":[{"name":"RowExpression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"ValuesTable","namespace":"Flow\\PostgreSql\\QueryBuilder\\Table","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFZBTFVFUyBjbGF1c2UgYXMgYSB0YWJsZSByZWZlcmVuY2UuCiAqCiAqIFVzYWdlOgogKiAgIHNlbGVjdCgpLT5mcm9tKAogKiAgICAgICB2YWx1ZXNfdGFibGUoCiAqICAgICAgICAgICByb3dfZXhwcihbbGl0ZXJhbCgxKSwgbGl0ZXJhbCgnQWxpY2UnKV0pLAogKiAgICAgICAgICAgcm93X2V4cHIoW2xpdGVyYWwoMiksIGxpdGVyYWwoJ0JvYicpXSkKICogICAgICAgKS0+YXMoJ3QnLCBbJ2lkJywgJ25hbWUnXSkKICogICApCiAqCiAqIEdlbmVyYXRlczogU0VMRUNUICogRlJPTSAoVkFMVUVTICgxLCAnQWxpY2UnKSwgKDIsICdCb2InKSkgQVMgdChpZCwgbmFtZSkKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1769,"slug":"order-by","name":"order_by","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expr","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"direction","type":[{"name":"SortDirection","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\PostgreSql\\QueryBuilder\\Clause\\SortDirection::..."},{"name":"nulls","type":[{"name":"NullsPosition","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\PostgreSql\\QueryBuilder\\Clause\\NullsPosition::..."}],"return_type":[{"name":"OrderBy","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBPUkRFUiBCWSBpdGVtLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1781,"slug":"asc","name":"asc","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expr","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"nulls","type":[{"name":"NullsPosition","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\PostgreSql\\QueryBuilder\\Clause\\NullsPosition::..."}],"return_type":[{"name":"OrderBy","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBPUkRFUiBCWSBpdGVtIHdpdGggQVNDIGRpcmVjdGlvbi4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1790,"slug":"desc","name":"desc","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expr","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"nulls","type":[{"name":"NullsPosition","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\PostgreSql\\QueryBuilder\\Clause\\NullsPosition::..."}],"return_type":[{"name":"OrderBy","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBPUkRFUiBCWSBpdGVtIHdpdGggREVTQyBkaXJlY3Rpb24uCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1804,"slug":"cte","name":"cte","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"query","type":[{"name":"SelectFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Select","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"columnNames","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"},{"name":"materialization","type":[{"name":"CTEMaterialization","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\PostgreSql\\QueryBuilder\\Clause\\CTEMaterialization::..."},{"name":"recursive","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"CTE","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIENURSAoQ29tbW9uIFRhYmxlIEV4cHJlc3Npb24pLgogKgogKiBAcGFyYW0gc3RyaW5nICRuYW1lIENURSBuYW1lCiAqIEBwYXJhbSBTZWxlY3RGaW5hbFN0ZXAgJHF1ZXJ5IENURSBxdWVyeQogKiBAcGFyYW0gYXJyYXk8c3RyaW5nPiAkY29sdW1uTmFtZXMgQ29sdW1uIGFsaWFzZXMgKG9wdGlvbmFsKQogKiBAcGFyYW0gQ1RFTWF0ZXJpYWxpemF0aW9uICRtYXRlcmlhbGl6YXRpb24gTWF0ZXJpYWxpemF0aW9uIGhpbnQKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1826,"slug":"window-def","name":"window_def","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"partitionBy","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"},{"name":"orderBy","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"},{"name":"frame","type":[{"name":"WindowFrame","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"WindowDefinition","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIHdpbmRvdyBkZWZpbml0aW9uIGZvciBXSU5ET1cgY2xhdXNlLgogKgogKiBAcGFyYW0gc3RyaW5nICRuYW1lIFdpbmRvdyBuYW1lCiAqIEBwYXJhbSBsaXN0PEV4cHJlc3Npb24+ICRwYXJ0aXRpb25CeSBQQVJUSVRJT04gQlkgZXhwcmVzc2lvbnMKICogQHBhcmFtIGxpc3Q8T3JkZXJCeT4gJG9yZGVyQnkgT1JERVIgQlkgaXRlbXMKICogQHBhcmFtIG51bGx8V2luZG93RnJhbWUgJGZyYW1lIFdpbmRvdyBmcmFtZSBzcGVjaWZpY2F0aW9uCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1839,"slug":"window-frame","name":"window_frame","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"mode","type":[{"name":"FrameMode","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"start","type":[{"name":"FrameBound","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"end","type":[{"name":"FrameBound","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"exclusion","type":[{"name":"FrameExclusion","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\PostgreSql\\QueryBuilder\\Clause\\FrameExclusion::..."}],"return_type":[{"name":"WindowFrame","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIHdpbmRvdyBmcmFtZSBzcGVjaWZpY2F0aW9uLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1852,"slug":"frame-current-row","name":"frame_current_row","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"FrameBound","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGZyYW1lIGJvdW5kIGZvciBDVVJSRU5UIFJPVy4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1861,"slug":"frame-unbounded-preceding","name":"frame_unbounded_preceding","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"FrameBound","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGZyYW1lIGJvdW5kIGZvciBVTkJPVU5ERUQgUFJFQ0VESU5HLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1870,"slug":"frame-unbounded-following","name":"frame_unbounded_following","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"FrameBound","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGZyYW1lIGJvdW5kIGZvciBVTkJPVU5ERUQgRk9MTE9XSU5HLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1879,"slug":"frame-preceding","name":"frame_preceding","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"offset","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"FrameBound","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGZyYW1lIGJvdW5kIGZvciBOIFBSRUNFRElORy4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1888,"slug":"frame-following","name":"frame_following","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"offset","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"FrameBound","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGZyYW1lIGJvdW5kIGZvciBOIEZPTExPV0lORy4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1901,"slug":"lock-for","name":"lock_for","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"strength","type":[{"name":"LockStrength","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"tables","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"},{"name":"waitPolicy","type":[{"name":"LockWaitPolicy","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\PostgreSql\\QueryBuilder\\Clause\\LockWaitPolicy::..."}],"return_type":[{"name":"LockingClause","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGxvY2tpbmcgY2xhdXNlIChGT1IgVVBEQVRFLCBGT1IgU0hBUkUsIGV0Yy4pLgogKgogKiBAcGFyYW0gTG9ja1N0cmVuZ3RoICRzdHJlbmd0aCBMb2NrIHN0cmVuZ3RoCiAqIEBwYXJhbSBsaXN0PHN0cmluZz4gJHRhYmxlcyBUYWJsZXMgdG8gbG9jayAoZW1wdHkgZm9yIGFsbCkKICogQHBhcmFtIExvY2tXYWl0UG9saWN5ICR3YWl0UG9saWN5IFdhaXQgcG9saWN5CiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1915,"slug":"for-update","name":"for_update","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"tables","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"LockingClause","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIEZPUiBVUERBVEUgbG9ja2luZyBjbGF1c2UuCiAqCiAqIEBwYXJhbSBsaXN0PHN0cmluZz4gJHRhYmxlcyBUYWJsZXMgdG8gbG9jayAoZW1wdHkgZm9yIGFsbCkKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1926,"slug":"for-share","name":"for_share","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"tables","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"LockingClause","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIEZPUiBTSEFSRSBsb2NraW5nIGNsYXVzZS4KICoKICogQHBhcmFtIGxpc3Q8c3RyaW5nPiAkdGFibGVzIFRhYmxlcyB0byBsb2NrIChlbXB0eSBmb3IgYWxsKQogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1935,"slug":"on-conflict-nothing","name":"on_conflict_nothing","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"target","type":[{"name":"ConflictTarget","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"OnConflictClause","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBPTiBDT05GTElDVCBETyBOT1RISU5HIGNsYXVzZS4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1947,"slug":"on-conflict-update","name":"on_conflict_update","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"target","type":[{"name":"ConflictTarget","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"updates","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"OnConflictClause","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBPTiBDT05GTElDVCBETyBVUERBVEUgY2xhdXNlLgogKgogKiBAcGFyYW0gQ29uZmxpY3RUYXJnZXQgJHRhcmdldCBDb25mbGljdCB0YXJnZXQgKGNvbHVtbnMgb3IgY29uc3RyYWludCkKICogQHBhcmFtIGFycmF5PHN0cmluZywgRXhwcmVzc2lvbj4gJHVwZGF0ZXMgQ29sdW1uIHVwZGF0ZXMKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1958,"slug":"conflict-columns","name":"conflict_columns","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"columns","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ConflictTarget","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGNvbmZsaWN0IHRhcmdldCBmb3IgT04gQ09ORkxJQ1QgKGNvbHVtbnMpLgogKgogKiBAcGFyYW0gbGlzdDxzdHJpbmc+ICRjb2x1bW5zIENvbHVtbnMgdGhhdCBkZWZpbmUgdW5pcXVlbmVzcwogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1967,"slug":"conflict-constraint","name":"conflict_constraint","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ConflictTarget","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGNvbmZsaWN0IHRhcmdldCBmb3IgT04gQ09ORkxJQ1QgT04gQ09OU1RSQUlOVC4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1978,"slug":"returning","name":"returning","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expressions","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"ReturningClause","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFJFVFVSTklORyBjbGF1c2UuCiAqCiAqIEBwYXJhbSBFeHByZXNzaW9uIC4uLiRleHByZXNzaW9ucyBFeHByZXNzaW9ucyB0byByZXR1cm4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1987,"slug":"returning-all","name":"returning_all","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"ReturningClause","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFJFVFVSTklORyAqIGNsYXVzZS4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1999,"slug":"begin","name":"begin","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"BeginOptionsStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Transaction","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIEJFR0lOIHRyYW5zYWN0aW9uIGJ1aWxkZXIuCiAqCiAqIEV4YW1wbGU6IGJlZ2luKCktPmlzb2xhdGlvbkxldmVsKElzb2xhdGlvbkxldmVsOjpTRVJJQUxJWkFCTEUpLT5yZWFkT25seSgpCiAqIFByb2R1Y2VzOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFIFJFQUQgT05MWQogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2011,"slug":"commit","name":"commit","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"CommitOptionsStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Transaction","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIENPTU1JVCB0cmFuc2FjdGlvbiBidWlsZGVyLgogKgogKiBFeGFtcGxlOiBjb21taXQoKS0+YW5kQ2hhaW4oKQogKiBQcm9kdWNlczogQ09NTUlUIEFORCBDSEFJTgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2023,"slug":"rollback","name":"rollback","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"RollbackOptionsStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Transaction","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFJPTExCQUNLIHRyYW5zYWN0aW9uIGJ1aWxkZXIuCiAqCiAqIEV4YW1wbGU6IHJvbGxiYWNrKCktPnRvU2F2ZXBvaW50KCdteV9zYXZlcG9pbnQnKQogKiBQcm9kdWNlczogUk9MTEJBQ0sgVE8gU0FWRVBPSU5UIG15X3NhdmVwb2ludAogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2035,"slug":"savepoint","name":"savepoint","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"SavepointFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Transaction","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFNBVkVQT0lOVC4KICoKICogRXhhbXBsZTogc2F2ZXBvaW50KCdteV9zYXZlcG9pbnQnKQogKiBQcm9kdWNlczogU0FWRVBPSU5UIG15X3NhdmVwb2ludAogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2047,"slug":"release-savepoint","name":"release_savepoint","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"SavepointFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Transaction","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIFJlbGVhc2UgYSBTQVZFUE9JTlQuCiAqCiAqIEV4YW1wbGU6IHJlbGVhc2Vfc2F2ZXBvaW50KCdteV9zYXZlcG9pbnQnKQogKiBQcm9kdWNlczogUkVMRUFTRSBteV9zYXZlcG9pbnQKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2059,"slug":"set-transaction","name":"set_transaction","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"SetTransactionOptionsStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Transaction","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFNFVCBUUkFOU0FDVElPTiBidWlsZGVyLgogKgogKiBFeGFtcGxlOiBzZXRfdHJhbnNhY3Rpb24oKS0+aXNvbGF0aW9uTGV2ZWwoSXNvbGF0aW9uTGV2ZWw6OlNFUklBTElaQUJMRSktPnJlYWRPbmx5KCkKICogUHJvZHVjZXM6IFNFVCBUUkFOU0FDVElPTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFLCBSRUFEIE9OTFkKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2071,"slug":"set-session-transaction","name":"set_session_transaction","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"SetTransactionOptionsStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Transaction","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFNFVCBTRVNTSU9OIENIQVJBQ1RFUklTVElDUyBBUyBUUkFOU0FDVElPTiBidWlsZGVyLgogKgogKiBFeGFtcGxlOiBzZXRfc2Vzc2lvbl90cmFuc2FjdGlvbigpLT5pc29sYXRpb25MZXZlbChJc29sYXRpb25MZXZlbDo6U0VSSUFMSVpBQkxFKQogKiBQcm9kdWNlczogU0VUIFNFU1NJT04gQ0hBUkFDVEVSSVNUSUNTIEFTIFRSQU5TQUNUSU9OIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEUKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2083,"slug":"transaction-snapshot","name":"transaction_snapshot","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"snapshotId","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"SetTransactionFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Transaction","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFNFVCBUUkFOU0FDVElPTiBTTkFQU0hPVCBidWlsZGVyLgogKgogKiBFeGFtcGxlOiB0cmFuc2FjdGlvbl9zbmFwc2hvdCgnMDAwMDAwMDMtMDAwMDAwMUEtMScpCiAqIFByb2R1Y2VzOiBTRVQgVFJBTlNBQ1RJT04gU05BUFNIT1QgJzAwMDAwMDAzLTAwMDAwMDFBLTEnCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2095,"slug":"prepare-transaction","name":"prepare_transaction","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"transactionId","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"PreparedTransactionFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Transaction","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFBSRVBBUkUgVFJBTlNBQ1RJT04gYnVpbGRlci4KICoKICogRXhhbXBsZTogcHJlcGFyZV90cmFuc2FjdGlvbignbXlfdHJhbnNhY3Rpb24nKQogKiBQcm9kdWNlczogUFJFUEFSRSBUUkFOU0FDVElPTiAnbXlfdHJhbnNhY3Rpb24nCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2107,"slug":"commit-prepared","name":"commit_prepared","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"transactionId","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"PreparedTransactionFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Transaction","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIENPTU1JVCBQUkVQQVJFRCBidWlsZGVyLgogKgogKiBFeGFtcGxlOiBjb21taXRfcHJlcGFyZWQoJ215X3RyYW5zYWN0aW9uJykKICogUHJvZHVjZXM6IENPTU1JVCBQUkVQQVJFRCAnbXlfdHJhbnNhY3Rpb24nCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2119,"slug":"rollback-prepared","name":"rollback_prepared","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"transactionId","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"PreparedTransactionFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Transaction","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFJPTExCQUNLIFBSRVBBUkVEIGJ1aWxkZXIuCiAqCiAqIEV4YW1wbGU6IHJvbGxiYWNrX3ByZXBhcmVkKCdteV90cmFuc2FjdGlvbicpCiAqIFByb2R1Y2VzOiBST0xMQkFDSyBQUkVQQVJFRCAnbXlfdHJhbnNhY3Rpb24nCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2142,"slug":"declare-cursor","name":"declare_cursor","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"cursorName","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"query","type":[{"name":"SelectFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Select","is_nullable":false,"is_variadic":false},{"name":"SqlQuery","namespace":"Flow\\PostgreSql\\QueryBuilder","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"DeclareCursorOptionsStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Cursor","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIERlY2xhcmUgYSBzZXJ2ZXItc2lkZSBjdXJzb3IgZm9yIGEgcXVlcnkuCiAqCiAqIEN1cnNvcnMgbXVzdCBiZSBkZWNsYXJlZCB3aXRoaW4gYSB0cmFuc2FjdGlvbiBhbmQgcHJvdmlkZSBtZW1vcnktZWZmaWNpZW50CiAqIGl0ZXJhdGlvbiBvdmVyIGxhcmdlIHJlc3VsdCBzZXRzIHZpYSBGRVRDSCBjb21tYW5kcy4KICoKICogRXhhbXBsZSB3aXRoIHF1ZXJ5IGJ1aWxkZXI6CiAqICAgZGVjbGFyZV9jdXJzb3IoJ215X2N1cnNvcicsIHNlbGVjdChzdGFyKCkpLT5mcm9tKHRhYmxlKCd1c2VycycpKSktPm5vU2Nyb2xsKCkKICogICBQcm9kdWNlczogREVDTEFSRSBteV9jdXJzb3IgTk8gU0NST0xMIENVUlNPUiBGT1IgU0VMRUNUICogRlJPTSB1c2VycwogKgogKiBFeGFtcGxlIHdpdGggcmF3IFNRTDoKICogICBkZWNsYXJlX2N1cnNvcignbXlfY3Vyc29yJywgJ1NFTEVDVCAqIEZST00gdXNlcnMgV0hFUkUgYWN0aXZlID0gdHJ1ZScpLT53aXRoSG9sZCgpCiAqICAgUHJvZHVjZXM6IERFQ0xBUkUgbXlfY3Vyc29yIE5PIFNDUk9MTCBDVVJTT1IgV0lUSCBIT0xEIEZPUiBTRUxFQ1QgKiBGUk9NIHVzZXJzIFdIRVJFIGFjdGl2ZSA9IHRydWUKICoKICogQHBhcmFtIHN0cmluZyAkY3Vyc29yTmFtZSBVbmlxdWUgY3Vyc29yIG5hbWUKICogQHBhcmFtIFNlbGVjdEZpbmFsU3RlcHxTcWxRdWVyeXxzdHJpbmcgJHF1ZXJ5IFF1ZXJ5IHRvIGl0ZXJhdGUgb3ZlcgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2163,"slug":"fetch","name":"fetch","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"cursorName","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"FetchCursorBuilder","namespace":"Flow\\PostgreSql\\QueryBuilder\\Cursor","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEZldGNoIHJvd3MgZnJvbSBhIGN1cnNvci4KICoKICogRXhhbXBsZTogZmV0Y2goJ215X2N1cnNvcicpLT5mb3J3YXJkKDEwMCkKICogUHJvZHVjZXM6IEZFVENIIEZPUldBUkQgMTAwIG15X2N1cnNvcgogKgogKiBFeGFtcGxlOiBmZXRjaCgnbXlfY3Vyc29yJyktPmFsbCgpCiAqIFByb2R1Y2VzOiBGRVRDSCBBTEwgbXlfY3Vyc29yCiAqCiAqIEBwYXJhbSBzdHJpbmcgJGN1cnNvck5hbWUgQ3Vyc29yIHRvIGZldGNoIGZyb20KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2180,"slug":"close-cursor","name":"close_cursor","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"cursorName","type":[{"name":"string","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"CloseCursorFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Cursor","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENsb3NlIGEgY3Vyc29yLgogKgogKiBFeGFtcGxlOiBjbG9zZV9jdXJzb3IoJ215X2N1cnNvcicpCiAqIFByb2R1Y2VzOiBDTE9TRSBteV9jdXJzb3IKICoKICogRXhhbXBsZTogY2xvc2VfY3Vyc29yKCkgLSBjbG9zZXMgYWxsIGN1cnNvcnMKICogUHJvZHVjZXM6IENMT1NFIEFMTAogKgogKiBAcGFyYW0gbnVsbHxzdHJpbmcgJGN1cnNvck5hbWUgQ3Vyc29yIHRvIGNsb3NlLCBvciBudWxsIHRvIGNsb3NlIGFsbAogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2196,"slug":"column","name":"column","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"type","type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ColumnDefinition","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGNvbHVtbiBkZWZpbml0aW9uIGZvciBDUkVBVEUgVEFCTEUuCiAqCiAqIEBwYXJhbSBzdHJpbmcgJG5hbWUgQ29sdW1uIG5hbWUKICogQHBhcmFtIERhdGFUeXBlICR0eXBlIENvbHVtbiBkYXRhIHR5cGUKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2207,"slug":"primary-key","name":"primary_key","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"columns","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"PrimaryKeyConstraint","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Constraint","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFBSSU1BUlkgS0VZIGNvbnN0cmFpbnQuCiAqCiAqIEBwYXJhbSBzdHJpbmcgLi4uJGNvbHVtbnMgQ29sdW1ucyB0aGF0IGZvcm0gdGhlIHByaW1hcnkga2V5CiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2218,"slug":"unique-constraint","name":"unique_constraint","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"columns","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"UniqueConstraint","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Constraint","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFVOSVFVRSBjb25zdHJhaW50LgogKgogKiBAcGFyYW0gc3RyaW5nIC4uLiRjb2x1bW5zIENvbHVtbnMgdGhhdCBtdXN0IGJlIHVuaXF1ZSB0b2dldGhlcgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2231,"slug":"foreign-key","name":"foreign_key","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"columns","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"referenceTable","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"referenceColumns","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"ForeignKeyConstraint","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Constraint","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIEZPUkVJR04gS0VZIGNvbnN0cmFpbnQuCiAqCiAqIEBwYXJhbSBsaXN0PHN0cmluZz4gJGNvbHVtbnMgTG9jYWwgY29sdW1ucwogKiBAcGFyYW0gc3RyaW5nICRyZWZlcmVuY2VUYWJsZSBSZWZlcmVuY2VkIHRhYmxlCiAqIEBwYXJhbSBsaXN0PHN0cmluZz4gJHJlZmVyZW5jZUNvbHVtbnMgUmVmZXJlbmNlZCBjb2x1bW5zIChkZWZhdWx0cyB0byBzYW1lIGFzICRjb2x1bW5zIGlmIGVtcHR5KQogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2242,"slug":"check-constraint","name":"check_constraint","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expression","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"CheckConstraint","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Constraint","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIENIRUNLIGNvbnN0cmFpbnQuCiAqCiAqIEBwYXJhbSBzdHJpbmcgJGV4cHJlc3Npb24gU1FMIGV4cHJlc3Npb24gdGhhdCBtdXN0IGV2YWx1YXRlIHRvIHRydWUKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2273,"slug":"create","name":"create","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"CreateFactory","namespace":"Flow\\PostgreSql\\QueryBuilder\\Factory","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGZhY3RvcnkgZm9yIGJ1aWxkaW5nIENSRUFURSBzdGF0ZW1lbnRzLgogKgogKiBQcm92aWRlcyBhIHVuaWZpZWQgZW50cnkgcG9pbnQgZm9yIGFsbCBDUkVBVEUgb3BlcmF0aW9uczoKICogLSBjcmVhdGUoKS0+dGFibGUoKSAtIENSRUFURSBUQUJMRQogKiAtIGNyZWF0ZSgpLT50YWJsZUFzKCkgLSBDUkVBVEUgVEFCTEUgQVMKICogLSBjcmVhdGUoKS0+aW5kZXgoKSAtIENSRUFURSBJTkRFWAogKiAtIGNyZWF0ZSgpLT52aWV3KCkgLSBDUkVBVEUgVklFVwogKiAtIGNyZWF0ZSgpLT5tYXRlcmlhbGl6ZWRWaWV3KCkgLSBDUkVBVEUgTUFURVJJQUxJWkVEIFZJRVcKICogLSBjcmVhdGUoKS0+c2VxdWVuY2UoKSAtIENSRUFURSBTRVFVRU5DRQogKiAtIGNyZWF0ZSgpLT5zY2hlbWEoKSAtIENSRUFURSBTQ0hFTUEKICogLSBjcmVhdGUoKS0+cm9sZSgpIC0gQ1JFQVRFIFJPTEUKICogLSBjcmVhdGUoKS0+ZnVuY3Rpb24oKSAtIENSRUFURSBGVU5DVElPTgogKiAtIGNyZWF0ZSgpLT5wcm9jZWR1cmUoKSAtIENSRUFURSBQUk9DRURVUkUKICogLSBjcmVhdGUoKS0+dHJpZ2dlcigpIC0gQ1JFQVRFIFRSSUdHRVIKICogLSBjcmVhdGUoKS0+cnVsZSgpIC0gQ1JFQVRFIFJVTEUKICogLSBjcmVhdGUoKS0+ZXh0ZW5zaW9uKCkgLSBDUkVBVEUgRVhURU5TSU9OCiAqIC0gY3JlYXRlKCktPmNvbXBvc2l0ZVR5cGUoKSAtIENSRUFURSBUWVBFIChjb21wb3NpdGUpCiAqIC0gY3JlYXRlKCktPmVudW1UeXBlKCkgLSBDUkVBVEUgVFlQRSAoZW51bSkKICogLSBjcmVhdGUoKS0+cmFuZ2VUeXBlKCkgLSBDUkVBVEUgVFlQRSAocmFuZ2UpCiAqIC0gY3JlYXRlKCktPmRvbWFpbigpIC0gQ1JFQVRFIERPTUFJTgogKgogKiBFeGFtcGxlOiBjcmVhdGUoKS0+dGFibGUoJ3VzZXJzJyktPmNvbHVtbnMoY29sX2RlZignaWQnLCBkYXRhX3R5cGVfc2VyaWFsKCkpKQogKiBFeGFtcGxlOiBjcmVhdGUoKS0+aW5kZXgoJ2lkeF9lbWFpbCcpLT5vbigndXNlcnMnKS0+Y29sdW1ucygnZW1haWwnKQogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2302,"slug":"drop","name":"drop","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"DropFactory","namespace":"Flow\\PostgreSql\\QueryBuilder\\Factory","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGZhY3RvcnkgZm9yIGJ1aWxkaW5nIERST1Agc3RhdGVtZW50cy4KICoKICogUHJvdmlkZXMgYSB1bmlmaWVkIGVudHJ5IHBvaW50IGZvciBhbGwgRFJPUCBvcGVyYXRpb25zOgogKiAtIGRyb3AoKS0+dGFibGUoKSAtIERST1AgVEFCTEUKICogLSBkcm9wKCktPmluZGV4KCkgLSBEUk9QIElOREVYCiAqIC0gZHJvcCgpLT52aWV3KCkgLSBEUk9QIFZJRVcKICogLSBkcm9wKCktPm1hdGVyaWFsaXplZFZpZXcoKSAtIERST1AgTUFURVJJQUxJWkVEIFZJRVcKICogLSBkcm9wKCktPnNlcXVlbmNlKCkgLSBEUk9QIFNFUVVFTkNFCiAqIC0gZHJvcCgpLT5zY2hlbWEoKSAtIERST1AgU0NIRU1BCiAqIC0gZHJvcCgpLT5yb2xlKCkgLSBEUk9QIFJPTEUKICogLSBkcm9wKCktPmZ1bmN0aW9uKCkgLSBEUk9QIEZVTkNUSU9OCiAqIC0gZHJvcCgpLT5wcm9jZWR1cmUoKSAtIERST1AgUFJPQ0VEVVJFCiAqIC0gZHJvcCgpLT50cmlnZ2VyKCkgLSBEUk9QIFRSSUdHRVIKICogLSBkcm9wKCktPnJ1bGUoKSAtIERST1AgUlVMRQogKiAtIGRyb3AoKS0+ZXh0ZW5zaW9uKCkgLSBEUk9QIEVYVEVOU0lPTgogKiAtIGRyb3AoKS0+dHlwZSgpIC0gRFJPUCBUWVBFCiAqIC0gZHJvcCgpLT5kb21haW4oKSAtIERST1AgRE9NQUlOCiAqIC0gZHJvcCgpLT5vd25lZCgpIC0gRFJPUCBPV05FRAogKgogKiBFeGFtcGxlOiBkcm9wKCktPnRhYmxlKCd1c2VycycsICdvcmRlcnMnKS0+aWZFeGlzdHMoKS0+Y2FzY2FkZSgpCiAqIEV4YW1wbGU6IGRyb3AoKS0+aW5kZXgoJ2lkeF9lbWFpbCcpLT5pZkV4aXN0cygpCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2336,"slug":"alter","name":"alter","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"AlterFactory","namespace":"Flow\\PostgreSql\\QueryBuilder\\Factory","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGZhY3RvcnkgZm9yIGJ1aWxkaW5nIEFMVEVSIHN0YXRlbWVudHMuCiAqCiAqIFByb3ZpZGVzIGEgdW5pZmllZCBlbnRyeSBwb2ludCBmb3IgYWxsIEFMVEVSIG9wZXJhdGlvbnM6CiAqIC0gYWx0ZXIoKS0+dGFibGUoKSAtIEFMVEVSIFRBQkxFCiAqIC0gYWx0ZXIoKS0+aW5kZXgoKSAtIEFMVEVSIElOREVYCiAqIC0gYWx0ZXIoKS0+dmlldygpIC0gQUxURVIgVklFVwogKiAtIGFsdGVyKCktPm1hdGVyaWFsaXplZFZpZXcoKSAtIEFMVEVSIE1BVEVSSUFMSVpFRCBWSUVXCiAqIC0gYWx0ZXIoKS0+c2VxdWVuY2UoKSAtIEFMVEVSIFNFUVVFTkNFCiAqIC0gYWx0ZXIoKS0+c2NoZW1hKCkgLSBBTFRFUiBTQ0hFTUEKICogLSBhbHRlcigpLT5yb2xlKCkgLSBBTFRFUiBST0xFCiAqIC0gYWx0ZXIoKS0+ZnVuY3Rpb24oKSAtIEFMVEVSIEZVTkNUSU9OCiAqIC0gYWx0ZXIoKS0+cHJvY2VkdXJlKCkgLSBBTFRFUiBQUk9DRURVUkUKICogLSBhbHRlcigpLT50cmlnZ2VyKCkgLSBBTFRFUiBUUklHR0VSCiAqIC0gYWx0ZXIoKS0+ZXh0ZW5zaW9uKCkgLSBBTFRFUiBFWFRFTlNJT04KICogLSBhbHRlcigpLT5lbnVtVHlwZSgpIC0gQUxURVIgVFlQRSAoZW51bSkKICogLSBhbHRlcigpLT5kb21haW4oKSAtIEFMVEVSIERPTUFJTgogKgogKiBSZW5hbWUgb3BlcmF0aW9ucyBhcmUgYWxzbyB1bmRlciBhbHRlcigpOgogKiAtIGFsdGVyKCktPmluZGV4KCdvbGQnKS0+cmVuYW1lVG8oJ25ldycpCiAqIC0gYWx0ZXIoKS0+dmlldygnb2xkJyktPnJlbmFtZVRvKCduZXcnKQogKiAtIGFsdGVyKCktPnNjaGVtYSgnb2xkJyktPnJlbmFtZVRvKCduZXcnKQogKiAtIGFsdGVyKCktPnJvbGUoJ29sZCcpLT5yZW5hbWVUbygnbmV3JykKICogLSBhbHRlcigpLT50cmlnZ2VyKCdvbGQnKS0+b24oJ3RhYmxlJyktPnJlbmFtZVRvKCduZXcnKQogKgogKiBFeGFtcGxlOiBhbHRlcigpLT50YWJsZSgndXNlcnMnKS0+YWRkQ29sdW1uKGNvbF9kZWYoJ2VtYWlsJywgZGF0YV90eXBlX3RleHQoKSkpCiAqIEV4YW1wbGU6IGFsdGVyKCktPnNlcXVlbmNlKCd1c2VyX2lkX3NlcScpLT5yZXN0YXJ0KDEwMDApCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2347,"slug":"truncate-table","name":"truncate_table","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"tables","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"TruncateFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Truncate","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFRSVU5DQVRFIFRBQkxFIGJ1aWxkZXIuCiAqCiAqIEBwYXJhbSBzdHJpbmcgLi4uJHRhYmxlcyBUYWJsZSBuYW1lcyB0byB0cnVuY2F0ZQogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2365,"slug":"refresh-materialized-view","name":"refresh_materialized_view","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"schema","type":[{"name":"string","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"RefreshMatViewOptionsStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\View\\RefreshMaterializedView","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFJFRlJFU0ggTUFURVJJQUxJWkVEIFZJRVcgYnVpbGRlci4KICoKICogRXhhbXBsZTogcmVmcmVzaF9tYXRlcmlhbGl6ZWRfdmlldygndXNlcl9zdGF0cycpCiAqIFByb2R1Y2VzOiBSRUZSRVNIIE1BVEVSSUFMSVpFRCBWSUVXIHVzZXJfc3RhdHMKICoKICogRXhhbXBsZTogcmVmcmVzaF9tYXRlcmlhbGl6ZWRfdmlldygndXNlcl9zdGF0cycpLT5jb25jdXJyZW50bHkoKS0+d2l0aERhdGEoKQogKiBQcm9kdWNlczogUkVGUkVTSCBNQVRFUklBTElaRUQgVklFVyBDT05DVVJSRU5UTFkgdXNlcl9zdGF0cyBXSVRIIERBVEEKICoKICogQHBhcmFtIHN0cmluZyAkbmFtZSBWaWV3IG5hbWUgKG1heSBpbmNsdWRlIHNjaGVtYSBhcyAic2NoZW1hLnZpZXciKQogKiBAcGFyYW0gbnVsbHxzdHJpbmcgJHNjaGVtYSBTY2hlbWEgbmFtZSAob3B0aW9uYWwsIG92ZXJyaWRlcyBwYXJzZWQgc2NoZW1hKQogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2374,"slug":"ref-action-cascade","name":"ref_action_cascade","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"ReferentialAction","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEdldCBhIENBU0NBREUgcmVmZXJlbnRpYWwgYWN0aW9uLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2383,"slug":"ref-action-restrict","name":"ref_action_restrict","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"ReferentialAction","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEdldCBhIFJFU1RSSUNUIHJlZmVyZW50aWFsIGFjdGlvbi4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2392,"slug":"ref-action-set-null","name":"ref_action_set_null","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"ReferentialAction","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEdldCBhIFNFVCBOVUxMIHJlZmVyZW50aWFsIGFjdGlvbi4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2401,"slug":"ref-action-set-default","name":"ref_action_set_default","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"ReferentialAction","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEdldCBhIFNFVCBERUZBVUxUIHJlZmVyZW50aWFsIGFjdGlvbi4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2410,"slug":"ref-action-no-action","name":"ref_action_no_action","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"ReferentialAction","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEdldCBhIE5PIEFDVElPTiByZWZlcmVudGlhbCBhY3Rpb24uCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2425,"slug":"reindex-index","name":"reindex_index","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ReindexFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Index\\Reindex","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIFN0YXJ0IGJ1aWxkaW5nIGEgUkVJTkRFWCBJTkRFWCBzdGF0ZW1lbnQuCiAqCiAqIFVzZSBjaGFpbmFibGUgbWV0aG9kczogLT5jb25jdXJyZW50bHkoKSwgLT52ZXJib3NlKCksIC0+dGFibGVzcGFjZSgpCiAqCiAqIEV4YW1wbGU6IHJlaW5kZXhfaW5kZXgoJ2lkeF91c2Vyc19lbWFpbCcpLT5jb25jdXJyZW50bHkoKQogKgogKiBAcGFyYW0gc3RyaW5nICRuYW1lIFRoZSBpbmRleCBuYW1lIChtYXkgaW5jbHVkZSBzY2hlbWE6IHNjaGVtYS5pbmRleCkKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2440,"slug":"reindex-table","name":"reindex_table","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ReindexFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Index\\Reindex","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIFN0YXJ0IGJ1aWxkaW5nIGEgUkVJTkRFWCBUQUJMRSBzdGF0ZW1lbnQuCiAqCiAqIFVzZSBjaGFpbmFibGUgbWV0aG9kczogLT5jb25jdXJyZW50bHkoKSwgLT52ZXJib3NlKCksIC0+dGFibGVzcGFjZSgpCiAqCiAqIEV4YW1wbGU6IHJlaW5kZXhfdGFibGUoJ3VzZXJzJyktPmNvbmN1cnJlbnRseSgpCiAqCiAqIEBwYXJhbSBzdHJpbmcgJG5hbWUgVGhlIHRhYmxlIG5hbWUgKG1heSBpbmNsdWRlIHNjaGVtYTogc2NoZW1hLnRhYmxlKQogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2455,"slug":"reindex-schema","name":"reindex_schema","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ReindexFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Index\\Reindex","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIFN0YXJ0IGJ1aWxkaW5nIGEgUkVJTkRFWCBTQ0hFTUEgc3RhdGVtZW50LgogKgogKiBVc2UgY2hhaW5hYmxlIG1ldGhvZHM6IC0+Y29uY3VycmVudGx5KCksIC0+dmVyYm9zZSgpLCAtPnRhYmxlc3BhY2UoKQogKgogKiBFeGFtcGxlOiByZWluZGV4X3NjaGVtYSgncHVibGljJyktPmNvbmN1cnJlbnRseSgpCiAqCiAqIEBwYXJhbSBzdHJpbmcgJG5hbWUgVGhlIHNjaGVtYSBuYW1lCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2470,"slug":"reindex-database","name":"reindex_database","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ReindexFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Index\\Reindex","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIFN0YXJ0IGJ1aWxkaW5nIGEgUkVJTkRFWCBEQVRBQkFTRSBzdGF0ZW1lbnQuCiAqCiAqIFVzZSBjaGFpbmFibGUgbWV0aG9kczogLT5jb25jdXJyZW50bHkoKSwgLT52ZXJib3NlKCksIC0+dGFibGVzcGFjZSgpCiAqCiAqIEV4YW1wbGU6IHJlaW5kZXhfZGF0YWJhc2UoJ215ZGInKS0+Y29uY3VycmVudGx5KCkKICoKICogQHBhcmFtIHN0cmluZyAkbmFtZSBUaGUgZGF0YWJhc2UgbmFtZQogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2485,"slug":"index-col","name":"index_col","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"IndexColumn","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Index","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBpbmRleCBjb2x1bW4gc3BlY2lmaWNhdGlvbi4KICoKICogVXNlIGNoYWluYWJsZSBtZXRob2RzOiAtPmFzYygpLCAtPmRlc2MoKSwgLT5udWxsc0ZpcnN0KCksIC0+bnVsbHNMYXN0KCksIC0+b3BjbGFzcygpLCAtPmNvbGxhdGUoKQogKgogKiBFeGFtcGxlOiBpbmRleF9jb2woJ2VtYWlsJyktPmRlc2MoKS0+bnVsbHNMYXN0KCkKICoKICogQHBhcmFtIHN0cmluZyAkbmFtZSBUaGUgY29sdW1uIG5hbWUKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2500,"slug":"index-expr","name":"index_expr","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expression","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"IndexColumn","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Index","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBpbmRleCBjb2x1bW4gc3BlY2lmaWNhdGlvbiBmcm9tIGFuIGV4cHJlc3Npb24uCiAqCiAqIFVzZSBjaGFpbmFibGUgbWV0aG9kczogLT5hc2MoKSwgLT5kZXNjKCksIC0+bnVsbHNGaXJzdCgpLCAtPm51bGxzTGFzdCgpLCAtPm9wY2xhc3MoKSwgLT5jb2xsYXRlKCkKICoKICogRXhhbXBsZTogaW5kZXhfZXhwcihmbl9jYWxsKCdsb3dlcicsIGNvbCgnZW1haWwnKSkpLT5kZXNjKCkKICoKICogQHBhcmFtIEV4cHJlc3Npb24gJGV4cHJlc3Npb24gVGhlIGV4cHJlc3Npb24gdG8gaW5kZXgKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2509,"slug":"index-method-btree","name":"index_method_btree","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"IndexMethod","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Index","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEdldCB0aGUgQlRSRUUgaW5kZXggbWV0aG9kLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2518,"slug":"index-method-hash","name":"index_method_hash","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"IndexMethod","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Index","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEdldCB0aGUgSEFTSCBpbmRleCBtZXRob2QuCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2527,"slug":"index-method-gist","name":"index_method_gist","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"IndexMethod","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Index","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEdldCB0aGUgR0lTVCBpbmRleCBtZXRob2QuCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2536,"slug":"index-method-spgist","name":"index_method_spgist","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"IndexMethod","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Index","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEdldCB0aGUgU1BHSVNUIGluZGV4IG1ldGhvZC4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2545,"slug":"index-method-gin","name":"index_method_gin","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"IndexMethod","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Index","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEdldCB0aGUgR0lOIGluZGV4IG1ldGhvZC4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2554,"slug":"index-method-brin","name":"index_method_brin","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"IndexMethod","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Index","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEdldCB0aGUgQlJJTiBpbmRleCBtZXRob2QuCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2566,"slug":"vacuum","name":"vacuum","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"VacuumFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Utility","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFZBQ1VVTSBidWlsZGVyLgogKgogKiBFeGFtcGxlOiB2YWN1dW0oKS0+dGFibGUoJ3VzZXJzJykKICogUHJvZHVjZXM6IFZBQ1VVTSB1c2VycwogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2578,"slug":"analyze","name":"analyze","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"AnalyzeFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Utility","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBBTkFMWVpFIGJ1aWxkZXIuCiAqCiAqIEV4YW1wbGU6IGFuYWx5emUoKS0+dGFibGUoJ3VzZXJzJykKICogUHJvZHVjZXM6IEFOQUxZWkUgdXNlcnMKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2592,"slug":"explain","name":"explain","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"query","type":[{"name":"SelectFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Select","is_nullable":false,"is_variadic":false},{"name":"InsertBuilder","namespace":"Flow\\PostgreSql\\QueryBuilder\\Insert","is_nullable":false,"is_variadic":false},{"name":"UpdateBuilder","namespace":"Flow\\PostgreSql\\QueryBuilder\\Update","is_nullable":false,"is_variadic":false},{"name":"DeleteBuilder","namespace":"Flow\\PostgreSql\\QueryBuilder\\Delete","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ExplainFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Utility","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBFWFBMQUlOIGJ1aWxkZXIgZm9yIGEgcXVlcnkuCiAqCiAqIEV4YW1wbGU6IGV4cGxhaW4oc2VsZWN0KCktPmZyb20oJ3VzZXJzJykpCiAqIFByb2R1Y2VzOiBFWFBMQUlOIFNFTEVDVCAqIEZST00gdXNlcnMKICoKICogQHBhcmFtIERlbGV0ZUJ1aWxkZXJ8SW5zZXJ0QnVpbGRlcnxTZWxlY3RGaW5hbFN0ZXB8VXBkYXRlQnVpbGRlciAkcXVlcnkgUXVlcnkgdG8gZXhwbGFpbgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2604,"slug":"lock-table","name":"lock_table","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"tables","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"LockFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Utility","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIExPQ0sgVEFCTEUgYnVpbGRlci4KICoKICogRXhhbXBsZTogbG9ja190YWJsZSgndXNlcnMnLCAnb3JkZXJzJyktPmFjY2Vzc0V4Y2x1c2l2ZSgpCiAqIFByb2R1Y2VzOiBMT0NLIFRBQkxFIHVzZXJzLCBvcmRlcnMgSU4gQUNDRVNTIEVYQ0xVU0lWRSBNT0RFCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2619,"slug":"comment","name":"comment","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"target","type":[{"name":"CommentTarget","namespace":"Flow\\PostgreSql\\QueryBuilder\\Utility","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"CommentFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Utility","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIENPTU1FTlQgT04gYnVpbGRlci4KICoKICogRXhhbXBsZTogY29tbWVudChDb21tZW50VGFyZ2V0OjpUQUJMRSwgJ3VzZXJzJyktPmlzKCdVc2VyIGFjY291bnRzIHRhYmxlJykKICogUHJvZHVjZXM6IENPTU1FTlQgT04gVEFCTEUgdXNlcnMgSVMgJ1VzZXIgYWNjb3VudHMgdGFibGUnCiAqCiAqIEBwYXJhbSBDb21tZW50VGFyZ2V0ICR0YXJnZXQgVGFyZ2V0IHR5cGUgKFRBQkxFLCBDT0xVTU4sIElOREVYLCBldGMuKQogKiBAcGFyYW0gc3RyaW5nICRuYW1lIFRhcmdldCBuYW1lICh1c2UgJ3RhYmxlLmNvbHVtbicgZm9yIENPTFVNTiB0YXJnZXRzKQogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2631,"slug":"cluster","name":"cluster","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"ClusterFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Utility","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIENMVVNURVIgYnVpbGRlci4KICoKICogRXhhbXBsZTogY2x1c3RlcigpLT50YWJsZSgndXNlcnMnKS0+dXNpbmcoJ2lkeF91c2Vyc19wa2V5JykKICogUHJvZHVjZXM6IENMVVNURVIgdXNlcnMgVVNJTkcgaWR4X3VzZXJzX3BrZXkKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2645,"slug":"discard","name":"discard","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"type","type":[{"name":"DiscardType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Utility","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"DiscardFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Utility","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIERJU0NBUkQgYnVpbGRlci4KICoKICogRXhhbXBsZTogZGlzY2FyZChEaXNjYXJkVHlwZTo6QUxMKQogKiBQcm9kdWNlczogRElTQ0FSRCBBTEwKICoKICogQHBhcmFtIERpc2NhcmRUeXBlICR0eXBlIFR5cGUgb2YgcmVzb3VyY2VzIHRvIGRpc2NhcmQgKEFMTCwgUExBTlMsIFNFUVVFTkNFUywgVEVNUCkKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2664,"slug":"grant","name":"grant","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"privileges","type":[{"name":"TablePrivilege","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Grant","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"GrantOnStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Grant","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIEdSQU5UIHByaXZpbGVnZXMgYnVpbGRlci4KICoKICogRXhhbXBsZTogZ3JhbnQoVGFibGVQcml2aWxlZ2U6OlNFTEVDVCktPm9uVGFibGUoJ3VzZXJzJyktPnRvKCdhcHBfdXNlcicpCiAqIFByb2R1Y2VzOiBHUkFOVCBTRUxFQ1QgT04gdXNlcnMgVE8gYXBwX3VzZXIKICoKICogRXhhbXBsZTogZ3JhbnQoVGFibGVQcml2aWxlZ2U6OkFMTCktPm9uQWxsVGFibGVzSW5TY2hlbWEoJ3B1YmxpYycpLT50bygnYWRtaW4nKQogKiBQcm9kdWNlczogR1JBTlQgQUxMIE9OIEFMTCBUQUJMRVMgSU4gU0NIRU1BIHB1YmxpYyBUTyBhZG1pbgogKgogKiBAcGFyYW0gc3RyaW5nfFRhYmxlUHJpdmlsZWdlIC4uLiRwcml2aWxlZ2VzIFRoZSBwcml2aWxlZ2VzIHRvIGdyYW50CiAqCiAqIEByZXR1cm4gR3JhbnRPblN0ZXAgQnVpbGRlciBmb3IgZ3JhbnQgb3B0aW9ucwogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2683,"slug":"grant-role","name":"grant_role","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"roles","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"GrantRoleToStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Grant","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIEdSQU5UIHJvbGUgYnVpbGRlci4KICoKICogRXhhbXBsZTogZ3JhbnRfcm9sZSgnYWRtaW4nKS0+dG8oJ3VzZXIxJykKICogUHJvZHVjZXM6IEdSQU5UIGFkbWluIFRPIHVzZXIxCiAqCiAqIEV4YW1wbGU6IGdyYW50X3JvbGUoJ2FkbWluJywgJ2RldmVsb3BlcicpLT50bygndXNlcjEnKS0+d2l0aEFkbWluT3B0aW9uKCkKICogUHJvZHVjZXM6IEdSQU5UIGFkbWluLCBkZXZlbG9wZXIgVE8gdXNlcjEgV0lUSCBBRE1JTiBPUFRJT04KICoKICogQHBhcmFtIHN0cmluZyAuLi4kcm9sZXMgVGhlIHJvbGVzIHRvIGdyYW50CiAqCiAqIEByZXR1cm4gR3JhbnRSb2xlVG9TdGVwIEJ1aWxkZXIgZm9yIGdyYW50IHJvbGUgb3B0aW9ucwogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2702,"slug":"revoke","name":"revoke","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"privileges","type":[{"name":"TablePrivilege","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Grant","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"RevokeOnStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Grant","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFJFVk9LRSBwcml2aWxlZ2VzIGJ1aWxkZXIuCiAqCiAqIEV4YW1wbGU6IHJldm9rZShUYWJsZVByaXZpbGVnZTo6U0VMRUNUKS0+b25UYWJsZSgndXNlcnMnKS0+ZnJvbSgnYXBwX3VzZXInKQogKiBQcm9kdWNlczogUkVWT0tFIFNFTEVDVCBPTiB1c2VycyBGUk9NIGFwcF91c2VyCiAqCiAqIEV4YW1wbGU6IHJldm9rZShUYWJsZVByaXZpbGVnZTo6QUxMKS0+b25UYWJsZSgndXNlcnMnKS0+ZnJvbSgnYXBwX3VzZXInKS0+Y2FzY2FkZSgpCiAqIFByb2R1Y2VzOiBSRVZPS0UgQUxMIE9OIHVzZXJzIEZST00gYXBwX3VzZXIgQ0FTQ0FERQogKgogKiBAcGFyYW0gc3RyaW5nfFRhYmxlUHJpdmlsZWdlIC4uLiRwcml2aWxlZ2VzIFRoZSBwcml2aWxlZ2VzIHRvIHJldm9rZQogKgogKiBAcmV0dXJuIFJldm9rZU9uU3RlcCBCdWlsZGVyIGZvciByZXZva2Ugb3B0aW9ucwogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2721,"slug":"revoke-role","name":"revoke_role","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"roles","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"RevokeRoleFromStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Grant","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFJFVk9LRSByb2xlIGJ1aWxkZXIuCiAqCiAqIEV4YW1wbGU6IHJldm9rZV9yb2xlKCdhZG1pbicpLT5mcm9tKCd1c2VyMScpCiAqIFByb2R1Y2VzOiBSRVZPS0UgYWRtaW4gRlJPTSB1c2VyMQogKgogKiBFeGFtcGxlOiByZXZva2Vfcm9sZSgnYWRtaW4nKS0+ZnJvbSgndXNlcjEnKS0+Y2FzY2FkZSgpCiAqIFByb2R1Y2VzOiBSRVZPS0UgYWRtaW4gRlJPTSB1c2VyMSBDQVNDQURFCiAqCiAqIEBwYXJhbSBzdHJpbmcgLi4uJHJvbGVzIFRoZSByb2xlcyB0byByZXZva2UKICoKICogQHJldHVybiBSZXZva2VSb2xlRnJvbVN0ZXAgQnVpbGRlciBmb3IgcmV2b2tlIHJvbGUgb3B0aW9ucwogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2737,"slug":"set-role","name":"set_role","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"role","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"SetRoleFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Session","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFNFVCBST0xFIGJ1aWxkZXIuCiAqCiAqIEV4YW1wbGU6IHNldF9yb2xlKCdhZG1pbicpCiAqIFByb2R1Y2VzOiBTRVQgUk9MRSBhZG1pbgogKgogKiBAcGFyYW0gc3RyaW5nICRyb2xlIFRoZSByb2xlIHRvIHNldAogKgogKiBAcmV0dXJuIFNldFJvbGVGaW5hbFN0ZXAgQnVpbGRlciBmb3Igc2V0IHJvbGUKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2751,"slug":"reset-role","name":"reset_role","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"ResetRoleFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Session","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFJFU0VUIFJPTEUgYnVpbGRlci4KICoKICogRXhhbXBsZTogcmVzZXRfcm9sZSgpCiAqIFByb2R1Y2VzOiBSRVNFVCBST0xFCiAqCiAqIEByZXR1cm4gUmVzZXRSb2xlRmluYWxTdGVwIEJ1aWxkZXIgZm9yIHJlc2V0IHJvbGUKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2767,"slug":"reassign-owned","name":"reassign_owned","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"roles","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"ReassignOwnedToStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Ownership","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFJFQVNTSUdOIE9XTkVEIGJ1aWxkZXIuCiAqCiAqIEV4YW1wbGU6IHJlYXNzaWduX293bmVkKCdvbGRfcm9sZScpLT50bygnbmV3X3JvbGUnKQogKiBQcm9kdWNlczogUkVBU1NJR04gT1dORUQgQlkgb2xkX3JvbGUgVE8gbmV3X3JvbGUKICoKICogQHBhcmFtIHN0cmluZyAuLi4kcm9sZXMgVGhlIHJvbGVzIHdob3NlIG93bmVkIG9iamVjdHMgc2hvdWxkIGJlIHJlYXNzaWduZWQKICoKICogQHJldHVybiBSZWFzc2lnbk93bmVkVG9TdGVwIEJ1aWxkZXIgZm9yIHJlYXNzaWduIG93bmVkIG9wdGlvbnMKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2786,"slug":"drop-owned","name":"drop_owned","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"roles","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"DropOwnedFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Ownership","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIERST1AgT1dORUQgYnVpbGRlci4KICoKICogRXhhbXBsZTogZHJvcF9vd25lZCgncm9sZTEnKQogKiBQcm9kdWNlczogRFJPUCBPV05FRCBCWSByb2xlMQogKgogKiBFeGFtcGxlOiBkcm9wX293bmVkKCdyb2xlMScsICdyb2xlMicpLT5jYXNjYWRlKCkKICogUHJvZHVjZXM6IERST1AgT1dORUQgQlkgcm9sZTEsIHJvbGUyIENBU0NBREUKICoKICogQHBhcmFtIHN0cmluZyAuLi4kcm9sZXMgVGhlIHJvbGVzIHdob3NlIG93bmVkIG9iamVjdHMgc2hvdWxkIGJlIGRyb3BwZWQKICoKICogQHJldHVybiBEcm9wT3duZWRGaW5hbFN0ZXAgQnVpbGRlciBmb3IgZHJvcCBvd25lZCBvcHRpb25zCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2804,"slug":"func-arg","name":"func_arg","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"type","type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"FunctionArgument","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZXMgYSBuZXcgZnVuY3Rpb24gYXJndW1lbnQgZm9yIHVzZSBpbiBmdW5jdGlvbi9wcm9jZWR1cmUgZGVmaW5pdGlvbnMuCiAqCiAqIEV4YW1wbGU6IGZ1bmNfYXJnKGRhdGFfdHlwZV9pbnRlZ2VyKCkpCiAqIEV4YW1wbGU6IGZ1bmNfYXJnKGRhdGFfdHlwZV90ZXh0KCkpLT5uYW1lZCgndXNlcm5hbWUnKQogKiBFeGFtcGxlOiBmdW5jX2FyZyhkYXRhX3R5cGVfaW50ZWdlcigpKS0+bmFtZWQoJ2NvdW50JyktPmRlZmF1bHQoJzAnKQogKiBFeGFtcGxlOiBmdW5jX2FyZyhkYXRhX3R5cGVfdGV4dCgpKS0+b3V0KCkKICoKICogQHBhcmFtIERhdGFUeXBlICR0eXBlIFRoZSBQb3N0Z3JlU1FMIGRhdGEgdHlwZSBmb3IgdGhlIGFyZ3VtZW50CiAqCiAqIEByZXR1cm4gRnVuY3Rpb25Bcmd1bWVudCBCdWlsZGVyIGZvciBmdW5jdGlvbiBhcmd1bWVudCBvcHRpb25zCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2823,"slug":"call","name":"call","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"procedure","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"CallFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZXMgYSBDQUxMIHN0YXRlbWVudCBidWlsZGVyIGZvciBpbnZva2luZyBhIHByb2NlZHVyZS4KICoKICogRXhhbXBsZTogY2FsbCgndXBkYXRlX3N0YXRzJyktPndpdGgoMTIzKQogKiBQcm9kdWNlczogQ0FMTCB1cGRhdGVfc3RhdHMoMTIzKQogKgogKiBFeGFtcGxlOiBjYWxsKCdwcm9jZXNzX2RhdGEnKS0+d2l0aCgndGVzdCcsIDQyLCB0cnVlKQogKiBQcm9kdWNlczogQ0FMTCBwcm9jZXNzX2RhdGEoJ3Rlc3QnLCA0MiwgdHJ1ZSkKICoKICogQHBhcmFtIHN0cmluZyAkcHJvY2VkdXJlIFRoZSBuYW1lIG9mIHRoZSBwcm9jZWR1cmUgdG8gY2FsbAogKgogKiBAcmV0dXJuIENhbGxGaW5hbFN0ZXAgQnVpbGRlciBmb3IgY2FsbCBzdGF0ZW1lbnQgb3B0aW9ucwogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2842,"slug":"do-block","name":"do_block","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"code","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"DoFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZXMgYSBETyBzdGF0ZW1lbnQgYnVpbGRlciBmb3IgZXhlY3V0aW5nIGFuIGFub255bW91cyBjb2RlIGJsb2NrLgogKgogKiBFeGFtcGxlOiBkb19ibG9jaygnQkVHSU4gUkFJU0UgTk9USUNFICQkSGVsbG8gV29ybGQkJDsgRU5EOycpCiAqIFByb2R1Y2VzOiBETyAkJCBCRUdJTiBSQUlTRSBOT1RJQ0UgJCRIZWxsbyBXb3JsZCQkOyBFTkQ7ICQkIExBTkdVQUdFIHBscGdzcWwKICoKICogRXhhbXBsZTogZG9fYmxvY2soJ1NFTEVDVCAxJyktPmxhbmd1YWdlKCdzcWwnKQogKiBQcm9kdWNlczogRE8gJCQgU0VMRUNUIDEgJCQgTEFOR1VBR0Ugc3FsCiAqCiAqIEBwYXJhbSBzdHJpbmcgJGNvZGUgVGhlIGFub255bW91cyBjb2RlIGJsb2NrIHRvIGV4ZWN1dGUKICoKICogQHJldHVybiBEb0ZpbmFsU3RlcCBCdWlsZGVyIGZvciBETyBzdGF0ZW1lbnQgb3B0aW9ucwogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2862,"slug":"type-attr","name":"type_attr","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"type","type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"TypeAttribute","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Type","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZXMgYSB0eXBlIGF0dHJpYnV0ZSBmb3IgY29tcG9zaXRlIHR5cGVzLgogKgogKiBFeGFtcGxlOiB0eXBlX2F0dHIoJ25hbWUnLCBkYXRhX3R5cGVfdGV4dCgpKQogKiBQcm9kdWNlczogbmFtZSB0ZXh0CiAqCiAqIEV4YW1wbGU6IHR5cGVfYXR0cignZGVzY3JpcHRpb24nLCBkYXRhX3R5cGVfdGV4dCgpKS0+Y29sbGF0ZSgnZW5fVVMnKQogKiBQcm9kdWNlczogZGVzY3JpcHRpb24gdGV4dCBDT0xMQVRFICJlbl9VUyIKICoKICogQHBhcmFtIHN0cmluZyAkbmFtZSBUaGUgYXR0cmlidXRlIG5hbWUKICogQHBhcmFtIERhdGFUeXBlICR0eXBlIFRoZSBhdHRyaWJ1dGUgdHlwZQogKgogKiBAcmV0dXJuIFR5cGVBdHRyaWJ1dGUgVHlwZSBhdHRyaWJ1dGUgdmFsdWUgb2JqZWN0CiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2879,"slug":"pgsql-connection","name":"pgsql_connection","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"connectionString","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ConnectionParameters","namespace":"Flow\\PostgreSql\\Client","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBjb25uZWN0aW9uIHBhcmFtZXRlcnMgZnJvbSBhIGNvbm5lY3Rpb24gc3RyaW5nLgogKgogKiBBY2NlcHRzIGxpYnBxLXN0eWxlIGNvbm5lY3Rpb24gc3RyaW5nczoKICogLSBLZXktdmFsdWUgZm9ybWF0OiAiaG9zdD1sb2NhbGhvc3QgcG9ydD01NDMyIGRibmFtZT1teWRiIHVzZXI9bXl1c2VyIHBhc3N3b3JkPXNlY3JldCIKICogLSBVUkkgZm9ybWF0OiAicG9zdGdyZXNxbDovL3VzZXI6cGFzc3dvcmRAbG9jYWxob3N0OjU0MzIvZGJuYW1lIgogKgogKiBAZXhhbXBsZQogKiAkcGFyYW1zID0gcGdzcWxfY29ubmVjdGlvbignaG9zdD1sb2NhbGhvc3QgZGJuYW1lPW15ZGInKTsKICogJHBhcmFtcyA9IHBnc3FsX2Nvbm5lY3Rpb24oJ3Bvc3RncmVzcWw6Ly91c2VyOnBhc3NAbG9jYWxob3N0L215ZGInKTsKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2901,"slug":"pgsql-connection-dsn","name":"pgsql_connection_dsn","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"dsn","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ConnectionParameters","namespace":"Flow\\PostgreSql\\Client","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBjb25uZWN0aW9uIHBhcmFtZXRlcnMgZnJvbSBhIERTTiBzdHJpbmcuCiAqCiAqIFBhcnNlcyBzdGFuZGFyZCBQb3N0Z3JlU1FMIERTTiBmb3JtYXQgY29tbW9ubHkgdXNlZCBpbiBlbnZpcm9ubWVudCB2YXJpYWJsZXMKICogKGUuZy4sIERBVEFCQVNFX1VSTCkuIFN1cHBvcnRzIHBvc3RncmVzOi8vLCBwb3N0Z3Jlc3FsOi8vLCBhbmQgcGdzcWw6Ly8gc2NoZW1lcy4KICoKICogQHBhcmFtIHN0cmluZyAkZHNuIERTTiBzdHJpbmcgaW4gZm9ybWF0OiBwb3N0Z3JlczovL3VzZXI6cGFzc3dvcmRAaG9zdDpwb3J0L2RhdGFiYXNlP29wdGlvbnMKICoKICogQHRocm93cyBDbGllbnRcRHNuUGFyc2VyRXhjZXB0aW9uIElmIHRoZSBEU04gY2Fubm90IGJlIHBhcnNlZAogKgogKiBAZXhhbXBsZQogKiAkcGFyYW1zID0gcGdzcWxfY29ubmVjdGlvbl9kc24oJ3Bvc3RncmVzOi8vbXl1c2VyOnNlY3JldEBsb2NhbGhvc3Q6NTQzMi9teWRiJyk7CiAqICRwYXJhbXMgPSBwZ3NxbF9jb25uZWN0aW9uX2RzbigncG9zdGdyZXNxbDovL3VzZXI6cGFzc0BkYi5leGFtcGxlLmNvbS9hcHA\/c3NsbW9kZT1yZXF1aXJlJyk7CiAqICRwYXJhbXMgPSBwZ3NxbF9jb25uZWN0aW9uX2RzbigncGdzcWw6Ly91c2VyOnBhc3NAbG9jYWxob3N0L215ZGInKTsgLy8gU3ltZm9ueS9Eb2N0cmluZSBmb3JtYXQKICogJHBhcmFtcyA9IHBnc3FsX2Nvbm5lY3Rpb25fZHNuKGdldGVudignREFUQUJBU0VfVVJMJykpOwogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2928,"slug":"pgsql-connection-params","name":"pgsql_connection_params","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"database","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"host","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'localhost'"},{"name":"port","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"5432"},{"name":"user","type":[{"name":"string","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"password","type":[{"name":"string","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"options","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"ConnectionParameters","namespace":"Flow\\PostgreSql\\Client","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBjb25uZWN0aW9uIHBhcmFtZXRlcnMgZnJvbSBpbmRpdmlkdWFsIHZhbHVlcy4KICoKICogQWxsb3dzIHNwZWNpZnlpbmcgY29ubmVjdGlvbiBwYXJhbWV0ZXJzIGluZGl2aWR1YWxseSBmb3IgYmV0dGVyIHR5cGUgc2FmZXR5CiAqIGFuZCBJREUgc3VwcG9ydC4KICoKICogQHBhcmFtIHN0cmluZyAkZGF0YWJhc2UgRGF0YWJhc2UgbmFtZSAocmVxdWlyZWQpCiAqIEBwYXJhbSBzdHJpbmcgJGhvc3QgSG9zdG5hbWUgKGRlZmF1bHQ6IGxvY2FsaG9zdCkKICogQHBhcmFtIGludCAkcG9ydCBQb3J0IG51bWJlciAoZGVmYXVsdDogNTQzMikKICogQHBhcmFtIG51bGx8c3RyaW5nICR1c2VyIFVzZXJuYW1lIChvcHRpb25hbCkKICogQHBhcmFtIG51bGx8c3RyaW5nICRwYXNzd29yZCBQYXNzd29yZCAob3B0aW9uYWwpCiAqIEBwYXJhbSBhcnJheTxzdHJpbmcsIHN0cmluZz4gJG9wdGlvbnMgQWRkaXRpb25hbCBsaWJwcSBvcHRpb25zCiAqCiAqIEBleGFtcGxlCiAqICRwYXJhbXMgPSBwZ3NxbF9jb25uZWN0aW9uX3BhcmFtcygKICogICAgIGRhdGFiYXNlOiAnbXlkYicsCiAqICAgICBob3N0OiAnbG9jYWxob3N0JywKICogICAgIHVzZXI6ICdteXVzZXInLAogKiAgICAgcGFzc3dvcmQ6ICdzZWNyZXQnLAogKiApOwogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2969,"slug":"pgsql-client","name":"pgsql_client","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"params","type":[{"name":"ConnectionParameters","namespace":"Flow\\PostgreSql\\Client","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"valueConverters","type":[{"name":"ValueConverters","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"mapper","type":[{"name":"RowMapper","namespace":"Flow\\PostgreSql\\Client","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Client","namespace":"Flow\\PostgreSql\\Client","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFBvc3RncmVTUUwgY2xpZW50IHVzaW5nIGV4dC1wZ3NxbC4KICoKICogVGhlIGNsaWVudCBjb25uZWN0cyBpbW1lZGlhdGVseSBhbmQgaXMgcmVhZHkgdG8gZXhlY3V0ZSBxdWVyaWVzLgogKiBGb3Igb2JqZWN0IG1hcHBpbmcsIHByb3ZpZGUgYSBSb3dNYXBwZXIgKHVzZSBwZ3NxbF9tYXBwZXIoKSBmb3IgdGhlIGRlZmF1bHQpLgogKgogKiBAcGFyYW0gQ2xpZW50XENvbm5lY3Rpb25QYXJhbWV0ZXJzICRwYXJhbXMgQ29ubmVjdGlvbiBwYXJhbWV0ZXJzCiAqIEBwYXJhbSBudWxsfFZhbHVlQ29udmVydGVycyAkdmFsdWVDb252ZXJ0ZXJzIEN1c3RvbSB0eXBlIGNvbnZlcnRlcnMgKG9wdGlvbmFsKQogKiBAcGFyYW0gbnVsbHxDbGllbnRcUm93TWFwcGVyICRtYXBwZXIgUm93IG1hcHBlciBmb3Igb2JqZWN0IGh5ZHJhdGlvbiAob3B0aW9uYWwpCiAqCiAqIEB0aHJvd3MgQ29ubmVjdGlvbkV4Y2VwdGlvbiBJZiBjb25uZWN0aW9uIGZhaWxzCiAqCiAqIEBleGFtcGxlCiAqIC8vIEJhc2ljIGNsaWVudAogKiAkY2xpZW50ID0gcGdzcWxfY2xpZW50KHBnc3FsX2Nvbm5lY3Rpb24oJ2hvc3Q9bG9jYWxob3N0IGRibmFtZT1teWRiJykpOwogKgogKiAvLyBXaXRoIG9iamVjdCBtYXBwaW5nCiAqICRjbGllbnQgPSBwZ3NxbF9jbGllbnQoCiAqICAgICBwZ3NxbF9jb25uZWN0aW9uKCdob3N0PWxvY2FsaG9zdCBkYm5hbWU9bXlkYicpLAogKiAgICAgbWFwcGVyOiBwZ3NxbF9tYXBwZXIoKSwKICogKTsKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3005,"slug":"postgresql-telemetry-options","name":"postgresql_telemetry_options","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"traceQueries","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"true"},{"name":"traceTransactions","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"true"},{"name":"collectMetrics","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"true"},{"name":"logQueries","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"maxQueryLength","type":[{"name":"int","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"1000"},{"name":"includeParameters","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"maxParameters","type":[{"name":"int","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"10"},{"name":"maxParameterLength","type":[{"name":"int","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"100"}],"return_type":[{"name":"PostgreSqlTelemetryOptions","namespace":"Flow\\PostgreSql\\Client\\Telemetry","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSB0ZWxlbWV0cnkgb3B0aW9ucyBmb3IgUG9zdGdyZVNRTCBjbGllbnQgaW5zdHJ1bWVudGF0aW9uLgogKgogKiBDb250cm9scyB3aGljaCB0ZWxlbWV0cnkgc2lnbmFscyAodHJhY2VzLCBtZXRyaWNzLCBsb2dzKSBhcmUgZW5hYmxlZAogKiBhbmQgaG93IHF1ZXJ5IGluZm9ybWF0aW9uIGlzIGNhcHR1cmVkLgogKgogKiBAcGFyYW0gYm9vbCAkdHJhY2VRdWVyaWVzIENyZWF0ZSBzcGFucyBmb3IgcXVlcnkgZXhlY3V0aW9uIChkZWZhdWx0OiB0cnVlKQogKiBAcGFyYW0gYm9vbCAkdHJhY2VUcmFuc2FjdGlvbnMgQ3JlYXRlIHNwYW5zIGZvciB0cmFuc2FjdGlvbnMgKGRlZmF1bHQ6IHRydWUpCiAqIEBwYXJhbSBib29sICRjb2xsZWN0TWV0cmljcyBDb2xsZWN0IGR1cmF0aW9uIGFuZCByb3cgY291bnQgbWV0cmljcyAoZGVmYXVsdDogdHJ1ZSkKICogQHBhcmFtIGJvb2wgJGxvZ1F1ZXJpZXMgTG9nIGV4ZWN1dGVkIHF1ZXJpZXMgKGRlZmF1bHQ6IGZhbHNlKQogKiBAcGFyYW0gbnVsbHxpbnQgJG1heFF1ZXJ5TGVuZ3RoIE1heGltdW0gcXVlcnkgdGV4dCBsZW5ndGggaW4gdGVsZW1ldHJ5IChkZWZhdWx0OiAxMDAwLCBudWxsID0gdW5saW1pdGVkKQogKiBAcGFyYW0gYm9vbCAkaW5jbHVkZVBhcmFtZXRlcnMgSW5jbHVkZSBxdWVyeSBwYXJhbWV0ZXJzIGluIHRlbGVtZXRyeSAoZGVmYXVsdDogZmFsc2UsIHNlY3VyaXR5IGNvbnNpZGVyYXRpb24pCiAqCiAqIEBleGFtcGxlCiAqIC8vIERlZmF1bHQgb3B0aW9ucyAodHJhY2VzIGFuZCBtZXRyaWNzIGVuYWJsZWQpCiAqICRvcHRpb25zID0gcG9zdGdyZXNxbF90ZWxlbWV0cnlfb3B0aW9ucygpOwogKgogKiAvLyBFbmFibGUgcXVlcnkgbG9nZ2luZwogKiAkb3B0aW9ucyA9IHBvc3RncmVzcWxfdGVsZW1ldHJ5X29wdGlvbnMobG9nUXVlcmllczogdHJ1ZSk7CiAqCiAqIC8vIERpc2FibGUgYWxsIGJ1dCBtZXRyaWNzCiAqICRvcHRpb25zID0gcG9zdGdyZXNxbF90ZWxlbWV0cnlfb3B0aW9ucygKICogICAgIHRyYWNlUXVlcmllczogZmFsc2UsCiAqICAgICB0cmFjZVRyYW5zYWN0aW9uczogZmFsc2UsCiAqICAgICBjb2xsZWN0TWV0cmljczogdHJ1ZSwKICogKTsKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3043,"slug":"postgresql-telemetry-config","name":"postgresql_telemetry_config","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"telemetry","type":[{"name":"Telemetry","namespace":"Flow\\Telemetry","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"clock","type":[{"name":"ClockInterface","namespace":"Psr\\Clock","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"options","type":[{"name":"PostgreSqlTelemetryOptions","namespace":"Flow\\PostgreSql\\Client\\Telemetry","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"PostgreSqlTelemetryConfig","namespace":"Flow\\PostgreSql\\Client\\Telemetry","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSB0ZWxlbWV0cnkgY29uZmlndXJhdGlvbiBmb3IgUG9zdGdyZVNRTCBjbGllbnQuCiAqCiAqIEJ1bmRsZXMgdGVsZW1ldHJ5IGluc3RhbmNlLCBjbG9jaywgYW5kIG9wdGlvbnMgbmVlZGVkIHRvIGluc3RydW1lbnQgYSBQb3N0Z3JlU1FMIGNsaWVudC4KICoKICogQHBhcmFtIFRlbGVtZXRyeSAkdGVsZW1ldHJ5IFRoZSB0ZWxlbWV0cnkgaW5zdGFuY2UKICogQHBhcmFtIENsb2NrSW50ZXJmYWNlICRjbG9jayBDbG9jayBmb3IgdGltZXN0YW1wcwogKiBAcGFyYW0gbnVsbHxQb3N0Z3JlU3FsVGVsZW1ldHJ5T3B0aW9ucyAkb3B0aW9ucyBUZWxlbWV0cnkgb3B0aW9ucyAoZGVmYXVsdDogYWxsIGVuYWJsZWQpCiAqCiAqIEBleGFtcGxlCiAqICRjb25maWcgPSBwb3N0Z3Jlc3FsX3RlbGVtZXRyeV9jb25maWcoCiAqICAgICB0ZWxlbWV0cnkocmVzb3VyY2UoWydzZXJ2aWNlLm5hbWUnID0+ICdteS1hcHAnXSkpLAogKiAgICAgbmV3IFN5c3RlbUNsb2NrKCksCiAqICk7CiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3089,"slug":"traceable-postgresql-client","name":"traceable_postgresql_client","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"client","type":[{"name":"Client","namespace":"Flow\\PostgreSql\\Client","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"telemetryConfig","type":[{"name":"PostgreSqlTelemetryConfig","namespace":"Flow\\PostgreSql\\Client\\Telemetry","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"TraceableClient","namespace":"Flow\\PostgreSql\\Client\\Telemetry","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIFdyYXAgYSBQb3N0Z3JlU1FMIGNsaWVudCB3aXRoIHRlbGVtZXRyeSBpbnN0cnVtZW50YXRpb24uCiAqCiAqIFJldHVybnMgYSBkZWNvcmF0b3IgdGhhdCBhZGRzIHNwYW5zLCBtZXRyaWNzLCBhbmQgbG9ncyB0byBhbGwKICogcXVlcnkgYW5kIHRyYW5zYWN0aW9uIG9wZXJhdGlvbnMgZm9sbG93aW5nIE9wZW5UZWxlbWV0cnkgY29udmVudGlvbnMuCiAqCiAqIEBwYXJhbSBDbGllbnRcQ2xpZW50ICRjbGllbnQgVGhlIFBvc3RncmVTUUwgY2xpZW50IHRvIGluc3RydW1lbnQKICogQHBhcmFtIFBvc3RncmVTcWxUZWxlbWV0cnlDb25maWcgJHRlbGVtZXRyeUNvbmZpZyBUZWxlbWV0cnkgY29uZmlndXJhdGlvbgogKgogKiBAZXhhbXBsZQogKiAkY2xpZW50ID0gcGdzcWxfY2xpZW50KHBnc3FsX2Nvbm5lY3Rpb24oJ2hvc3Q9bG9jYWxob3N0IGRibmFtZT1teWRiJykpOwogKgogKiAkdHJhY2VhYmxlQ2xpZW50ID0gdHJhY2VhYmxlX3Bvc3RncmVzcWxfY2xpZW50KAogKiAgICAgJGNsaWVudCwKICogICAgIHBvc3RncmVzcWxfdGVsZW1ldHJ5X2NvbmZpZygKICogICAgICAgICB0ZWxlbWV0cnkocmVzb3VyY2UoWydzZXJ2aWNlLm5hbWUnID0+ICdteS1hcHAnXSkpLAogKiAgICAgICAgIG5ldyBTeXN0ZW1DbG9jaygpLAogKiAgICAgICAgIHBvc3RncmVzcWxfdGVsZW1ldHJ5X29wdGlvbnMoCiAqICAgICAgICAgICAgIHRyYWNlUXVlcmllczogdHJ1ZSwKICogICAgICAgICAgICAgdHJhY2VUcmFuc2FjdGlvbnM6IHRydWUsCiAqICAgICAgICAgICAgIGNvbGxlY3RNZXRyaWNzOiB0cnVlLAogKiAgICAgICAgICAgICBsb2dRdWVyaWVzOiB0cnVlLAogKiAgICAgICAgICAgICBtYXhRdWVyeUxlbmd0aDogNTAwLAogKiAgICAgICAgICksCiAqICAgICApLAogKiApOwogKgogKiAvLyBBbGwgb3BlcmF0aW9ucyBub3cgdHJhY2VkCiAqICR0cmFjZWFibGVDbGllbnQtPnRyYW5zYWN0aW9uKGZ1bmN0aW9uIChDbGllbnQgJGNsaWVudCkgewogKiAgICAgJHVzZXIgPSAkY2xpZW50LT5mZXRjaE9uZSgnU0VMRUNUICogRlJPTSB1c2VycyBXSEVSRSBpZCA9ICQxJywgWzEyM10pOwogKiAgICAgJGNsaWVudC0+ZXhlY3V0ZSgnVVBEQVRFIHVzZXJzIFNFVCBsYXN0X2xvZ2luID0gTk9XKCkgV0hFUkUgaWQgPSAkMScsIFsxMjNdKTsKICogfSk7CiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3124,"slug":"pgsql-mapper","name":"pgsql_mapper","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"ConstructorMapper","namespace":"Flow\\PostgreSql\\Client\\RowMapper","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGRlZmF1bHQgY29uc3RydWN0b3ItYmFzZWQgcm93IG1hcHBlci4KICoKICogTWFwcyBkYXRhYmFzZSByb3dzIGRpcmVjdGx5IHRvIGNvbnN0cnVjdG9yIHBhcmFtZXRlcnMuCiAqIENvbHVtbiBuYW1lcyBtdXN0IG1hdGNoIHBhcmFtZXRlciBuYW1lcyBleGFjdGx5ICgxOjEpLgogKiBVc2UgU1FMIGFsaWFzZXMgaWYgY29sdW1uIG5hbWVzIGRpZmZlciBmcm9tIHBhcmFtZXRlciBuYW1lcy4KICoKICogQGV4YW1wbGUKICogLy8gRFRPIHdoZXJlIGNvbHVtbiBuYW1lcyBtYXRjaCBwYXJhbWV0ZXIgbmFtZXMKICogcmVhZG9ubHkgY2xhc3MgVXNlciB7CiAqICAgICBwdWJsaWMgZnVuY3Rpb24gX19jb25zdHJ1Y3QoCiAqICAgICAgICAgcHVibGljIGludCAkaWQsCiAqICAgICAgICAgcHVibGljIHN0cmluZyAkbmFtZSwKICogICAgICAgICBwdWJsaWMgc3RyaW5nICRlbWFpbCwKICogICAgICkge30KICogfQogKgogKiAvLyBVc2FnZQogKiAkY2xpZW50ID0gcGdzcWxfY2xpZW50KHBnc3FsX2Nvbm5lY3Rpb24oJy4uLicpLCBtYXBwZXI6IHBnc3FsX21hcHBlcigpKTsKICoKICogLy8gRm9yIHNuYWtlX2Nhc2UgY29sdW1ucywgdXNlIFNRTCBhbGlhc2VzCiAqICR1c2VyID0gJGNsaWVudC0+ZmV0Y2hJbnRvKAogKiAgICAgVXNlcjo6Y2xhc3MsCiAqICAgICAnU0VMRUNUIGlkLCB1c2VyX25hbWUgQVMgbmFtZSwgdXNlcl9lbWFpbCBBUyBlbWFpbCBGUk9NIHVzZXJzIFdIRVJFIGlkID0gJDEnLAogKiAgICAgWzFdCiAqICk7CiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3153,"slug":"typed","name":"typed","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"value","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"targetType","type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"TypedValue","namespace":"Flow\\PostgreSql\\Client","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIFdyYXAgYSB2YWx1ZSB3aXRoIGV4cGxpY2l0IFBvc3RncmVTUUwgdHlwZSBpbmZvcm1hdGlvbiBmb3IgcGFyYW1ldGVyIGJpbmRpbmcuCiAqCiAqIFVzZSB3aGVuIGF1dG8tZGV0ZWN0aW9uIGlzbid0IHN1ZmZpY2llbnQgb3Igd2hlbiB5b3UgbmVlZCB0byBzcGVjaWZ5CiAqIHRoZSBleGFjdCBQb3N0Z3JlU1FMIHR5cGUgKHNpbmNlIG9uZSBQSFAgdHlwZSBjYW4gbWFwIHRvIG11bHRpcGxlIFBvc3RncmVTUUwgdHlwZXMpOgogKiAtIGludCBjb3VsZCBiZSBJTlQyLCBJTlQ0LCBvciBJTlQ4CiAqIC0gc3RyaW5nIGNvdWxkIGJlIFRFWFQsIFZBUkNIQVIsIG9yIENIQVIKICogLSBhcnJheSBtdXN0IGFsd2F5cyB1c2UgdHlwZWQoKSBzaW5jZSBhdXRvLWRldGVjdGlvbiBjYW5ub3QgZGV0ZXJtaW5lIGVsZW1lbnQgdHlwZQogKiAtIERhdGVUaW1lSW50ZXJmYWNlIGNvdWxkIGJlIFRJTUVTVEFNUCBvciBUSU1FU1RBTVBUWgogKiAtIEpzb24gY291bGQgYmUgSlNPTiBvciBKU09OQgogKgogKiBAcGFyYW0gbWl4ZWQgJHZhbHVlIFRoZSB2YWx1ZSB0byBiaW5kCiAqIEBwYXJhbSBQb3N0Z3JlU3FsVHlwZSAkdGFyZ2V0VHlwZSBUaGUgUG9zdGdyZVNRTCB0eXBlIHRvIGNvbnZlcnQgdGhlIHZhbHVlIHRvCiAqCiAqIEBleGFtcGxlCiAqICRjbGllbnQtPmZldGNoKAogKiAgICAgJ1NFTEVDVCAqIEZST00gdXNlcnMgV0hFUkUgaWQgPSAkMSBBTkQgdGFncyA9ICQyJywKICogICAgIFsKICogICAgICAgICB0eXBlZCgnNTUwZTg0MDAtZTI5Yi00MWQ0LWE3MTYtNDQ2NjU1NDQwMDAwJywgUG9zdGdyZVNxbFR5cGU6OlVVSUQpLAogKiAgICAgICAgIHR5cGVkKFsndGFnMScsICd0YWcyJ10sIFBvc3RncmVTcWxUeXBlOjpURVhUX0FSUkFZKSwKICogICAgIF0KICogKTsKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3161,"slug":"pgsql-type-text","name":"pgsql_type_text","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3167,"slug":"pgsql-type-varchar","name":"pgsql_type_varchar","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3173,"slug":"pgsql-type-char","name":"pgsql_type_char","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3179,"slug":"pgsql-type-bpchar","name":"pgsql_type_bpchar","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3185,"slug":"pgsql-type-int2","name":"pgsql_type_int2","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3191,"slug":"pgsql-type-smallint","name":"pgsql_type_smallint","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3197,"slug":"pgsql-type-int4","name":"pgsql_type_int4","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3203,"slug":"pgsql-type-integer","name":"pgsql_type_integer","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3209,"slug":"pgsql-type-int8","name":"pgsql_type_int8","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3215,"slug":"pgsql-type-bigint","name":"pgsql_type_bigint","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3221,"slug":"pgsql-type-float4","name":"pgsql_type_float4","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3227,"slug":"pgsql-type-real","name":"pgsql_type_real","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3233,"slug":"pgsql-type-float8","name":"pgsql_type_float8","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3239,"slug":"pgsql-type-double","name":"pgsql_type_double","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3245,"slug":"pgsql-type-numeric","name":"pgsql_type_numeric","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3251,"slug":"pgsql-type-money","name":"pgsql_type_money","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3257,"slug":"pgsql-type-bool","name":"pgsql_type_bool","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3263,"slug":"pgsql-type-boolean","name":"pgsql_type_boolean","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3269,"slug":"pgsql-type-bytea","name":"pgsql_type_bytea","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3275,"slug":"pgsql-type-bit","name":"pgsql_type_bit","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3281,"slug":"pgsql-type-varbit","name":"pgsql_type_varbit","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3287,"slug":"pgsql-type-date","name":"pgsql_type_date","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3293,"slug":"pgsql-type-time","name":"pgsql_type_time","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3299,"slug":"pgsql-type-timetz","name":"pgsql_type_timetz","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3305,"slug":"pgsql-type-timestamp","name":"pgsql_type_timestamp","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3311,"slug":"pgsql-type-timestamptz","name":"pgsql_type_timestamptz","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3317,"slug":"pgsql-type-interval","name":"pgsql_type_interval","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3323,"slug":"pgsql-type-json","name":"pgsql_type_json","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3329,"slug":"pgsql-type-jsonb","name":"pgsql_type_jsonb","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3335,"slug":"pgsql-type-uuid","name":"pgsql_type_uuid","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3341,"slug":"pgsql-type-inet","name":"pgsql_type_inet","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3347,"slug":"pgsql-type-cidr","name":"pgsql_type_cidr","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3353,"slug":"pgsql-type-macaddr","name":"pgsql_type_macaddr","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3359,"slug":"pgsql-type-macaddr8","name":"pgsql_type_macaddr8","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3365,"slug":"pgsql-type-xml","name":"pgsql_type_xml","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3371,"slug":"pgsql-type-oid","name":"pgsql_type_oid","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3377,"slug":"pgsql-type-text-array","name":"pgsql_type_text_array","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3383,"slug":"pgsql-type-varchar-array","name":"pgsql_type_varchar_array","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3389,"slug":"pgsql-type-int2-array","name":"pgsql_type_int2_array","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3395,"slug":"pgsql-type-int4-array","name":"pgsql_type_int4_array","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3401,"slug":"pgsql-type-int8-array","name":"pgsql_type_int8_array","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3407,"slug":"pgsql-type-float4-array","name":"pgsql_type_float4_array","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3413,"slug":"pgsql-type-float8-array","name":"pgsql_type_float8_array","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3419,"slug":"pgsql-type-bool-array","name":"pgsql_type_bool_array","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3425,"slug":"pgsql-type-uuid-array","name":"pgsql_type_uuid_array","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3431,"slug":"pgsql-type-json-array","name":"pgsql_type_json_array","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3437,"slug":"pgsql-type-jsonb-array","name":"pgsql_type_jsonb_array","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":39,"slug":"trace-id","name":"trace_id","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"hex","type":[{"name":"string","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"TraceId","namespace":"Flow\\Telemetry\\Context","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFRyYWNlSWQuCiAqCiAqIElmIGEgaGV4IHN0cmluZyBpcyBwcm92aWRlZCwgY3JlYXRlcyBhIFRyYWNlSWQgZnJvbSBpdC4KICogT3RoZXJ3aXNlLCBnZW5lcmF0ZXMgYSBuZXcgcmFuZG9tIFRyYWNlSWQuCiAqCiAqIEBwYXJhbSBudWxsfHN0cmluZyAkaGV4IE9wdGlvbmFsIDMyLWNoYXJhY3RlciBoZXhhZGVjaW1hbCBzdHJpbmcKICoKICogQHRocm93cyBcSW52YWxpZEFyZ3VtZW50RXhjZXB0aW9uIGlmIHRoZSBoZXggc3RyaW5nIGlzIGludmFsaWQKICov"},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":59,"slug":"span-id","name":"span_id","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"hex","type":[{"name":"string","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"SpanId","namespace":"Flow\\Telemetry\\Context","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFNwYW5JZC4KICoKICogSWYgYSBoZXggc3RyaW5nIGlzIHByb3ZpZGVkLCBjcmVhdGVzIGEgU3BhbklkIGZyb20gaXQuCiAqIE90aGVyd2lzZSwgZ2VuZXJhdGVzIGEgbmV3IHJhbmRvbSBTcGFuSWQuCiAqCiAqIEBwYXJhbSBudWxsfHN0cmluZyAkaGV4IE9wdGlvbmFsIDE2LWNoYXJhY3RlciBoZXhhZGVjaW1hbCBzdHJpbmcKICoKICogQHRocm93cyBcSW52YWxpZEFyZ3VtZW50RXhjZXB0aW9uIGlmIHRoZSBoZXggc3RyaW5nIGlzIGludmFsaWQKICov"},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":74,"slug":"baggage","name":"baggage","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"entries","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"Baggage","namespace":"Flow\\Telemetry\\Context","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIEJhZ2dhZ2UuCiAqCiAqIEBwYXJhbSBhcnJheTxzdHJpbmcsIHN0cmluZz4gJGVudHJpZXMgSW5pdGlhbCBrZXktdmFsdWUgZW50cmllcwogKi8="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":89,"slug":"context","name":"context","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"traceId","type":[{"name":"TraceId","namespace":"Flow\\Telemetry\\Context","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"baggage","type":[{"name":"Baggage","namespace":"Flow\\Telemetry\\Context","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Context","namespace":"Flow\\Telemetry\\Context","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIENvbnRleHQuCiAqCiAqIElmIG5vIFRyYWNlSWQgaXMgcHJvdmlkZWQsIGdlbmVyYXRlcyBhIG5ldyBvbmUuCiAqIElmIG5vIEJhZ2dhZ2UgaXMgcHJvdmlkZWQsIGNyZWF0ZXMgYW4gZW1wdHkgb25lLgogKgogKiBAcGFyYW0gbnVsbHxUcmFjZUlkICR0cmFjZUlkIE9wdGlvbmFsIFRyYWNlSWQgdG8gdXNlCiAqIEBwYXJhbSBudWxsfEJhZ2dhZ2UgJGJhZ2dhZ2UgT3B0aW9uYWwgQmFnZ2FnZSB0byB1c2UKICov"},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":106,"slug":"memory-context-storage","name":"memory_context_storage","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"context","type":[{"name":"Context","namespace":"Flow\\Telemetry\\Context","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"MemoryContextStorage","namespace":"Flow\\Telemetry\\Context","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIE1lbW9yeUNvbnRleHRTdG9yYWdlLgogKgogKiBJbi1tZW1vcnkgY29udGV4dCBzdG9yYWdlIGZvciBzdG9yaW5nIGFuZCByZXRyaWV2aW5nIHRoZSBjdXJyZW50IGNvbnRleHQuCiAqIEEgc2luZ2xlIGluc3RhbmNlIHNob3VsZCBiZSBzaGFyZWQgYWNyb3NzIGFsbCBwcm92aWRlcnMgd2l0aGluIGEgcmVxdWVzdCBsaWZlY3ljbGUuCiAqCiAqIEBwYXJhbSBudWxsfENvbnRleHQgJGNvbnRleHQgT3B0aW9uYWwgaW5pdGlhbCBjb250ZXh0CiAqLw=="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":117,"slug":"resource","name":"resource","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"attributes","type":[{"name":"Attributes","namespace":"Flow\\Telemetry","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"Resource","namespace":"Flow\\Telemetry","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFJlc291cmNlLgogKgogKiBAcGFyYW0gYXJyYXk8c3RyaW5nLCBhcnJheTxib29sfGZsb2F0fGludHxzdHJpbmc+fGJvb2x8ZmxvYXR8aW50fHN0cmluZz58QXR0cmlidXRlcyAkYXR0cmlidXRlcyBSZXNvdXJjZSBhdHRyaWJ1dGVzCiAqLw=="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":130,"slug":"span-context","name":"span_context","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"traceId","type":[{"name":"TraceId","namespace":"Flow\\Telemetry\\Context","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"spanId","type":[{"name":"SpanId","namespace":"Flow\\Telemetry\\Context","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"parentSpanId","type":[{"name":"SpanId","namespace":"Flow\\Telemetry\\Context","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"SpanContext","namespace":"Flow\\Telemetry\\Tracer","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFNwYW5Db250ZXh0LgogKgogKiBAcGFyYW0gVHJhY2VJZCAkdHJhY2VJZCBUaGUgdHJhY2UgSUQKICogQHBhcmFtIFNwYW5JZCAkc3BhbklkIFRoZSBzcGFuIElECiAqIEBwYXJhbSBudWxsfFNwYW5JZCAkcGFyZW50U3BhbklkIE9wdGlvbmFsIHBhcmVudCBzcGFuIElECiAqLw=="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":143,"slug":"span-event","name":"span_event","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"timestamp","type":[{"name":"DateTimeImmutable","namespace":"","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"attributes","type":[{"name":"Attributes","namespace":"Flow\\Telemetry","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"GenericEvent","namespace":"Flow\\Telemetry\\Tracer","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFNwYW5FdmVudCAoR2VuZXJpY0V2ZW50KSB3aXRoIGFuIGV4cGxpY2l0IHRpbWVzdGFtcC4KICoKICogQHBhcmFtIHN0cmluZyAkbmFtZSBFdmVudCBuYW1lCiAqIEBwYXJhbSBcRGF0ZVRpbWVJbW11dGFibGUgJHRpbWVzdGFtcCBFdmVudCB0aW1lc3RhbXAKICogQHBhcmFtIGFycmF5PHN0cmluZywgYXJyYXk8Ym9vbHxmbG9hdHxpbnR8c3RyaW5nPnxib29sfGZsb2F0fGludHxzdHJpbmc+fEF0dHJpYnV0ZXMgJGF0dHJpYnV0ZXMgRXZlbnQgYXR0cmlidXRlcwogKi8="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":155,"slug":"span-link","name":"span_link","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"context","type":[{"name":"SpanContext","namespace":"Flow\\Telemetry\\Tracer","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"attributes","type":[{"name":"Attributes","namespace":"Flow\\Telemetry","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"SpanLink","namespace":"Flow\\Telemetry\\Tracer","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFNwYW5MaW5rLgogKgogKiBAcGFyYW0gU3BhbkNvbnRleHQgJGNvbnRleHQgVGhlIGxpbmtlZCBzcGFuIGNvbnRleHQKICogQHBhcmFtIGFycmF5PHN0cmluZywgYXJyYXk8Ym9vbHxmbG9hdHxpbnR8c3RyaW5nPnxib29sfGZsb2F0fGludHxzdHJpbmc+fEF0dHJpYnV0ZXMgJGF0dHJpYnV0ZXMgTGluayBhdHRyaWJ1dGVzCiAqLw=="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":174,"slug":"span-limits","name":"span_limits","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"attributeCountLimit","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"128"},{"name":"eventCountLimit","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"128"},{"name":"linkCountLimit","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"128"},{"name":"attributePerEventCountLimit","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"128"},{"name":"attributePerLinkCountLimit","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"128"},{"name":"attributeValueLengthLimit","type":[{"name":"int","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"SpanLimits","namespace":"Flow\\Telemetry\\Tracer","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBTcGFuTGltaXRzIGNvbmZpZ3VyYXRpb24uCiAqCiAqIFNwYW5MaW1pdHMgY29udHJvbHMgdGhlIG1heGltdW0gYW1vdW50IG9mIGRhdGEgYSBzcGFuIGNhbiBjb2xsZWN0LAogKiBwcmV2ZW50aW5nIHVuYm91bmRlZCBtZW1vcnkgZ3Jvd3RoIGFuZCBlbnN1cmluZyByZWFzb25hYmxlIHNwYW4gc2l6ZXMuCiAqCiAqIEBwYXJhbSBpbnQgJGF0dHJpYnV0ZUNvdW50TGltaXQgTWF4aW11bSBudW1iZXIgb2YgYXR0cmlidXRlcyBwZXIgc3BhbgogKiBAcGFyYW0gaW50ICRldmVudENvdW50TGltaXQgTWF4aW11bSBudW1iZXIgb2YgZXZlbnRzIHBlciBzcGFuCiAqIEBwYXJhbSBpbnQgJGxpbmtDb3VudExpbWl0IE1heGltdW0gbnVtYmVyIG9mIGxpbmtzIHBlciBzcGFuCiAqIEBwYXJhbSBpbnQgJGF0dHJpYnV0ZVBlckV2ZW50Q291bnRMaW1pdCBNYXhpbXVtIG51bWJlciBvZiBhdHRyaWJ1dGVzIHBlciBldmVudAogKiBAcGFyYW0gaW50ICRhdHRyaWJ1dGVQZXJMaW5rQ291bnRMaW1pdCBNYXhpbXVtIG51bWJlciBvZiBhdHRyaWJ1dGVzIHBlciBsaW5rCiAqIEBwYXJhbSBudWxsfGludCAkYXR0cmlidXRlVmFsdWVMZW5ndGhMaW1pdCBNYXhpbXVtIGxlbmd0aCBmb3Igc3RyaW5nIGF0dHJpYnV0ZSB2YWx1ZXMgKG51bGwgPSB1bmxpbWl0ZWQpCiAqLw=="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":202,"slug":"log-record-limits","name":"log_record_limits","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"attributeCountLimit","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"128"},{"name":"attributeValueLengthLimit","type":[{"name":"int","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"LogRecordLimits","namespace":"Flow\\Telemetry\\Logger","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBMb2dSZWNvcmRMaW1pdHMgY29uZmlndXJhdGlvbi4KICoKICogTG9nUmVjb3JkTGltaXRzIGNvbnRyb2xzIHRoZSBtYXhpbXVtIGFtb3VudCBvZiBkYXRhIGEgbG9nIHJlY29yZCBjYW4gY29sbGVjdCwKICogcHJldmVudGluZyB1bmJvdW5kZWQgbWVtb3J5IGdyb3d0aCBhbmQgZW5zdXJpbmcgcmVhc29uYWJsZSBsb2cgcmVjb3JkIHNpemVzLgogKgogKiBAcGFyYW0gaW50ICRhdHRyaWJ1dGVDb3VudExpbWl0IE1heGltdW0gbnVtYmVyIG9mIGF0dHJpYnV0ZXMgcGVyIGxvZyByZWNvcmQKICogQHBhcmFtIG51bGx8aW50ICRhdHRyaWJ1dGVWYWx1ZUxlbmd0aExpbWl0IE1heGltdW0gbGVuZ3RoIGZvciBzdHJpbmcgYXR0cmlidXRlIHZhbHVlcyAobnVsbCA9IHVubGltaXRlZCkKICov"},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":227,"slug":"metric-limits","name":"metric_limits","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"cardinalityLimit","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"2000"}],"return_type":[{"name":"MetricLimits","namespace":"Flow\\Telemetry\\Meter","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBNZXRyaWNMaW1pdHMgY29uZmlndXJhdGlvbi4KICoKICogTWV0cmljTGltaXRzIGNvbnRyb2xzIHRoZSBtYXhpbXVtIGNhcmRpbmFsaXR5ICh1bmlxdWUgYXR0cmlidXRlIGNvbWJpbmF0aW9ucykKICogcGVyIG1ldHJpYyBpbnN0cnVtZW50LCBwcmV2ZW50aW5nIG1lbW9yeSBleGhhdXN0aW9uIGZyb20gaGlnaC1jYXJkaW5hbGl0eSBhdHRyaWJ1dGVzLgogKgogKiBXaGVuIHRoZSBjYXJkaW5hbGl0eSBsaW1pdCBpcyBleGNlZWRlZCwgbmV3IGF0dHJpYnV0ZSBjb21iaW5hdGlvbnMgYXJlIGFnZ3JlZ2F0ZWQKICogaW50byBhbiBvdmVyZmxvdyBkYXRhIHBvaW50IHdpdGggYG90ZWwubWV0cmljLm92ZXJmbG93OiB0cnVlYCBhdHRyaWJ1dGUuCiAqCiAqIE5vdGU6IFVubGlrZSBzcGFucyBhbmQgbG9ncywgbWV0cmljcyBhcmUgRVhFTVBUIGZyb20gYXR0cmlidXRlIGNvdW50IGFuZCB2YWx1ZQogKiBsZW5ndGggbGltaXRzIHBlciB0aGUgT3BlblRlbGVtZXRyeSBzcGVjaWZpY2F0aW9uLiBPbmx5IGNhcmRpbmFsaXR5IGlzIGxpbWl0ZWQuCiAqCiAqIEBwYXJhbSBpbnQgJGNhcmRpbmFsaXR5TGltaXQgTWF4aW11bSBudW1iZXIgb2YgdW5pcXVlIGF0dHJpYnV0ZSBjb21iaW5hdGlvbnMgcGVyIGluc3RydW1lbnQKICov"},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":242,"slug":"void-span-processor","name":"void_span_processor","namespace":"Flow\\Telemetry\\DSL","parameters":[],"return_type":[{"name":"VoidSpanProcessor","namespace":"Flow\\Telemetry\\Provider\\Void","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFZvaWRTcGFuUHJvY2Vzc29yLgogKgogKiBOby1vcCBzcGFuIHByb2Nlc3NvciB0aGF0IGRpc2NhcmRzIGFsbCBkYXRhLgogKiBVc2UgdGhpcyB3aGVuIHRyYWNpbmcgaXMgZGlzYWJsZWQgdG8gbWluaW1pemUgb3ZlcmhlYWQuCiAqLw=="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":254,"slug":"void-metric-processor","name":"void_metric_processor","namespace":"Flow\\Telemetry\\DSL","parameters":[],"return_type":[{"name":"VoidMetricProcessor","namespace":"Flow\\Telemetry\\Provider\\Void","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFZvaWRNZXRyaWNQcm9jZXNzb3IuCiAqCiAqIE5vLW9wIG1ldHJpYyBwcm9jZXNzb3IgdGhhdCBkaXNjYXJkcyBhbGwgZGF0YS4KICogVXNlIHRoaXMgd2hlbiBtZXRyaWNzIGNvbGxlY3Rpb24gaXMgZGlzYWJsZWQgdG8gbWluaW1pemUgb3ZlcmhlYWQuCiAqLw=="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":266,"slug":"void-log-processor","name":"void_log_processor","namespace":"Flow\\Telemetry\\DSL","parameters":[],"return_type":[{"name":"VoidLogProcessor","namespace":"Flow\\Telemetry\\Provider\\Void","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFZvaWRMb2dQcm9jZXNzb3IuCiAqCiAqIE5vLW9wIGxvZyBwcm9jZXNzb3IgdGhhdCBkaXNjYXJkcyBhbGwgZGF0YS4KICogVXNlIHRoaXMgd2hlbiBsb2dnaW5nIGlzIGRpc2FibGVkIHRvIG1pbmltaXplIG92ZXJoZWFkLgogKi8="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":278,"slug":"void-span-exporter","name":"void_span_exporter","namespace":"Flow\\Telemetry\\DSL","parameters":[],"return_type":[{"name":"VoidSpanExporter","namespace":"Flow\\Telemetry\\Provider\\Void","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFZvaWRTcGFuRXhwb3J0ZXIuCiAqCiAqIE5vLW9wIHNwYW4gZXhwb3J0ZXIgdGhhdCBkaXNjYXJkcyBhbGwgZGF0YS4KICogVXNlIHRoaXMgd2hlbiB0ZWxlbWV0cnkgZXhwb3J0IGlzIGRpc2FibGVkIHRvIG1pbmltaXplIG92ZXJoZWFkLgogKi8="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":290,"slug":"void-metric-exporter","name":"void_metric_exporter","namespace":"Flow\\Telemetry\\DSL","parameters":[],"return_type":[{"name":"VoidMetricExporter","namespace":"Flow\\Telemetry\\Provider\\Void","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFZvaWRNZXRyaWNFeHBvcnRlci4KICoKICogTm8tb3AgbWV0cmljIGV4cG9ydGVyIHRoYXQgZGlzY2FyZHMgYWxsIGRhdGEuCiAqIFVzZSB0aGlzIHdoZW4gdGVsZW1ldHJ5IGV4cG9ydCBpcyBkaXNhYmxlZCB0byBtaW5pbWl6ZSBvdmVyaGVhZC4KICov"},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":302,"slug":"void-log-exporter","name":"void_log_exporter","namespace":"Flow\\Telemetry\\DSL","parameters":[],"return_type":[{"name":"VoidLogExporter","namespace":"Flow\\Telemetry\\Provider\\Void","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFZvaWRMb2dFeHBvcnRlci4KICoKICogTm8tb3AgbG9nIGV4cG9ydGVyIHRoYXQgZGlzY2FyZHMgYWxsIGRhdGEuCiAqIFVzZSB0aGlzIHdoZW4gdGVsZW1ldHJ5IGV4cG9ydCBpcyBkaXNhYmxlZCB0byBtaW5pbWl6ZSBvdmVyaGVhZC4KICov"},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":315,"slug":"memory-span-exporter","name":"memory_span_exporter","namespace":"Flow\\Telemetry\\DSL","parameters":[],"return_type":[{"name":"MemorySpanExporter","namespace":"Flow\\Telemetry\\Provider\\Memory","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIE1lbW9yeVNwYW5FeHBvcnRlci4KICoKICogU3BhbiBleHBvcnRlciB0aGF0IHN0b3JlcyBkYXRhIGluIG1lbW9yeS4KICogUHJvdmlkZXMgZGlyZWN0IGdldHRlciBhY2Nlc3MgdG8gZXhwb3J0ZWQgc3BhbnMuCiAqIFVzZWZ1bCBmb3IgdGVzdGluZyBhbmQgaW5zcGVjdGlvbiB3aXRob3V0IHNlcmlhbGl6YXRpb24uCiAqLw=="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":328,"slug":"memory-metric-exporter","name":"memory_metric_exporter","namespace":"Flow\\Telemetry\\DSL","parameters":[],"return_type":[{"name":"MemoryMetricExporter","namespace":"Flow\\Telemetry\\Provider\\Memory","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIE1lbW9yeU1ldHJpY0V4cG9ydGVyLgogKgogKiBNZXRyaWMgZXhwb3J0ZXIgdGhhdCBzdG9yZXMgZGF0YSBpbiBtZW1vcnkuCiAqIFByb3ZpZGVzIGRpcmVjdCBnZXR0ZXIgYWNjZXNzIHRvIGV4cG9ydGVkIG1ldHJpY3MuCiAqIFVzZWZ1bCBmb3IgdGVzdGluZyBhbmQgaW5zcGVjdGlvbiB3aXRob3V0IHNlcmlhbGl6YXRpb24uCiAqLw=="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":341,"slug":"memory-log-exporter","name":"memory_log_exporter","namespace":"Flow\\Telemetry\\DSL","parameters":[],"return_type":[{"name":"MemoryLogExporter","namespace":"Flow\\Telemetry\\Provider\\Memory","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIE1lbW9yeUxvZ0V4cG9ydGVyLgogKgogKiBMb2cgZXhwb3J0ZXIgdGhhdCBzdG9yZXMgZGF0YSBpbiBtZW1vcnkuCiAqIFByb3ZpZGVzIGRpcmVjdCBnZXR0ZXIgYWNjZXNzIHRvIGV4cG9ydGVkIGxvZyBlbnRyaWVzLgogKiBVc2VmdWwgZm9yIHRlc3RpbmcgYW5kIGluc3BlY3Rpb24gd2l0aG91dCBzZXJpYWxpemF0aW9uLgogKi8="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":355,"slug":"memory-span-processor","name":"memory_span_processor","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"exporter","type":[{"name":"SpanExporter","namespace":"Flow\\Telemetry\\Tracer","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"MemorySpanProcessor","namespace":"Flow\\Telemetry\\Provider\\Memory","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIE1lbW9yeVNwYW5Qcm9jZXNzb3IuCiAqCiAqIFNwYW4gcHJvY2Vzc29yIHRoYXQgc3RvcmVzIHNwYW5zIGluIG1lbW9yeSBhbmQgZXhwb3J0cyB2aWEgY29uZmlndXJlZCBleHBvcnRlci4KICogVXNlZnVsIGZvciB0ZXN0aW5nLgogKgogKiBAcGFyYW0gU3BhbkV4cG9ydGVyICRleHBvcnRlciBUaGUgZXhwb3J0ZXIgdG8gc2VuZCBzcGFucyB0bwogKi8="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":369,"slug":"memory-metric-processor","name":"memory_metric_processor","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"exporter","type":[{"name":"MetricExporter","namespace":"Flow\\Telemetry\\Meter","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"MemoryMetricProcessor","namespace":"Flow\\Telemetry\\Provider\\Memory","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIE1lbW9yeU1ldHJpY1Byb2Nlc3Nvci4KICoKICogTWV0cmljIHByb2Nlc3NvciB0aGF0IHN0b3JlcyBtZXRyaWNzIGluIG1lbW9yeSBhbmQgZXhwb3J0cyB2aWEgY29uZmlndXJlZCBleHBvcnRlci4KICogVXNlZnVsIGZvciB0ZXN0aW5nLgogKgogKiBAcGFyYW0gTWV0cmljRXhwb3J0ZXIgJGV4cG9ydGVyIFRoZSBleHBvcnRlciB0byBzZW5kIG1ldHJpY3MgdG8KICov"},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":383,"slug":"memory-log-processor","name":"memory_log_processor","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"exporter","type":[{"name":"LogExporter","namespace":"Flow\\Telemetry\\Logger","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"MemoryLogProcessor","namespace":"Flow\\Telemetry\\Provider\\Memory","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIE1lbW9yeUxvZ1Byb2Nlc3Nvci4KICoKICogTG9nIHByb2Nlc3NvciB0aGF0IHN0b3JlcyBsb2cgcmVjb3JkcyBpbiBtZW1vcnkgYW5kIGV4cG9ydHMgdmlhIGNvbmZpZ3VyZWQgZXhwb3J0ZXIuCiAqIFVzZWZ1bCBmb3IgdGVzdGluZy4KICoKICogQHBhcmFtIExvZ0V4cG9ydGVyICRleHBvcnRlciBUaGUgZXhwb3J0ZXIgdG8gc2VuZCBsb2dzIHRvCiAqLw=="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":402,"slug":"tracer-provider","name":"tracer_provider","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"processor","type":[{"name":"SpanProcessor","namespace":"Flow\\Telemetry\\Tracer","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"clock","type":[{"name":"ClockInterface","namespace":"Psr\\Clock","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"contextStorage","type":[{"name":"ContextStorage","namespace":"Flow\\Telemetry\\Context","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"sampler","type":[{"name":"Sampler","namespace":"Flow\\Telemetry\\Tracer\\Sampler","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\Telemetry\\Tracer\\Sampler\\AlwaysOnSampler::..."},{"name":"limits","type":[{"name":"SpanLimits","namespace":"Flow\\Telemetry\\Tracer","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\Telemetry\\Tracer\\SpanLimits::..."}],"return_type":[{"name":"TracerProvider","namespace":"Flow\\Telemetry\\Tracer","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFRyYWNlclByb3ZpZGVyLgogKgogKiBDcmVhdGVzIGEgcHJvdmlkZXIgdGhhdCB1c2VzIGEgU3BhblByb2Nlc3NvciBmb3IgcHJvY2Vzc2luZyBzcGFucy4KICogRm9yIHZvaWQvZGlzYWJsZWQgdHJhY2luZywgcGFzcyB2b2lkX3Byb2Nlc3NvcigpLgogKiBGb3IgbWVtb3J5LWJhc2VkIHRlc3RpbmcsIHBhc3MgbWVtb3J5X3Byb2Nlc3NvcigpIHdpdGggZXhwb3J0ZXJzLgogKgogKiBAcGFyYW0gU3BhblByb2Nlc3NvciAkcHJvY2Vzc29yIFRoZSBwcm9jZXNzb3IgZm9yIHNwYW5zCiAqIEBwYXJhbSBDbG9ja0ludGVyZmFjZSAkY2xvY2sgVGhlIGNsb2NrIGZvciB0aW1lc3RhbXBzCiAqIEBwYXJhbSBDb250ZXh0U3RvcmFnZSAkY29udGV4dFN0b3JhZ2UgU3RvcmFnZSBmb3IgY29udGV4dCBwcm9wYWdhdGlvbgogKiBAcGFyYW0gU2FtcGxlciAkc2FtcGxlciBTYW1wbGluZyBzdHJhdGVneSBmb3Igc3BhbnMKICogQHBhcmFtIFNwYW5MaW1pdHMgJGxpbWl0cyBMaW1pdHMgZm9yIHNwYW4gYXR0cmlidXRlcywgZXZlbnRzLCBhbmQgbGlua3MKICov"},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":431,"slug":"logger-provider","name":"logger_provider","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"processor","type":[{"name":"LogProcessor","namespace":"Flow\\Telemetry\\Logger","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"clock","type":[{"name":"ClockInterface","namespace":"Psr\\Clock","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"contextStorage","type":[{"name":"ContextStorage","namespace":"Flow\\Telemetry\\Context","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"limits","type":[{"name":"LogRecordLimits","namespace":"Flow\\Telemetry\\Logger","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\Telemetry\\Logger\\LogRecordLimits::..."}],"return_type":[{"name":"LoggerProvider","namespace":"Flow\\Telemetry\\Logger","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIExvZ2dlclByb3ZpZGVyLgogKgogKiBDcmVhdGVzIGEgcHJvdmlkZXIgdGhhdCB1c2VzIGEgTG9nUHJvY2Vzc29yIGZvciBwcm9jZXNzaW5nIGxvZ3MuCiAqIEZvciB2b2lkL2Rpc2FibGVkIGxvZ2dpbmcsIHBhc3Mgdm9pZF9wcm9jZXNzb3IoKS4KICogRm9yIG1lbW9yeS1iYXNlZCB0ZXN0aW5nLCBwYXNzIG1lbW9yeV9wcm9jZXNzb3IoKSB3aXRoIGV4cG9ydGVycy4KICoKICogQHBhcmFtIExvZ1Byb2Nlc3NvciAkcHJvY2Vzc29yIFRoZSBwcm9jZXNzb3IgZm9yIGxvZ3MKICogQHBhcmFtIENsb2NrSW50ZXJmYWNlICRjbG9jayBUaGUgY2xvY2sgZm9yIHRpbWVzdGFtcHMKICogQHBhcmFtIENvbnRleHRTdG9yYWdlICRjb250ZXh0U3RvcmFnZSBTdG9yYWdlIGZvciBzcGFuIGNvcnJlbGF0aW9uCiAqIEBwYXJhbSBMb2dSZWNvcmRMaW1pdHMgJGxpbWl0cyBMaW1pdHMgZm9yIGxvZyByZWNvcmQgYXR0cmlidXRlcwogKi8="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":459,"slug":"meter-provider","name":"meter_provider","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"processor","type":[{"name":"MetricProcessor","namespace":"Flow\\Telemetry\\Meter","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"clock","type":[{"name":"ClockInterface","namespace":"Psr\\Clock","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"temporality","type":[{"name":"AggregationTemporality","namespace":"Flow\\Telemetry\\Meter","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\Telemetry\\Meter\\AggregationTemporality::..."},{"name":"exemplarFilter","type":[{"name":"ExemplarFilter","namespace":"Flow\\Telemetry\\Meter\\Exemplar","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\Telemetry\\Meter\\Exemplar\\TraceBasedExemplarFilter::..."},{"name":"limits","type":[{"name":"MetricLimits","namespace":"Flow\\Telemetry\\Meter","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\Telemetry\\Meter\\MetricLimits::..."}],"return_type":[{"name":"MeterProvider","namespace":"Flow\\Telemetry\\Meter","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIE1ldGVyUHJvdmlkZXIuCiAqCiAqIENyZWF0ZXMgYSBwcm92aWRlciB0aGF0IHVzZXMgYSBNZXRyaWNQcm9jZXNzb3IgZm9yIHByb2Nlc3NpbmcgbWV0cmljcy4KICogRm9yIHZvaWQvZGlzYWJsZWQgbWV0cmljcywgcGFzcyB2b2lkX3Byb2Nlc3NvcigpLgogKiBGb3IgbWVtb3J5LWJhc2VkIHRlc3RpbmcsIHBhc3MgbWVtb3J5X3Byb2Nlc3NvcigpIHdpdGggZXhwb3J0ZXJzLgogKgogKiBAcGFyYW0gTWV0cmljUHJvY2Vzc29yICRwcm9jZXNzb3IgVGhlIHByb2Nlc3NvciBmb3IgbWV0cmljcwogKiBAcGFyYW0gQ2xvY2tJbnRlcmZhY2UgJGNsb2NrIFRoZSBjbG9jayBmb3IgdGltZXN0YW1wcwogKiBAcGFyYW0gQWdncmVnYXRpb25UZW1wb3JhbGl0eSAkdGVtcG9yYWxpdHkgQWdncmVnYXRpb24gdGVtcG9yYWxpdHkgZm9yIG1ldHJpY3MKICogQHBhcmFtIEV4ZW1wbGFyRmlsdGVyICRleGVtcGxhckZpbHRlciBGaWx0ZXIgZm9yIGV4ZW1wbGFyIHNhbXBsaW5nIChkZWZhdWx0OiBUcmFjZUJhc2VkRXhlbXBsYXJGaWx0ZXIpCiAqIEBwYXJhbSBNZXRyaWNMaW1pdHMgJGxpbWl0cyBDYXJkaW5hbGl0eSBsaW1pdHMgZm9yIG1ldHJpYyBpbnN0cnVtZW50cwogKi8="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":486,"slug":"telemetry","name":"telemetry","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"resource","type":[{"name":"Resource","namespace":"Flow\\Telemetry","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"tracerProvider","type":[{"name":"TracerProvider","namespace":"Flow\\Telemetry\\Tracer","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"meterProvider","type":[{"name":"MeterProvider","namespace":"Flow\\Telemetry\\Meter","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"loggerProvider","type":[{"name":"LoggerProvider","namespace":"Flow\\Telemetry\\Logger","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Telemetry","namespace":"Flow\\Telemetry","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIG5ldyBUZWxlbWV0cnkgaW5zdGFuY2Ugd2l0aCB0aGUgZ2l2ZW4gcHJvdmlkZXJzLgogKgogKiBJZiBwcm92aWRlcnMgYXJlIG5vdCBzcGVjaWZpZWQsIHZvaWQgcHJvdmlkZXJzIChuby1vcCkgYXJlIHVzZWQuCiAqCiAqIEBwYXJhbSByZXNvdXJjZSAkcmVzb3VyY2UgVGhlIHJlc291cmNlIGRlc2NyaWJpbmcgdGhlIGVudGl0eSBwcm9kdWNpbmcgdGVsZW1ldHJ5CiAqIEBwYXJhbSBudWxsfFRyYWNlclByb3ZpZGVyICR0cmFjZXJQcm92aWRlciBUaGUgdHJhY2VyIHByb3ZpZGVyIChudWxsIGZvciB2b2lkL2Rpc2FibGVkKQogKiBAcGFyYW0gbnVsbHxNZXRlclByb3ZpZGVyICRtZXRlclByb3ZpZGVyIFRoZSBtZXRlciBwcm92aWRlciAobnVsbCBmb3Igdm9pZC9kaXNhYmxlZCkKICogQHBhcmFtIG51bGx8TG9nZ2VyUHJvdmlkZXIgJGxvZ2dlclByb3ZpZGVyIFRoZSBsb2dnZXIgcHJvdmlkZXIgKG51bGwgZm9yIHZvaWQvZGlzYWJsZWQpCiAqLw=="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":511,"slug":"instrumentation-scope","name":"instrumentation_scope","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"version","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'unknown'"},{"name":"schemaUrl","type":[{"name":"string","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"attributes","type":[{"name":"Attributes","namespace":"Flow\\Telemetry","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\Telemetry\\Attributes::..."}],"return_type":[{"name":"InstrumentationScope","namespace":"Flow\\Telemetry","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBJbnN0cnVtZW50YXRpb25TY29wZS4KICoKICogQHBhcmFtIHN0cmluZyAkbmFtZSBUaGUgaW5zdHJ1bWVudGF0aW9uIHNjb3BlIG5hbWUKICogQHBhcmFtIHN0cmluZyAkdmVyc2lvbiBUaGUgaW5zdHJ1bWVudGF0aW9uIHNjb3BlIHZlcnNpb24KICogQHBhcmFtIG51bGx8c3RyaW5nICRzY2hlbWFVcmwgT3B0aW9uYWwgc2NoZW1hIFVSTAogKi8="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":530,"slug":"batching-span-processor","name":"batching_span_processor","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"exporter","type":[{"name":"SpanExporter","namespace":"Flow\\Telemetry\\Tracer","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"batchSize","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"512"}],"return_type":[{"name":"BatchingSpanProcessor","namespace":"Flow\\Telemetry\\Tracer\\Processor","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIEJhdGNoaW5nU3BhblByb2Nlc3Nvci4KICoKICogQ29sbGVjdHMgc3BhbnMgaW4gbWVtb3J5IGFuZCBleHBvcnRzIHRoZW0gaW4gYmF0Y2hlcyBmb3IgZWZmaWNpZW5jeS4KICogU3BhbnMgYXJlIGV4cG9ydGVkIHdoZW4gYmF0Y2ggc2l6ZSBpcyByZWFjaGVkLCBmbHVzaCgpIGlzIGNhbGxlZCwgb3Igc2h1dGRvd24oKS4KICoKICogQHBhcmFtIFNwYW5FeHBvcnRlciAkZXhwb3J0ZXIgVGhlIGV4cG9ydGVyIHRvIHNlbmQgc3BhbnMgdG8KICogQHBhcmFtIGludCAkYmF0Y2hTaXplIE51bWJlciBvZiBzcGFucyB0byBjb2xsZWN0IGJlZm9yZSBleHBvcnRpbmcgKGRlZmF1bHQgNTEyKQogKi8="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":544,"slug":"pass-through-span-processor","name":"pass_through_span_processor","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"exporter","type":[{"name":"SpanExporter","namespace":"Flow\\Telemetry\\Tracer","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"PassThroughSpanProcessor","namespace":"Flow\\Telemetry\\Tracer\\Processor","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFBhc3NUaHJvdWdoU3BhblByb2Nlc3Nvci4KICoKICogRXhwb3J0cyBlYWNoIHNwYW4gaW1tZWRpYXRlbHkgd2hlbiBpdCBlbmRzLgogKiBVc2VmdWwgZm9yIGRlYnVnZ2luZyB3aGVyZSBpbW1lZGlhdGUgdmlzaWJpbGl0eSBpcyBtb3JlIGltcG9ydGFudCB0aGFuIHBlcmZvcm1hbmNlLgogKgogKiBAcGFyYW0gU3BhbkV4cG9ydGVyICRleHBvcnRlciBUaGUgZXhwb3J0ZXIgdG8gc2VuZCBzcGFucyB0bwogKi8="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":559,"slug":"batching-metric-processor","name":"batching_metric_processor","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"exporter","type":[{"name":"MetricExporter","namespace":"Flow\\Telemetry\\Meter","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"batchSize","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"512"}],"return_type":[{"name":"BatchingMetricProcessor","namespace":"Flow\\Telemetry\\Meter\\Processor","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIEJhdGNoaW5nTWV0cmljUHJvY2Vzc29yLgogKgogKiBDb2xsZWN0cyBtZXRyaWNzIGluIG1lbW9yeSBhbmQgZXhwb3J0cyB0aGVtIGluIGJhdGNoZXMgZm9yIGVmZmljaWVuY3kuCiAqIE1ldHJpY3MgYXJlIGV4cG9ydGVkIHdoZW4gYmF0Y2ggc2l6ZSBpcyByZWFjaGVkLCBmbHVzaCgpIGlzIGNhbGxlZCwgb3Igc2h1dGRvd24oKS4KICoKICogQHBhcmFtIE1ldHJpY0V4cG9ydGVyICRleHBvcnRlciBUaGUgZXhwb3J0ZXIgdG8gc2VuZCBtZXRyaWNzIHRvCiAqIEBwYXJhbSBpbnQgJGJhdGNoU2l6ZSBOdW1iZXIgb2YgbWV0cmljcyB0byBjb2xsZWN0IGJlZm9yZSBleHBvcnRpbmcgKGRlZmF1bHQgNTEyKQogKi8="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":573,"slug":"pass-through-metric-processor","name":"pass_through_metric_processor","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"exporter","type":[{"name":"MetricExporter","namespace":"Flow\\Telemetry\\Meter","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"PassThroughMetricProcessor","namespace":"Flow\\Telemetry\\Meter\\Processor","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFBhc3NUaHJvdWdoTWV0cmljUHJvY2Vzc29yLgogKgogKiBFeHBvcnRzIGVhY2ggbWV0cmljIGltbWVkaWF0ZWx5IHdoZW4gcHJvY2Vzc2VkLgogKiBVc2VmdWwgZm9yIGRlYnVnZ2luZyB3aGVyZSBpbW1lZGlhdGUgdmlzaWJpbGl0eSBpcyBtb3JlIGltcG9ydGFudCB0aGFuIHBlcmZvcm1hbmNlLgogKgogKiBAcGFyYW0gTWV0cmljRXhwb3J0ZXIgJGV4cG9ydGVyIFRoZSBleHBvcnRlciB0byBzZW5kIG1ldHJpY3MgdG8KICov"},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":588,"slug":"batching-log-processor","name":"batching_log_processor","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"exporter","type":[{"name":"LogExporter","namespace":"Flow\\Telemetry\\Logger","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"batchSize","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"512"}],"return_type":[{"name":"BatchingLogProcessor","namespace":"Flow\\Telemetry\\Logger\\Processor","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIEJhdGNoaW5nTG9nUHJvY2Vzc29yLgogKgogKiBDb2xsZWN0cyBsb2cgcmVjb3JkcyBpbiBtZW1vcnkgYW5kIGV4cG9ydHMgdGhlbSBpbiBiYXRjaGVzIGZvciBlZmZpY2llbmN5LgogKiBMb2dzIGFyZSBleHBvcnRlZCB3aGVuIGJhdGNoIHNpemUgaXMgcmVhY2hlZCwgZmx1c2goKSBpcyBjYWxsZWQsIG9yIHNodXRkb3duKCkuCiAqCiAqIEBwYXJhbSBMb2dFeHBvcnRlciAkZXhwb3J0ZXIgVGhlIGV4cG9ydGVyIHRvIHNlbmQgbG9ncyB0bwogKiBAcGFyYW0gaW50ICRiYXRjaFNpemUgTnVtYmVyIG9mIGxvZ3MgdG8gY29sbGVjdCBiZWZvcmUgZXhwb3J0aW5nIChkZWZhdWx0IDUxMikKICov"},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":602,"slug":"pass-through-log-processor","name":"pass_through_log_processor","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"exporter","type":[{"name":"LogExporter","namespace":"Flow\\Telemetry\\Logger","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"PassThroughLogProcessor","namespace":"Flow\\Telemetry\\Logger\\Processor","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFBhc3NUaHJvdWdoTG9nUHJvY2Vzc29yLgogKgogKiBFeHBvcnRzIGVhY2ggbG9nIHJlY29yZCBpbW1lZGlhdGVseSB3aGVuIHByb2Nlc3NlZC4KICogVXNlZnVsIGZvciBkZWJ1Z2dpbmcgd2hlcmUgaW1tZWRpYXRlIHZpc2liaWxpdHkgaXMgbW9yZSBpbXBvcnRhbnQgdGhhbiBwZXJmb3JtYW5jZS4KICoKICogQHBhcmFtIExvZ0V4cG9ydGVyICRleHBvcnRlciBUaGUgZXhwb3J0ZXIgdG8gc2VuZCBsb2dzIHRvCiAqLw=="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":617,"slug":"severity-filtering-log-processor","name":"severity_filtering_log_processor","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"processor","type":[{"name":"LogProcessor","namespace":"Flow\\Telemetry\\Logger","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"minimumSeverity","type":[{"name":"Severity","namespace":"Flow\\Telemetry\\Logger","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\Telemetry\\Logger\\Severity::..."}],"return_type":[{"name":"SeverityFilteringLogProcessor","namespace":"Flow\\Telemetry\\Logger\\Processor","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFNldmVyaXR5RmlsdGVyaW5nTG9nUHJvY2Vzc29yLgogKgogKiBGaWx0ZXJzIGxvZyBlbnRyaWVzIGJhc2VkIG9uIG1pbmltdW0gc2V2ZXJpdHkgbGV2ZWwuIE9ubHkgZW50cmllcyBhdCBvciBhYm92ZQogKiB0aGUgY29uZmlndXJlZCB0aHJlc2hvbGQgYXJlIHBhc3NlZCB0byB0aGUgd3JhcHBlZCBwcm9jZXNzb3IuCiAqCiAqIEBwYXJhbSBMb2dQcm9jZXNzb3IgJHByb2Nlc3NvciBUaGUgcHJvY2Vzc29yIHRvIHdyYXAKICogQHBhcmFtIFNldmVyaXR5ICRtaW5pbXVtU2V2ZXJpdHkgTWluaW11bSBzZXZlcml0eSBsZXZlbCAoZGVmYXVsdDogSU5GTykKICov"},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":634,"slug":"console-span-exporter","name":"console_span_exporter","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"colors","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"true"},{"name":"options","type":[{"name":"ConsoleSpanOptions","namespace":"Flow\\Telemetry\\Provider\\Console","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\Telemetry\\Provider\\Console\\ConsoleSpanOptions::..."}],"return_type":[{"name":"ConsoleSpanExporter","namespace":"Flow\\Telemetry\\Provider\\Console","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIENvbnNvbGVTcGFuRXhwb3J0ZXIuCiAqCiAqIE91dHB1dHMgc3BhbnMgdG8gdGhlIGNvbnNvbGUgd2l0aCBBU0NJSSB0YWJsZSBmb3JtYXR0aW5nLgogKiBVc2VmdWwgZm9yIGRlYnVnZ2luZyBhbmQgZGV2ZWxvcG1lbnQuCiAqCiAqIEBwYXJhbSBib29sICRjb2xvcnMgV2hldGhlciB0byB1c2UgQU5TSSBjb2xvcnMgKGRlZmF1bHQ6IHRydWUpCiAqIEBwYXJhbSBDb25zb2xlU3Bhbk9wdGlvbnMgJG9wdGlvbnMgRGlzcGxheSBvcHRpb25zIGZvciB0aGUgZXhwb3J0ZXIKICov"},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":649,"slug":"console-metric-exporter","name":"console_metric_exporter","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"colors","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"true"},{"name":"options","type":[{"name":"ConsoleMetricOptions","namespace":"Flow\\Telemetry\\Provider\\Console","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\Telemetry\\Provider\\Console\\ConsoleMetricOptions::..."}],"return_type":[{"name":"ConsoleMetricExporter","namespace":"Flow\\Telemetry\\Provider\\Console","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIENvbnNvbGVNZXRyaWNFeHBvcnRlci4KICoKICogT3V0cHV0cyBtZXRyaWNzIHRvIHRoZSBjb25zb2xlIHdpdGggQVNDSUkgdGFibGUgZm9ybWF0dGluZy4KICogVXNlZnVsIGZvciBkZWJ1Z2dpbmcgYW5kIGRldmVsb3BtZW50LgogKgogKiBAcGFyYW0gYm9vbCAkY29sb3JzIFdoZXRoZXIgdG8gdXNlIEFOU0kgY29sb3JzIChkZWZhdWx0OiB0cnVlKQogKiBAcGFyYW0gQ29uc29sZU1ldHJpY09wdGlvbnMgJG9wdGlvbnMgRGlzcGxheSBvcHRpb25zIGZvciB0aGUgZXhwb3J0ZXIKICov"},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":665,"slug":"console-log-exporter","name":"console_log_exporter","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"colors","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"true"},{"name":"maxBodyLength","type":[{"name":"int","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"100"},{"name":"options","type":[{"name":"ConsoleLogOptions","namespace":"Flow\\Telemetry\\Provider\\Console","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\Telemetry\\Provider\\Console\\ConsoleLogOptions::..."}],"return_type":[{"name":"ConsoleLogExporter","namespace":"Flow\\Telemetry\\Provider\\Console","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIENvbnNvbGVMb2dFeHBvcnRlci4KICoKICogT3V0cHV0cyBsb2cgcmVjb3JkcyB0byB0aGUgY29uc29sZSB3aXRoIHNldmVyaXR5LWJhc2VkIGNvbG9yaW5nLgogKiBVc2VmdWwgZm9yIGRlYnVnZ2luZyBhbmQgZGV2ZWxvcG1lbnQuCiAqCiAqIEBwYXJhbSBib29sICRjb2xvcnMgV2hldGhlciB0byB1c2UgQU5TSSBjb2xvcnMgKGRlZmF1bHQ6IHRydWUpCiAqIEBwYXJhbSBudWxsfGludCAkbWF4Qm9keUxlbmd0aCBNYXhpbXVtIGxlbmd0aCBmb3IgYm9keSthdHRyaWJ1dGVzIGNvbHVtbiAobnVsbCA9IG5vIGxpbWl0LCBkZWZhdWx0OiAxMDApCiAqIEBwYXJhbSBDb25zb2xlTG9nT3B0aW9ucyAkb3B0aW9ucyBEaXNwbGF5IG9wdGlvbnMgZm9yIHRoZSBleHBvcnRlcgogKi8="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":674,"slug":"console-span-options","name":"console_span_options","namespace":"Flow\\Telemetry\\DSL","parameters":[],"return_type":[{"name":"ConsoleSpanOptions","namespace":"Flow\\Telemetry\\Provider\\Console","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBDb25zb2xlU3Bhbk9wdGlvbnMgd2l0aCBhbGwgZGlzcGxheSBvcHRpb25zIGVuYWJsZWQgKGRlZmF1bHQgYmVoYXZpb3IpLgogKi8="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":683,"slug":"console-span-options-minimal","name":"console_span_options_minimal","namespace":"Flow\\Telemetry\\DSL","parameters":[],"return_type":[{"name":"ConsoleSpanOptions","namespace":"Flow\\Telemetry\\Provider\\Console","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBDb25zb2xlU3Bhbk9wdGlvbnMgd2l0aCBtaW5pbWFsIGRpc3BsYXkgKGxlZ2FjeSBjb21wYWN0IGZvcm1hdCkuCiAqLw=="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":692,"slug":"console-log-options","name":"console_log_options","namespace":"Flow\\Telemetry\\DSL","parameters":[],"return_type":[{"name":"ConsoleLogOptions","namespace":"Flow\\Telemetry\\Provider\\Console","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBDb25zb2xlTG9nT3B0aW9ucyB3aXRoIGFsbCBkaXNwbGF5IG9wdGlvbnMgZW5hYmxlZCAoZGVmYXVsdCBiZWhhdmlvcikuCiAqLw=="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":701,"slug":"console-log-options-minimal","name":"console_log_options_minimal","namespace":"Flow\\Telemetry\\DSL","parameters":[],"return_type":[{"name":"ConsoleLogOptions","namespace":"Flow\\Telemetry\\Provider\\Console","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBDb25zb2xlTG9nT3B0aW9ucyB3aXRoIG1pbmltYWwgZGlzcGxheSAobGVnYWN5IGNvbXBhY3QgZm9ybWF0KS4KICov"},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":710,"slug":"console-metric-options","name":"console_metric_options","namespace":"Flow\\Telemetry\\DSL","parameters":[],"return_type":[{"name":"ConsoleMetricOptions","namespace":"Flow\\Telemetry\\Provider\\Console","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBDb25zb2xlTWV0cmljT3B0aW9ucyB3aXRoIGFsbCBkaXNwbGF5IG9wdGlvbnMgZW5hYmxlZCAoZGVmYXVsdCBiZWhhdmlvcikuCiAqLw=="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":719,"slug":"console-metric-options-minimal","name":"console_metric_options_minimal","namespace":"Flow\\Telemetry\\DSL","parameters":[],"return_type":[{"name":"ConsoleMetricOptions","namespace":"Flow\\Telemetry\\Provider\\Console","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBDb25zb2xlTWV0cmljT3B0aW9ucyB3aXRoIG1pbmltYWwgZGlzcGxheSAobGVnYWN5IGNvbXBhY3QgZm9ybWF0KS4KICov"},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":731,"slug":"always-on-exemplar-filter","name":"always_on_exemplar_filter","namespace":"Flow\\Telemetry\\DSL","parameters":[],"return_type":[{"name":"AlwaysOnExemplarFilter","namespace":"Flow\\Telemetry\\Meter\\Exemplar","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBBbHdheXNPbkV4ZW1wbGFyRmlsdGVyLgogKgogKiBSZWNvcmRzIGV4ZW1wbGFycyB3aGVuZXZlciBhIHNwYW4gY29udGV4dCBpcyBwcmVzZW50LgogKiBVc2UgdGhpcyBmaWx0ZXIgZm9yIGRlYnVnZ2luZyBvciB3aGVuIGNvbXBsZXRlIHRyYWNlIGNvbnRleHQgaXMgaW1wb3J0YW50LgogKi8="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":743,"slug":"always-off-exemplar-filter","name":"always_off_exemplar_filter","namespace":"Flow\\Telemetry\\DSL","parameters":[],"return_type":[{"name":"AlwaysOffExemplarFilter","namespace":"Flow\\Telemetry\\Meter\\Exemplar","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBBbHdheXNPZmZFeGVtcGxhckZpbHRlci4KICoKICogTmV2ZXIgcmVjb3JkcyBleGVtcGxhcnMuIFVzZSB0aGlzIGZpbHRlciB0byBkaXNhYmxlIGV4ZW1wbGFyIGNvbGxlY3Rpb24KICogZW50aXJlbHkgZm9yIHBlcmZvcm1hbmNlIG9wdGltaXphdGlvbi4KICov"},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":755,"slug":"trace-based-exemplar-filter","name":"trace_based_exemplar_filter","namespace":"Flow\\Telemetry\\DSL","parameters":[],"return_type":[{"name":"TraceBasedExemplarFilter","namespace":"Flow\\Telemetry\\Meter\\Exemplar","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFRyYWNlQmFzZWRFeGVtcGxhckZpbHRlci4KICoKICogUmVjb3JkcyBleGVtcGxhcnMgb25seSB3aGVuIHRoZSBzcGFuIGlzIHNhbXBsZWQgKGhhcyBTQU1QTEVEIHRyYWNlIGZsYWcpLgogKiBUaGlzIGlzIHRoZSBkZWZhdWx0IGZpbHRlciwgYmFsYW5jaW5nIGV4ZW1wbGFyIGNvbGxlY3Rpb24gd2l0aCBwZXJmb3JtYW5jZS4KICov"},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":770,"slug":"propagation-context","name":"propagation_context","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"spanContext","type":[{"name":"SpanContext","namespace":"Flow\\Telemetry\\Tracer","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"baggage","type":[{"name":"Baggage","namespace":"Flow\\Telemetry\\Context","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"PropagationContext","namespace":"Flow\\Telemetry\\Propagation","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFByb3BhZ2F0aW9uQ29udGV4dC4KICoKICogVmFsdWUgb2JqZWN0IGNvbnRhaW5pbmcgYm90aCB0cmFjZSBjb250ZXh0IChTcGFuQ29udGV4dCkgYW5kIGFwcGxpY2F0aW9uCiAqIGRhdGEgKEJhZ2dhZ2UpIHRoYXQgY2FuIGJlIHByb3BhZ2F0ZWQgYWNyb3NzIHByb2Nlc3MgYm91bmRhcmllcy4KICoKICogQHBhcmFtIG51bGx8U3BhbkNvbnRleHQgJHNwYW5Db250ZXh0IE9wdGlvbmFsIHNwYW4gY29udGV4dAogKiBAcGFyYW0gbnVsbHxCYWdnYWdlICRiYWdnYWdlIE9wdGlvbmFsIGJhZ2dhZ2UKICov"},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":783,"slug":"array-carrier","name":"array_carrier","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"data","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"ArrayCarrier","namespace":"Flow\\Telemetry\\Propagation","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBBcnJheUNhcnJpZXIuCiAqCiAqIENhcnJpZXIgYmFja2VkIGJ5IGFuIGFzc29jaWF0aXZlIGFycmF5IHdpdGggY2FzZS1pbnNlbnNpdGl2ZSBrZXkgbG9va3VwLgogKgogKiBAcGFyYW0gYXJyYXk8c3RyaW5nLCBzdHJpbmc+ICRkYXRhIEluaXRpYWwgY2FycmllciBkYXRhCiAqLw=="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":795,"slug":"superglobal-carrier","name":"superglobal_carrier","namespace":"Flow\\Telemetry\\DSL","parameters":[],"return_type":[{"name":"SuperglobalCarrier","namespace":"Flow\\Telemetry\\Propagation","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFN1cGVyZ2xvYmFsQ2Fycmllci4KICoKICogUmVhZC1vbmx5IGNhcnJpZXIgdGhhdCBleHRyYWN0cyBjb250ZXh0IGZyb20gUEhQIHN1cGVyZ2xvYmFscwogKiAoJF9TRVJWRVIsICRfR0VULCAkX1BPU1QsICRfQ09PS0lFKS4KICov"},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":807,"slug":"w3c-trace-context","name":"w3c_trace_context","namespace":"Flow\\Telemetry\\DSL","parameters":[],"return_type":[{"name":"W3CTraceContext","namespace":"Flow\\Telemetry\\Propagation","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFczQ1RyYWNlQ29udGV4dCBwcm9wYWdhdG9yLgogKgogKiBJbXBsZW1lbnRzIFczQyBUcmFjZSBDb250ZXh0IHNwZWNpZmljYXRpb24gZm9yIHByb3BhZ2F0aW5nIHRyYWNlIGNvbnRleHQKICogdXNpbmcgdHJhY2VwYXJlbnQgYW5kIHRyYWNlc3RhdGUgaGVhZGVycy4KICov"},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":819,"slug":"w3c-baggage","name":"w3c_baggage","namespace":"Flow\\Telemetry\\DSL","parameters":[],"return_type":[{"name":"W3CBaggage","namespace":"Flow\\Telemetry\\Propagation","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFczQ0JhZ2dhZ2UgcHJvcGFnYXRvci4KICoKICogSW1wbGVtZW50cyBXM0MgQmFnZ2FnZSBzcGVjaWZpY2F0aW9uIGZvciBwcm9wYWdhdGluZyBhcHBsaWNhdGlvbi1zcGVjaWZpYwogKiBrZXktdmFsdWUgcGFpcnMgdXNpbmcgdGhlIGJhZ2dhZ2UgaGVhZGVyLgogKi8="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":833,"slug":"composite-propagator","name":"composite_propagator","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"propagators","type":[{"name":"Propagator","namespace":"Flow\\Telemetry\\Propagation","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"CompositePropagator","namespace":"Flow\\Telemetry\\Propagation","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIENvbXBvc2l0ZVByb3BhZ2F0b3IuCiAqCiAqIENvbWJpbmVzIG11bHRpcGxlIHByb3BhZ2F0b3JzIGludG8gb25lLiBPbiBleHRyYWN0LCBhbGwgcHJvcGFnYXRvcnMgYXJlCiAqIGludm9rZWQgYW5kIHRoZWlyIGNvbnRleHRzIGFyZSBtZXJnZWQuIE9uIGluamVjdCwgYWxsIHByb3BhZ2F0b3JzIGFyZSBpbnZva2VkLgogKgogKiBAcGFyYW0gUHJvcGFnYXRvciAuLi4kcHJvcGFnYXRvcnMgVGhlIHByb3BhZ2F0b3JzIHRvIGNvbWJpbmUKICov"},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":848,"slug":"chain-detector","name":"chain_detector","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"detectors","type":[{"name":"ResourceDetector","namespace":"Flow\\Telemetry\\Resource","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"ChainDetector","namespace":"Flow\\Telemetry\\Resource\\Detector","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIENoYWluRGV0ZWN0b3IuCiAqCiAqIENvbWJpbmVzIG11bHRpcGxlIHJlc291cmNlIGRldGVjdG9ycyBpbnRvIGEgY2hhaW4uIERldGVjdG9ycyBhcmUgZXhlY3V0ZWQKICogaW4gb3JkZXIgYW5kIHRoZWlyIHJlc3VsdHMgYXJlIG1lcmdlZC4gTGF0ZXIgZGV0ZWN0b3JzIHRha2UgcHJlY2VkZW5jZQogKiBvdmVyIGVhcmxpZXIgb25lcyB3aGVuIHRoZXJlIGFyZSBjb25mbGljdGluZyBhdHRyaWJ1dGUga2V5cy4KICoKICogQHBhcmFtIFJlc291cmNlRGV0ZWN0b3IgLi4uJGRldGVjdG9ycyBUaGUgZGV0ZWN0b3JzIHRvIGNoYWluCiAqLw=="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":860,"slug":"os-detector","name":"os_detector","namespace":"Flow\\Telemetry\\DSL","parameters":[],"return_type":[{"name":"OsDetector","namespace":"Flow\\Telemetry\\Resource\\Detector","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBPc0RldGVjdG9yLgogKgogKiBEZXRlY3RzIG9wZXJhdGluZyBzeXN0ZW0gaW5mb3JtYXRpb24gaW5jbHVkaW5nIG9zLnR5cGUsIG9zLm5hbWUsIG9zLnZlcnNpb24sCiAqIGFuZCBvcy5kZXNjcmlwdGlvbiB1c2luZyBQSFAncyBwaHBfdW5hbWUoKSBmdW5jdGlvbi4KICov"},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":872,"slug":"host-detector","name":"host_detector","namespace":"Flow\\Telemetry\\DSL","parameters":[],"return_type":[{"name":"HostDetector","namespace":"Flow\\Telemetry\\Resource\\Detector","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIEhvc3REZXRlY3Rvci4KICoKICogRGV0ZWN0cyBob3N0IGluZm9ybWF0aW9uIGluY2x1ZGluZyBob3N0Lm5hbWUsIGhvc3QuYXJjaCwgYW5kIGhvc3QuaWQKICogKGZyb20gL2V0Yy9tYWNoaW5lLWlkIG9uIExpbnV4IG9yIElPUGxhdGZvcm1VVUlEIG9uIG1hY09TKS4KICov"},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":885,"slug":"process-detector","name":"process_detector","namespace":"Flow\\Telemetry\\DSL","parameters":[],"return_type":[{"name":"ProcessDetector","namespace":"Flow\\Telemetry\\Resource\\Detector","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFByb2Nlc3NEZXRlY3Rvci4KICoKICogRGV0ZWN0cyBwcm9jZXNzIGluZm9ybWF0aW9uIGluY2x1ZGluZyBwcm9jZXNzLnBpZCwgcHJvY2Vzcy5leGVjdXRhYmxlLnBhdGgsCiAqIHByb2Nlc3MucnVudGltZS5uYW1lIChQSFApLCBwcm9jZXNzLnJ1bnRpbWUudmVyc2lvbiwgcHJvY2Vzcy5jb21tYW5kLAogKiBhbmQgcHJvY2Vzcy5vd25lciAob24gUE9TSVggc3lzdGVtcykuCiAqLw=="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":898,"slug":"environment-detector","name":"environment_detector","namespace":"Flow\\Telemetry\\DSL","parameters":[],"return_type":[{"name":"EnvironmentDetector","namespace":"Flow\\Telemetry\\Resource\\Detector","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBFbnZpcm9ubWVudERldGVjdG9yLgogKgogKiBEZXRlY3RzIHJlc291cmNlIGF0dHJpYnV0ZXMgZnJvbSBPcGVuVGVsZW1ldHJ5IHN0YW5kYXJkIGVudmlyb25tZW50IHZhcmlhYmxlczoKICogLSBPVEVMX1NFUlZJQ0VfTkFNRTogU2V0cyBzZXJ2aWNlLm5hbWUgYXR0cmlidXRlCiAqIC0gT1RFTF9SRVNPVVJDRV9BVFRSSUJVVEVTOiBTZXRzIGFkZGl0aW9uYWwgYXR0cmlidXRlcyBpbiBrZXk9dmFsdWUsa2V5Mj12YWx1ZTIgZm9ybWF0CiAqLw=="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":910,"slug":"composer-detector","name":"composer_detector","namespace":"Flow\\Telemetry\\DSL","parameters":[],"return_type":[{"name":"ComposerDetector","namespace":"Flow\\Telemetry\\Resource\\Detector","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIENvbXBvc2VyRGV0ZWN0b3IuCiAqCiAqIERldGVjdHMgc2VydmljZS5uYW1lIGFuZCBzZXJ2aWNlLnZlcnNpb24gZnJvbSBDb21wb3NlcidzIEluc3RhbGxlZFZlcnNpb25zCiAqIHVzaW5nIHRoZSByb290IHBhY2thZ2UgaW5mb3JtYXRpb24uCiAqLw=="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":924,"slug":"manual-detector","name":"manual_detector","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"attributes","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ManualDetector","namespace":"Flow\\Telemetry\\Resource\\Detector","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIE1hbnVhbERldGVjdG9yLgogKgogKiBSZXR1cm5zIG1hbnVhbGx5IHNwZWNpZmllZCByZXNvdXJjZSBhdHRyaWJ1dGVzLiBVc2UgdGhpcyB3aGVuIHlvdSBuZWVkCiAqIHRvIHNldCBhdHRyaWJ1dGVzIGV4cGxpY2l0bHkgcmF0aGVyIHRoYW4gZGV0ZWN0aW5nIHRoZW0gYXV0b21hdGljYWxseS4KICoKICogQHBhcmFtIGFycmF5PHN0cmluZywgYXJyYXk8Ym9vbHxmbG9hdHxpbnR8c3RyaW5nPnxib29sfGZsb2F0fGludHxzdHJpbmc+ICRhdHRyaWJ1dGVzIFJlc291cmNlIGF0dHJpYnV0ZXMKICov"},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":939,"slug":"caching-detector","name":"caching_detector","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"detector","type":[{"name":"ResourceDetector","namespace":"Flow\\Telemetry\\Resource","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"cachePath","type":[{"name":"string","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"CachingDetector","namespace":"Flow\\Telemetry\\Resource\\Detector","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIENhY2hpbmdEZXRlY3Rvci4KICoKICogV3JhcHMgYW5vdGhlciBkZXRlY3RvciBhbmQgY2FjaGVzIGl0cyByZXN1bHRzIHRvIGEgZmlsZS4gT24gc3Vic2VxdWVudAogKiBjYWxscywgcmV0dXJucyB0aGUgY2FjaGVkIHJlc291cmNlIGluc3RlYWQgb2YgcnVubmluZyBkZXRlY3Rpb24gYWdhaW4uCiAqCiAqIEBwYXJhbSBSZXNvdXJjZURldGVjdG9yICRkZXRlY3RvciBUaGUgZGV0ZWN0b3IgdG8gd3JhcAogKiBAcGFyYW0gbnVsbHxzdHJpbmcgJGNhY2hlUGF0aCBDYWNoZSBmaWxlIHBhdGggKGRlZmF1bHQ6IHN5c19nZXRfdGVtcF9kaXIoKS9mbG93X3RlbGVtZXRyeV9yZXNvdXJjZS5jYWNoZSkKICov"},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":959,"slug":"resource-detector","name":"resource_detector","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"detectors","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"ChainDetector","namespace":"Flow\\Telemetry\\Resource\\Detector","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIHJlc291cmNlIGRldGVjdG9yIGNoYWluLgogKgogKiBXaGVuIG5vIGRldGVjdG9ycyBhcmUgcHJvdmlkZWQsIHVzZXMgdGhlIGRlZmF1bHQgZGV0ZWN0b3IgY2hhaW46CiAqIDEuIE9zRGV0ZWN0b3IgLSBPcGVyYXRpbmcgc3lzdGVtIGluZm9ybWF0aW9uCiAqIDIuIEhvc3REZXRlY3RvciAtIEhvc3QgaW5mb3JtYXRpb24KICogMy4gUHJvY2Vzc0RldGVjdG9yIC0gUHJvY2VzcyBpbmZvcm1hdGlvbgogKiA0LiBDb21wb3NlckRldGVjdG9yIC0gU2VydmljZSBpbmZvcm1hdGlvbiBmcm9tIENvbXBvc2VyCiAqIDUuIEVudmlyb25tZW50RGV0ZWN0b3IgLSBFbnZpcm9ubWVudCB2YXJpYWJsZSBvdmVycmlkZXMgKGhpZ2hlc3QgcHJlY2VkZW5jZSkKICoKICogV2hlbiBkZXRlY3RvcnMgYXJlIHByb3ZpZGVkLCB1c2VzIG9ubHkgdGhvc2UgZGV0ZWN0b3JzLgogKgogKiBAcGFyYW0gYXJyYXk8UmVzb3VyY2VEZXRlY3Rvcj4gJGRldGVjdG9ycyBPcHRpb25hbCBjdXN0b20gZGV0ZWN0b3JzIChlbXB0eSA9IHVzZSBkZWZhdWx0cykKICov"},{"repository_path":"src\/lib\/azure-sdk\/src\/Flow\/Azure\/SDK\/DSL\/functions.php","start_line_in_file":18,"slug":"azurite-url-factory","name":"azurite_url_factory","namespace":"Flow\\Azure\\SDK\\DSL","parameters":[{"name":"host","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'localhost'"},{"name":"port","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'10000'"},{"name":"secure","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"AzuriteURLFactory","namespace":"Flow\\Azure\\SDK\\BlobService\\URLFactory","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"AZURE_SDK","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/azure-sdk\/src\/Flow\/Azure\/SDK\/DSL\/functions.php","start_line_in_file":24,"slug":"azure-shared-key-authorization-factory","name":"azure_shared_key_authorization_factory","namespace":"Flow\\Azure\\SDK\\DSL","parameters":[{"name":"account","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"key","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"SharedKeyFactory","namespace":"Flow\\Azure\\SDK\\AuthorizationFactory","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"AZURE_SDK","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/azure-sdk\/src\/Flow\/Azure\/SDK\/DSL\/functions.php","start_line_in_file":30,"slug":"azure-blob-service-config","name":"azure_blob_service_config","namespace":"Flow\\Azure\\SDK\\DSL","parameters":[{"name":"account","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"container","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Configuration","namespace":"Flow\\Azure\\SDK\\BlobService","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"AZURE_SDK","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/azure-sdk\/src\/Flow\/Azure\/SDK\/DSL\/functions.php","start_line_in_file":36,"slug":"azure-url-factory","name":"azure_url_factory","namespace":"Flow\\Azure\\SDK\\DSL","parameters":[{"name":"host","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'blob.core.windows.net'"}],"return_type":[{"name":"AzureURLFactory","namespace":"Flow\\Azure\\SDK\\BlobService\\URLFactory","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"AZURE_SDK","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/azure-sdk\/src\/Flow\/Azure\/SDK\/DSL\/functions.php","start_line_in_file":42,"slug":"azure-http-factory","name":"azure_http_factory","namespace":"Flow\\Azure\\SDK\\DSL","parameters":[{"name":"request_factory","type":[{"name":"RequestFactoryInterface","namespace":"Psr\\Http\\Message","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"stream_factory","type":[{"name":"StreamFactoryInterface","namespace":"Psr\\Http\\Message","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"HttpFactory","namespace":"Flow\\Azure\\SDK","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"AZURE_SDK","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/azure-sdk\/src\/Flow\/Azure\/SDK\/DSL\/functions.php","start_line_in_file":48,"slug":"azure-blob-service","name":"azure_blob_service","namespace":"Flow\\Azure\\SDK\\DSL","parameters":[{"name":"configuration","type":[{"name":"Configuration","namespace":"Flow\\Azure\\SDK\\BlobService","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"azure_authorization_factory","type":[{"name":"AuthorizationFactory","namespace":"Flow\\Azure\\SDK","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"client","type":[{"name":"ClientInterface","namespace":"Psr\\Http\\Client","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"azure_http_factory","type":[{"name":"HttpFactory","namespace":"Flow\\Azure\\SDK","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"azure_url_factory","type":[{"name":"URLFactory","namespace":"Flow\\Azure\\SDK","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"logger","type":[{"name":"LoggerInterface","namespace":"Psr\\Log","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"BlobServiceInterface","namespace":"Flow\\Azure\\SDK","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"AZURE_SDK","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/bridge\/filesystem\/azure\/src\/Flow\/Filesystem\/Bridge\/Azure\/DSL\/functions.php","start_line_in_file":12,"slug":"azure-filesystem-options","name":"azure_filesystem_options","namespace":"Flow\\Filesystem\\Bridge\\Azure\\DSL","parameters":[],"return_type":[{"name":"Options","namespace":"Flow\\Filesystem\\Bridge\\Azure","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"AZURE_FILESYSTEM","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/bridge\/filesystem\/azure\/src\/Flow\/Filesystem\/Bridge\/Azure\/DSL\/functions.php","start_line_in_file":18,"slug":"azure-filesystem","name":"azure_filesystem","namespace":"Flow\\Filesystem\\Bridge\\Azure\\DSL","parameters":[{"name":"blob_service","type":[{"name":"BlobServiceInterface","namespace":"Flow\\Azure\\SDK","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"options","type":[{"name":"Options","namespace":"Flow\\Filesystem\\Bridge\\Azure","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\Filesystem\\Bridge\\Azure\\Options::..."}],"return_type":[{"name":"AzureBlobFilesystem","namespace":"Flow\\Filesystem\\Bridge\\Azure","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"AZURE_FILESYSTEM","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/bridge\/filesystem\/async-aws\/src\/Flow\/Filesystem\/Bridge\/AsyncAWS\/DSL\/functions.php","start_line_in_file":15,"slug":"aws-s3-client","name":"aws_s3_client","namespace":"Flow\\Filesystem\\Bridge\\AsyncAWS\\DSL","parameters":[{"name":"configuration","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"S3Client","namespace":"AsyncAws\\S3","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"S3_FILESYSTEM","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxzdHJpbmcsIG1peGVkPiAkY29uZmlndXJhdGlvbiAtIGZvciBkZXRhaWxzIHBsZWFzZSBzZWUgaHR0cHM6Ly9hc3luYy1hd3MuY29tL2NsaWVudHMvczMuaHRtbAogKi8="},{"repository_path":"src\/bridge\/filesystem\/async-aws\/src\/Flow\/Filesystem\/Bridge\/AsyncAWS\/DSL\/functions.php","start_line_in_file":22,"slug":"aws-s3-filesystem","name":"aws_s3_filesystem","namespace":"Flow\\Filesystem\\Bridge\\AsyncAWS\\DSL","parameters":[{"name":"bucket","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"s3Client","type":[{"name":"S3Client","namespace":"AsyncAws\\S3","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"options","type":[{"name":"Options","namespace":"Flow\\Filesystem\\Bridge\\AsyncAWS","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\Filesystem\\Bridge\\AsyncAWS\\Options::..."}],"return_type":[{"name":"AsyncAWSS3Filesystem","namespace":"Flow\\Filesystem\\Bridge\\AsyncAWS","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"S3_FILESYSTEM","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/bridge\/monolog\/telemetry\/src\/Flow\/Bridge\/Monolog\/Telemetry\/DSL\/functions.php","start_line_in_file":32,"slug":"value-normalizer","name":"value_normalizer","namespace":"Flow\\Bridge\\Monolog\\Telemetry\\DSL","parameters":[],"return_type":[{"name":"ValueNormalizer","namespace":"Flow\\Bridge\\Monolog\\Telemetry","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"MONOLOG_TELEMETRY_BRIDGE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFZhbHVlTm9ybWFsaXplciBmb3IgY29udmVydGluZyBhcmJpdHJhcnkgUEhQIHZhbHVlcyB0byBUZWxlbWV0cnkgYXR0cmlidXRlIHR5cGVzLgogKgogKiBUaGUgbm9ybWFsaXplciBoYW5kbGVzOgogKiAtIG51bGwg4oaSICdudWxsJyBzdHJpbmcKICogLSBzY2FsYXJzIChzdHJpbmcsIGludCwgZmxvYXQsIGJvb2wpIOKGkiB1bmNoYW5nZWQKICogLSBEYXRlVGltZUludGVyZmFjZSDihpIgdW5jaGFuZ2VkCiAqIC0gVGhyb3dhYmxlIOKGkiB1bmNoYW5nZWQKICogLSBhcnJheXMg4oaSIHJlY3Vyc2l2ZWx5IG5vcm1hbGl6ZWQKICogLSBvYmplY3RzIHdpdGggX190b1N0cmluZygpIOKGkiBzdHJpbmcgY2FzdAogKiAtIG9iamVjdHMgd2l0aG91dCBfX3RvU3RyaW5nKCkg4oaSIGNsYXNzIG5hbWUKICogLSBvdGhlciB0eXBlcyDihpIgZ2V0X2RlYnVnX3R5cGUoKSByZXN1bHQKICoKICogRXhhbXBsZSB1c2FnZToKICogYGBgcGhwCiAqICRub3JtYWxpemVyID0gdmFsdWVfbm9ybWFsaXplcigpOwogKiAkbm9ybWFsaXplZCA9ICRub3JtYWxpemVyLT5ub3JtYWxpemUoJHZhbHVlKTsKICogYGBgCiAqLw=="},{"repository_path":"src\/bridge\/monolog\/telemetry\/src\/Flow\/Bridge\/Monolog\/Telemetry\/DSL\/functions.php","start_line_in_file":65,"slug":"severity-mapper","name":"severity_mapper","namespace":"Flow\\Bridge\\Monolog\\Telemetry\\DSL","parameters":[{"name":"customMapping","type":[{"name":"array","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"SeverityMapper","namespace":"Flow\\Bridge\\Monolog\\Telemetry","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"MONOLOG_TELEMETRY_BRIDGE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFNldmVyaXR5TWFwcGVyIGZvciBtYXBwaW5nIE1vbm9sb2cgbGV2ZWxzIHRvIFRlbGVtZXRyeSBzZXZlcml0aWVzLgogKgogKiBAcGFyYW0gbnVsbHxhcnJheTxpbnQsIFNldmVyaXR5PiAkY3VzdG9tTWFwcGluZyBPcHRpb25hbCBjdXN0b20gbWFwcGluZyAoTW9ub2xvZyBMZXZlbCB2YWx1ZSA9PiBUZWxlbWV0cnkgU2V2ZXJpdHkpCiAqCiAqIEV4YW1wbGUgd2l0aCBkZWZhdWx0IG1hcHBpbmc6CiAqIGBgYHBocAogKiAkbWFwcGVyID0gc2V2ZXJpdHlfbWFwcGVyKCk7CiAqIGBgYAogKgogKiBFeGFtcGxlIHdpdGggY3VzdG9tIG1hcHBpbmc6CiAqIGBgYHBocAogKiB1c2UgTW9ub2xvZ1xMZXZlbDsKICogdXNlIEZsb3dcVGVsZW1ldHJ5XExvZ2dlclxTZXZlcml0eTsKICoKICogJG1hcHBlciA9IHNldmVyaXR5X21hcHBlcihbCiAqICAgICBMZXZlbDo6RGVidWctPnZhbHVlID0+IFNldmVyaXR5OjpERUJVRywKICogICAgIExldmVsOjpJbmZvLT52YWx1ZSA9PiBTZXZlcml0eTo6SU5GTywKICogICAgIExldmVsOjpOb3RpY2UtPnZhbHVlID0+IFNldmVyaXR5OjpXQVJOLCAgLy8gQ3VzdG9tOiBOT1RJQ0Ug4oaSIFdBUk4gaW5zdGVhZCBvZiBJTkZPCiAqICAgICBMZXZlbDo6V2FybmluZy0+dmFsdWUgPT4gU2V2ZXJpdHk6OldBUk4sCiAqICAgICBMZXZlbDo6RXJyb3ItPnZhbHVlID0+IFNldmVyaXR5OjpFUlJPUiwKICogICAgIExldmVsOjpDcml0aWNhbC0+dmFsdWUgPT4gU2V2ZXJpdHk6OkZBVEFMLAogKiAgICAgTGV2ZWw6OkFsZXJ0LT52YWx1ZSA9PiBTZXZlcml0eTo6RkFUQUwsCiAqICAgICBMZXZlbDo6RW1lcmdlbmN5LT52YWx1ZSA9PiBTZXZlcml0eTo6RkFUQUwsCiAqIF0pOwogKiBgYGAKICov"},{"repository_path":"src\/bridge\/monolog\/telemetry\/src\/Flow\/Bridge\/Monolog\/Telemetry\/DSL\/functions.php","start_line_in_file":99,"slug":"log-record-converter","name":"log_record_converter","namespace":"Flow\\Bridge\\Monolog\\Telemetry\\DSL","parameters":[{"name":"severityMapper","type":[{"name":"SeverityMapper","namespace":"Flow\\Bridge\\Monolog\\Telemetry","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"valueNormalizer","type":[{"name":"ValueNormalizer","namespace":"Flow\\Bridge\\Monolog\\Telemetry","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"LogRecordConverter","namespace":"Flow\\Bridge\\Monolog\\Telemetry","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"MONOLOG_TELEMETRY_BRIDGE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIExvZ1JlY29yZENvbnZlcnRlciBmb3IgY29udmVydGluZyBNb25vbG9nIExvZ1JlY29yZCB0byBUZWxlbWV0cnkgTG9nUmVjb3JkLgogKgogKiBUaGUgY29udmVydGVyIGhhbmRsZXM6CiAqIC0gU2V2ZXJpdHkgbWFwcGluZyBmcm9tIE1vbm9sb2cgTGV2ZWwgdG8gVGVsZW1ldHJ5IFNldmVyaXR5CiAqIC0gTWVzc2FnZSBib2R5IGNvbnZlcnNpb24KICogLSBDaGFubmVsIGFuZCBsZXZlbCBuYW1lIGFzIG1vbm9sb2cuKiBhdHRyaWJ1dGVzCiAqIC0gQ29udGV4dCB2YWx1ZXMgYXMgY29udGV4dC4qIGF0dHJpYnV0ZXMgKFRocm93YWJsZXMgdXNlIHNldEV4Y2VwdGlvbigpKQogKiAtIEV4dHJhIHZhbHVlcyBhcyBleHRyYS4qIGF0dHJpYnV0ZXMKICoKICogQHBhcmFtIG51bGx8U2V2ZXJpdHlNYXBwZXIgJHNldmVyaXR5TWFwcGVyIEN1c3RvbSBzZXZlcml0eSBtYXBwZXIgKGRlZmF1bHRzIHRvIHN0YW5kYXJkIG1hcHBpbmcpCiAqIEBwYXJhbSBudWxsfFZhbHVlTm9ybWFsaXplciAkdmFsdWVOb3JtYWxpemVyIEN1c3RvbSB2YWx1ZSBub3JtYWxpemVyIChkZWZhdWx0cyB0byBzdGFuZGFyZCBub3JtYWxpemVyKQogKgogKiBFeGFtcGxlIHVzYWdlOgogKiBgYGBwaHAKICogJGNvbnZlcnRlciA9IGxvZ19yZWNvcmRfY29udmVydGVyKCk7CiAqICR0ZWxlbWV0cnlSZWNvcmQgPSAkY29udmVydGVyLT5jb252ZXJ0KCRtb25vbG9nUmVjb3JkKTsKICogYGBgCiAqCiAqIEV4YW1wbGUgd2l0aCBjdXN0b20gbWFwcGVyOgogKiBgYGBwaHAKICogJGNvbnZlcnRlciA9IGxvZ19yZWNvcmRfY29udmVydGVyKAogKiAgICAgc2V2ZXJpdHlNYXBwZXI6IHNldmVyaXR5X21hcHBlcihbCiAqICAgICAgICAgTGV2ZWw6OkRlYnVnLT52YWx1ZSA9PiBTZXZlcml0eTo6VFJBQ0UsCiAqICAgICBdKQogKiApOwogKiBgYGAKICov"},{"repository_path":"src\/bridge\/monolog\/telemetry\/src\/Flow\/Bridge\/Monolog\/Telemetry\/DSL\/functions.php","start_line_in_file":144,"slug":"telemetry-handler","name":"telemetry_handler","namespace":"Flow\\Bridge\\Monolog\\Telemetry\\DSL","parameters":[{"name":"logger","type":[{"name":"Logger","namespace":"Flow\\Telemetry\\Logger","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"converter","type":[{"name":"LogRecordConverter","namespace":"Flow\\Bridge\\Monolog\\Telemetry","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\Bridge\\Monolog\\Telemetry\\LogRecordConverter::..."},{"name":"level","type":[{"name":"Level","namespace":"Monolog","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Monolog\\Level::..."},{"name":"bubble","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"true"}],"return_type":[{"name":"TelemetryHandler","namespace":"Flow\\Bridge\\Monolog\\Telemetry","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"MONOLOG_TELEMETRY_BRIDGE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFRlbGVtZXRyeUhhbmRsZXIgZm9yIGZvcndhcmRpbmcgTW9ub2xvZyBsb2dzIHRvIEZsb3cgVGVsZW1ldHJ5LgogKgogKiBAcGFyYW0gTG9nZ2VyICRsb2dnZXIgVGhlIEZsb3cgVGVsZW1ldHJ5IGxvZ2dlciB0byBmb3J3YXJkIGxvZ3MgdG8KICogQHBhcmFtIExvZ1JlY29yZENvbnZlcnRlciAkY29udmVydGVyIENvbnZlcnRlciB0byB0cmFuc2Zvcm0gTW9ub2xvZyBMb2dSZWNvcmQgdG8gVGVsZW1ldHJ5IExvZ1JlY29yZAogKiBAcGFyYW0gTGV2ZWwgJGxldmVsIFRoZSBtaW5pbXVtIGxvZ2dpbmcgbGV2ZWwgYXQgd2hpY2ggdGhpcyBoYW5kbGVyIHdpbGwgYmUgdHJpZ2dlcmVkCiAqIEBwYXJhbSBib29sICRidWJibGUgV2hldGhlciBtZXNzYWdlcyBoYW5kbGVkIGJ5IHRoaXMgaGFuZGxlciBzaG91bGQgYnViYmxlIHVwIHRvIG90aGVyIGhhbmRsZXJzCiAqCiAqIEV4YW1wbGUgdXNhZ2U6CiAqIGBgYHBocAogKiB1c2UgTW9ub2xvZ1xMb2dnZXIgYXMgTW9ub2xvZ0xvZ2dlcjsKICogdXNlIGZ1bmN0aW9uIEZsb3dcQnJpZGdlXE1vbm9sb2dcVGVsZW1ldHJ5XERTTFx0ZWxlbWV0cnlfaGFuZGxlcjsKICogdXNlIGZ1bmN0aW9uIEZsb3dcVGVsZW1ldHJ5XERTTFx0ZWxlbWV0cnk7CiAqCiAqICR0ZWxlbWV0cnkgPSB0ZWxlbWV0cnkoKTsKICogJGxvZ2dlciA9ICR0ZWxlbWV0cnktPmxvZ2dlcignbXktYXBwJyk7CiAqCiAqICRtb25vbG9nID0gbmV3IE1vbm9sb2dMb2dnZXIoJ2NoYW5uZWwnKTsKICogJG1vbm9sb2ctPnB1c2hIYW5kbGVyKHRlbGVtZXRyeV9oYW5kbGVyKCRsb2dnZXIpKTsKICoKICogJG1vbm9sb2ctPmluZm8oJ1VzZXIgbG9nZ2VkIGluJywgWyd1c2VyX2lkJyA9PiAxMjNdKTsKICogLy8g4oaSIEZvcndhcmRlZCB0byBGbG93IFRlbGVtZXRyeSB3aXRoIElORk8gc2V2ZXJpdHkKICogYGBgCiAqCiAqIEV4YW1wbGUgd2l0aCBjdXN0b20gY29udmVydGVyOgogKiBgYGBwaHAKICogJGNvbnZlcnRlciA9IGxvZ19yZWNvcmRfY29udmVydGVyKAogKiAgICAgc2V2ZXJpdHlNYXBwZXI6IHNldmVyaXR5X21hcHBlcihbCiAqICAgICAgICAgTGV2ZWw6OkRlYnVnLT52YWx1ZSA9PiBTZXZlcml0eTo6VFJBQ0UsCiAqICAgICBdKQogKiApOwogKiAkbW9ub2xvZy0+cHVzaEhhbmRsZXIodGVsZW1ldHJ5X2hhbmRsZXIoJGxvZ2dlciwgJGNvbnZlcnRlcikpOwogKiBgYGAKICov"},{"repository_path":"src\/bridge\/symfony\/http-foundation-telemetry\/src\/Flow\/Bridge\/Symfony\/HttpFoundationTelemetry\/DSL\/functions.php","start_line_in_file":12,"slug":"symfony-request-carrier","name":"symfony_request_carrier","namespace":"Flow\\Bridge\\Symfony\\HttpFoundationTelemetry\\DSL","parameters":[{"name":"request","type":[{"name":"Request","namespace":"Symfony\\Component\\HttpFoundation","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"RequestCarrier","namespace":"Flow\\Bridge\\Symfony\\HttpFoundationTelemetry","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"SYMFONY_HTTP_FOUNDATION_TELEMETRY_BRIDGE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/bridge\/symfony\/http-foundation-telemetry\/src\/Flow\/Bridge\/Symfony\/HttpFoundationTelemetry\/DSL\/functions.php","start_line_in_file":18,"slug":"symfony-response-carrier","name":"symfony_response_carrier","namespace":"Flow\\Bridge\\Symfony\\HttpFoundationTelemetry\\DSL","parameters":[{"name":"response","type":[{"name":"Response","namespace":"Symfony\\Component\\HttpFoundation","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ResponseCarrier","namespace":"Flow\\Bridge\\Symfony\\HttpFoundationTelemetry","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"SYMFONY_HTTP_FOUNDATION_TELEMETRY_BRIDGE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/bridge\/psr7\/telemetry\/src\/Flow\/Bridge\/Psr7\/Telemetry\/DSL\/functions.php","start_line_in_file":12,"slug":"psr7-request-carrier","name":"psr7_request_carrier","namespace":"Flow\\Bridge\\Psr7\\Telemetry\\DSL","parameters":[{"name":"request","type":[{"name":"ServerRequestInterface","namespace":"Psr\\Http\\Message","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"RequestCarrier","namespace":"Flow\\Bridge\\Psr7\\Telemetry","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PSR7_TELEMETRY_BRIDGE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/bridge\/psr7\/telemetry\/src\/Flow\/Bridge\/Psr7\/Telemetry\/DSL\/functions.php","start_line_in_file":18,"slug":"psr7-response-carrier","name":"psr7_response_carrier","namespace":"Flow\\Bridge\\Psr7\\Telemetry\\DSL","parameters":[{"name":"response","type":[{"name":"ResponseInterface","namespace":"Psr\\Http\\Message","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ResponseCarrier","namespace":"Flow\\Bridge\\Psr7\\Telemetry","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PSR7_TELEMETRY_BRIDGE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/bridge\/psr18\/telemetry\/src\/Flow\/Bridge\/Psr18\/Telemetry\/DSL\/functions.php","start_line_in_file":13,"slug":"psr18-traceable-client","name":"psr18_traceable_client","namespace":"Flow\\Bridge\\Psr18\\Telemetry\\DSL","parameters":[{"name":"client","type":[{"name":"ClientInterface","namespace":"Psr\\Http\\Client","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"telemetry","type":[{"name":"Telemetry","namespace":"Flow\\Telemetry","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"PSR18TraceableClient","namespace":"Flow\\Bridge\\Psr18\\Telemetry","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PSR18_TELEMETRY_BRIDGE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/bridge\/telemetry\/otlp\/src\/Flow\/Bridge\/Telemetry\/OTLP\/DSL\/functions.php","start_line_in_file":36,"slug":"otlp-json-serializer","name":"otlp_json_serializer","namespace":"Flow\\Bridge\\Telemetry\\OTLP\\DSL","parameters":[],"return_type":[{"name":"JsonSerializer","namespace":"Flow\\Bridge\\Telemetry\\OTLP\\Serializer","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY_OTLP","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIEpTT04gc2VyaWFsaXplciBmb3IgT1RMUC4KICoKICogUmV0dXJucyBhIEpzb25TZXJpYWxpemVyIHRoYXQgY29udmVydHMgdGVsZW1ldHJ5IGRhdGEgdG8gT1RMUCBKU09OIHdpcmUgZm9ybWF0LgogKiBVc2UgdGhpcyB3aXRoIEh0dHBUcmFuc3BvcnQgZm9yIEpTT04gb3ZlciBIVFRQLgogKgogKiBFeGFtcGxlIHVzYWdlOgogKiBgYGBwaHAKICogJHNlcmlhbGl6ZXIgPSBvdGxwX2pzb25fc2VyaWFsaXplcigpOwogKiAkdHJhbnNwb3J0ID0gb3RscF9odHRwX3RyYW5zcG9ydCgkY2xpZW50LCAkcmVxRmFjdG9yeSwgJHN0cmVhbUZhY3RvcnksICRlbmRwb2ludCwgJHNlcmlhbGl6ZXIpOwogKiBgYGAKICov"},{"repository_path":"src\/bridge\/telemetry\/otlp\/src\/Flow\/Bridge\/Telemetry\/OTLP\/DSL\/functions.php","start_line_in_file":58,"slug":"otlp-protobuf-serializer","name":"otlp_protobuf_serializer","namespace":"Flow\\Bridge\\Telemetry\\OTLP\\DSL","parameters":[],"return_type":[{"name":"ProtobufSerializer","namespace":"Flow\\Bridge\\Telemetry\\OTLP\\Serializer","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY_OTLP","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFByb3RvYnVmIHNlcmlhbGl6ZXIgZm9yIE9UTFAuCiAqCiAqIFJldHVybnMgYSBQcm90b2J1ZlNlcmlhbGl6ZXIgdGhhdCBjb252ZXJ0cyB0ZWxlbWV0cnkgZGF0YSB0byBPVExQIFByb3RvYnVmIGJpbmFyeSBmb3JtYXQuCiAqIFVzZSB0aGlzIHdpdGggSHR0cFRyYW5zcG9ydCBmb3IgUHJvdG9idWYgb3ZlciBIVFRQLCBvciB3aXRoIEdycGNUcmFuc3BvcnQuCiAqCiAqIFJlcXVpcmVzOgogKiAtIGdvb2dsZS9wcm90b2J1ZiBwYWNrYWdlCiAqIC0gb3Blbi10ZWxlbWV0cnkvZ2VuLW90bHAtcHJvdG9idWYgcGFja2FnZQogKgogKiBFeGFtcGxlIHVzYWdlOgogKiBgYGBwaHAKICogJHNlcmlhbGl6ZXIgPSBvdGxwX3Byb3RvYnVmX3NlcmlhbGl6ZXIoKTsKICogJHRyYW5zcG9ydCA9IG90bHBfaHR0cF90cmFuc3BvcnQoJGNsaWVudCwgJHJlcUZhY3RvcnksICRzdHJlYW1GYWN0b3J5LCAkZW5kcG9pbnQsICRzZXJpYWxpemVyKTsKICogYGBgCiAqLw=="},{"repository_path":"src\/bridge\/telemetry\/otlp\/src\/Flow\/Bridge\/Telemetry\/OTLP\/DSL\/functions.php","start_line_in_file":98,"slug":"otlp-http-transport","name":"otlp_http_transport","namespace":"Flow\\Bridge\\Telemetry\\OTLP\\DSL","parameters":[{"name":"client","type":[{"name":"ClientInterface","namespace":"Psr\\Http\\Client","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"requestFactory","type":[{"name":"RequestFactoryInterface","namespace":"Psr\\Http\\Message","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"streamFactory","type":[{"name":"StreamFactoryInterface","namespace":"Psr\\Http\\Message","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"endpoint","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"serializer","type":[{"name":"Serializer","namespace":"Flow\\Telemetry\\Serializer","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"headers","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"HttpTransport","namespace":"Flow\\Bridge\\Telemetry\\OTLP\\Transport","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY_OTLP","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBIVFRQIHRyYW5zcG9ydCBmb3IgT1RMUCBlbmRwb2ludHMuCiAqCiAqIENyZWF0ZXMgYW4gSHR0cFRyYW5zcG9ydCBjb25maWd1cmVkIHRvIHNlbmQgdGVsZW1ldHJ5IGRhdGEgdG8gYW4gT1RMUC1jb21wYXRpYmxlCiAqIGVuZHBvaW50IHVzaW5nIFBTUi0xOCBIVFRQIGNsaWVudC4gU3VwcG9ydHMgYm90aCBKU09OIGFuZCBQcm90b2J1ZiBmb3JtYXRzLgogKgogKiBFeGFtcGxlIHVzYWdlOgogKiBgYGBwaHAKICogLy8gSlNPTiBvdmVyIEhUVFAKICogJHRyYW5zcG9ydCA9IG90bHBfaHR0cF90cmFuc3BvcnQoCiAqICAgICBjbGllbnQ6ICRjbGllbnQsCiAqICAgICByZXF1ZXN0RmFjdG9yeTogJHBzcjE3RmFjdG9yeSwKICogICAgIHN0cmVhbUZhY3Rvcnk6ICRwc3IxN0ZhY3RvcnksCiAqICAgICBlbmRwb2ludDogJ2h0dHA6Ly9sb2NhbGhvc3Q6NDMxOCcsCiAqICAgICBzZXJpYWxpemVyOiBvdGxwX2pzb25fc2VyaWFsaXplcigpLAogKiApOwogKgogKiAvLyBQcm90b2J1ZiBvdmVyIEhUVFAKICogJHRyYW5zcG9ydCA9IG90bHBfaHR0cF90cmFuc3BvcnQoCiAqICAgICBjbGllbnQ6ICRjbGllbnQsCiAqICAgICByZXF1ZXN0RmFjdG9yeTogJHBzcjE3RmFjdG9yeSwKICogICAgIHN0cmVhbUZhY3Rvcnk6ICRwc3IxN0ZhY3RvcnksCiAqICAgICBlbmRwb2ludDogJ2h0dHA6Ly9sb2NhbGhvc3Q6NDMxOCcsCiAqICAgICBzZXJpYWxpemVyOiBvdGxwX3Byb3RvYnVmX3NlcmlhbGl6ZXIoKSwKICogKTsKICogYGBgCiAqCiAqIEBwYXJhbSBDbGllbnRJbnRlcmZhY2UgJGNsaWVudCBQU1ItMTggSFRUUCBjbGllbnQKICogQHBhcmFtIFJlcXVlc3RGYWN0b3J5SW50ZXJmYWNlICRyZXF1ZXN0RmFjdG9yeSBQU1ItMTcgcmVxdWVzdCBmYWN0b3J5CiAqIEBwYXJhbSBTdHJlYW1GYWN0b3J5SW50ZXJmYWNlICRzdHJlYW1GYWN0b3J5IFBTUi0xNyBzdHJlYW0gZmFjdG9yeQogKiBAcGFyYW0gc3RyaW5nICRlbmRwb2ludCBPVExQIGVuZHBvaW50IFVSTCAoZS5nLiwgJ2h0dHA6Ly9sb2NhbGhvc3Q6NDMxOCcpCiAqIEBwYXJhbSBTZXJpYWxpemVyICRzZXJpYWxpemVyIFNlcmlhbGl6ZXIgZm9yIGVuY29kaW5nIHRlbGVtZXRyeSBkYXRhIChKU09OIG9yIFByb3RvYnVmKQogKiBAcGFyYW0gYXJyYXk8c3RyaW5nLCBzdHJpbmc+ICRoZWFkZXJzIEFkZGl0aW9uYWwgaGVhZGVycyB0byBpbmNsdWRlIGluIHJlcXVlc3RzCiAqLw=="},{"repository_path":"src\/bridge\/telemetry\/otlp\/src\/Flow\/Bridge\/Telemetry\/OTLP\/DSL\/functions.php","start_line_in_file":134,"slug":"otlp-grpc-transport","name":"otlp_grpc_transport","namespace":"Flow\\Bridge\\Telemetry\\OTLP\\DSL","parameters":[{"name":"endpoint","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"serializer","type":[{"name":"ProtobufSerializer","namespace":"Flow\\Bridge\\Telemetry\\OTLP\\Serializer","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"headers","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"},{"name":"insecure","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"true"}],"return_type":[{"name":"GrpcTransport","namespace":"Flow\\Bridge\\Telemetry\\OTLP\\Transport","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY_OTLP","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGdSUEMgdHJhbnNwb3J0IGZvciBPVExQIGVuZHBvaW50cy4KICoKICogQ3JlYXRlcyBhIEdycGNUcmFuc3BvcnQgY29uZmlndXJlZCB0byBzZW5kIHRlbGVtZXRyeSBkYXRhIHRvIGFuIE9UTFAtY29tcGF0aWJsZQogKiBlbmRwb2ludCB1c2luZyBnUlBDIHByb3RvY29sIHdpdGggUHJvdG9idWYgc2VyaWFsaXphdGlvbi4KICoKICogUmVxdWlyZXM6CiAqIC0gZXh0LWdycGMgUEhQIGV4dGVuc2lvbgogKiAtIGdvb2dsZS9wcm90b2J1ZiBwYWNrYWdlCiAqIC0gb3Blbi10ZWxlbWV0cnkvZ2VuLW90bHAtcHJvdG9idWYgcGFja2FnZQogKgogKiBFeGFtcGxlIHVzYWdlOgogKiBgYGBwaHAKICogJHRyYW5zcG9ydCA9IG90bHBfZ3JwY190cmFuc3BvcnQoCiAqICAgICBlbmRwb2ludDogJ2xvY2FsaG9zdDo0MzE3JywKICogICAgIHNlcmlhbGl6ZXI6IG90bHBfcHJvdG9idWZfc2VyaWFsaXplcigpLAogKiApOwogKiBgYGAKICoKICogQHBhcmFtIHN0cmluZyAkZW5kcG9pbnQgZ1JQQyBlbmRwb2ludCAoZS5nLiwgJ2xvY2FsaG9zdDo0MzE3JykKICogQHBhcmFtIFByb3RvYnVmU2VyaWFsaXplciAkc2VyaWFsaXplciBQcm90b2J1ZiBzZXJpYWxpemVyIGZvciBlbmNvZGluZyB0ZWxlbWV0cnkgZGF0YQogKiBAcGFyYW0gYXJyYXk8c3RyaW5nLCBzdHJpbmc+ICRoZWFkZXJzIEFkZGl0aW9uYWwgaGVhZGVycyAobWV0YWRhdGEpIHRvIGluY2x1ZGUgaW4gcmVxdWVzdHMKICogQHBhcmFtIGJvb2wgJGluc2VjdXJlIFdoZXRoZXIgdG8gdXNlIGluc2VjdXJlIGNoYW5uZWwgY3JlZGVudGlhbHMgKGRlZmF1bHQgdHJ1ZSBmb3IgbG9jYWwgZGV2KQogKi8="},{"repository_path":"src\/bridge\/telemetry\/otlp\/src\/Flow\/Bridge\/Telemetry\/OTLP\/DSL\/functions.php","start_line_in_file":162,"slug":"otlp-curl-options","name":"otlp_curl_options","namespace":"Flow\\Bridge\\Telemetry\\OTLP\\DSL","parameters":[],"return_type":[{"name":"CurlTransportOptions","namespace":"Flow\\Bridge\\Telemetry\\OTLP\\Transport","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY_OTLP","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBjdXJsIHRyYW5zcG9ydCBvcHRpb25zIGZvciBPVExQLgogKgogKiBSZXR1cm5zIGEgQ3VybFRyYW5zcG9ydE9wdGlvbnMgYnVpbGRlciBmb3IgY29uZmlndXJpbmcgY3VybCB0cmFuc3BvcnQgc2V0dGluZ3MKICogdXNpbmcgYSBmbHVlbnQgaW50ZXJmYWNlLgogKgogKiBFeGFtcGxlIHVzYWdlOgogKiBgYGBwaHAKICogJG9wdGlvbnMgPSBvdGxwX2N1cmxfb3B0aW9ucygpCiAqICAgICAtPndpdGhUaW1lb3V0KDYwKQogKiAgICAgLT53aXRoQ29ubmVjdFRpbWVvdXQoMTUpCiAqICAgICAtPndpdGhIZWFkZXIoJ0F1dGhvcml6YXRpb24nLCAnQmVhcmVyIHRva2VuJykKICogICAgIC0+d2l0aENvbXByZXNzaW9uKCkKICogICAgIC0+d2l0aFNzbFZlcmlmaWNhdGlvbih2ZXJpZnlQZWVyOiB0cnVlKTsKICoKICogJHRyYW5zcG9ydCA9IG90bHBfY3VybF90cmFuc3BvcnQoJGVuZHBvaW50LCAkc2VyaWFsaXplciwgJG9wdGlvbnMpOwogKiBgYGAKICov"},{"repository_path":"src\/bridge\/telemetry\/otlp\/src\/Flow\/Bridge\/Telemetry\/OTLP\/DSL\/functions.php","start_line_in_file":201,"slug":"otlp-curl-transport","name":"otlp_curl_transport","namespace":"Flow\\Bridge\\Telemetry\\OTLP\\DSL","parameters":[{"name":"endpoint","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"serializer","type":[{"name":"Serializer","namespace":"Flow\\Telemetry\\Serializer","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"options","type":[{"name":"CurlTransportOptions","namespace":"Flow\\Bridge\\Telemetry\\OTLP\\Transport","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\Bridge\\Telemetry\\OTLP\\Transport\\CurlTransportOptions::..."}],"return_type":[{"name":"CurlTransport","namespace":"Flow\\Bridge\\Telemetry\\OTLP\\Transport","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY_OTLP","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBhc3luYyBjdXJsIHRyYW5zcG9ydCBmb3IgT1RMUCBlbmRwb2ludHMuCiAqCiAqIENyZWF0ZXMgYSBDdXJsVHJhbnNwb3J0IHRoYXQgdXNlcyBjdXJsX211bHRpIGZvciBub24tYmxvY2tpbmcgSS9PLgogKiBVbmxpa2UgSHR0cFRyYW5zcG9ydCAoUFNSLTE4KSwgdGhpcyB0cmFuc3BvcnQgcXVldWVzIHJlcXVlc3RzIGFuZCBleGVjdXRlcwogKiB0aGVtIGFzeW5jaHJvbm91c2x5LiBDb21wbGV0ZWQgcmVxdWVzdHMgYXJlIHByb2Nlc3NlZCBvbiBzdWJzZXF1ZW50IHNlbmQoKQogKiBjYWxscyBvciBvbiBzaHV0ZG93bigpLgogKgogKiBSZXF1aXJlczogZXh0LWN1cmwgUEhQIGV4dGVuc2lvbgogKgogKiBFeGFtcGxlIHVzYWdlOgogKiBgYGBwaHAKICogLy8gSlNPTiBvdmVyIEhUVFAgKGFzeW5jKSB3aXRoIGRlZmF1bHQgb3B0aW9ucwogKiAkdHJhbnNwb3J0ID0gb3RscF9jdXJsX3RyYW5zcG9ydCgKICogICAgIGVuZHBvaW50OiAnaHR0cDovL2xvY2FsaG9zdDo0MzE4JywKICogICAgIHNlcmlhbGl6ZXI6IG90bHBfanNvbl9zZXJpYWxpemVyKCksCiAqICk7CiAqCiAqIC8vIFByb3RvYnVmIG92ZXIgSFRUUCAoYXN5bmMpIHdpdGggY3VzdG9tIG9wdGlvbnMKICogJHRyYW5zcG9ydCA9IG90bHBfY3VybF90cmFuc3BvcnQoCiAqICAgICBlbmRwb2ludDogJ2h0dHA6Ly9sb2NhbGhvc3Q6NDMxOCcsCiAqICAgICBzZXJpYWxpemVyOiBvdGxwX3Byb3RvYnVmX3NlcmlhbGl6ZXIoKSwKICogICAgIG9wdGlvbnM6IG90bHBfY3VybF9vcHRpb25zKCkKICogICAgICAgICAtPndpdGhUaW1lb3V0KDYwKQogKiAgICAgICAgIC0+d2l0aEhlYWRlcignQXV0aG9yaXphdGlvbicsICdCZWFyZXIgdG9rZW4nKQogKiAgICAgICAgIC0+d2l0aENvbXByZXNzaW9uKCksCiAqICk7CiAqIGBgYAogKgogKiBAcGFyYW0gc3RyaW5nICRlbmRwb2ludCBPVExQIGVuZHBvaW50IFVSTCAoZS5nLiwgJ2h0dHA6Ly9sb2NhbGhvc3Q6NDMxOCcpCiAqIEBwYXJhbSBTZXJpYWxpemVyICRzZXJpYWxpemVyIFNlcmlhbGl6ZXIgZm9yIGVuY29kaW5nIHRlbGVtZXRyeSBkYXRhIChKU09OIG9yIFByb3RvYnVmKQogKiBAcGFyYW0gQ3VybFRyYW5zcG9ydE9wdGlvbnMgJG9wdGlvbnMgVHJhbnNwb3J0IGNvbmZpZ3VyYXRpb24gb3B0aW9ucwogKi8="},{"repository_path":"src\/bridge\/telemetry\/otlp\/src\/Flow\/Bridge\/Telemetry\/OTLP\/DSL\/functions.php","start_line_in_file":221,"slug":"otlp-span-exporter","name":"otlp_span_exporter","namespace":"Flow\\Bridge\\Telemetry\\OTLP\\DSL","parameters":[{"name":"transport","type":[{"name":"Transport","namespace":"Flow\\Telemetry\\Transport","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"OTLPSpanExporter","namespace":"Flow\\Bridge\\Telemetry\\OTLP\\Exporter","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY_OTLP","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBPVExQIHNwYW4gZXhwb3J0ZXIuCiAqCiAqIEV4YW1wbGUgdXNhZ2U6CiAqIGBgYHBocAogKiAkZXhwb3J0ZXIgPSBvdGxwX3NwYW5fZXhwb3J0ZXIoJHRyYW5zcG9ydCk7CiAqICRwcm9jZXNzb3IgPSBiYXRjaGluZ19zcGFuX3Byb2Nlc3NvcigkZXhwb3J0ZXIpOwogKiBgYGAKICoKICogQHBhcmFtIFRyYW5zcG9ydCAkdHJhbnNwb3J0IFRoZSB0cmFuc3BvcnQgZm9yIHNlbmRpbmcgc3BhbiBkYXRhCiAqLw=="},{"repository_path":"src\/bridge\/telemetry\/otlp\/src\/Flow\/Bridge\/Telemetry\/OTLP\/DSL\/functions.php","start_line_in_file":238,"slug":"otlp-metric-exporter","name":"otlp_metric_exporter","namespace":"Flow\\Bridge\\Telemetry\\OTLP\\DSL","parameters":[{"name":"transport","type":[{"name":"Transport","namespace":"Flow\\Telemetry\\Transport","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"OTLPMetricExporter","namespace":"Flow\\Bridge\\Telemetry\\OTLP\\Exporter","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY_OTLP","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBPVExQIG1ldHJpYyBleHBvcnRlci4KICoKICogRXhhbXBsZSB1c2FnZToKICogYGBgcGhwCiAqICRleHBvcnRlciA9IG90bHBfbWV0cmljX2V4cG9ydGVyKCR0cmFuc3BvcnQpOwogKiAkcHJvY2Vzc29yID0gYmF0Y2hpbmdfbWV0cmljX3Byb2Nlc3NvcigkZXhwb3J0ZXIpOwogKiBgYGAKICoKICogQHBhcmFtIFRyYW5zcG9ydCAkdHJhbnNwb3J0IFRoZSB0cmFuc3BvcnQgZm9yIHNlbmRpbmcgbWV0cmljIGRhdGEKICov"},{"repository_path":"src\/bridge\/telemetry\/otlp\/src\/Flow\/Bridge\/Telemetry\/OTLP\/DSL\/functions.php","start_line_in_file":255,"slug":"otlp-log-exporter","name":"otlp_log_exporter","namespace":"Flow\\Bridge\\Telemetry\\OTLP\\DSL","parameters":[{"name":"transport","type":[{"name":"Transport","namespace":"Flow\\Telemetry\\Transport","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"OTLPLogExporter","namespace":"Flow\\Bridge\\Telemetry\\OTLP\\Exporter","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY_OTLP","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBPVExQIGxvZyBleHBvcnRlci4KICoKICogRXhhbXBsZSB1c2FnZToKICogYGBgcGhwCiAqICRleHBvcnRlciA9IG90bHBfbG9nX2V4cG9ydGVyKCR0cmFuc3BvcnQpOwogKiAkcHJvY2Vzc29yID0gYmF0Y2hpbmdfbG9nX3Byb2Nlc3NvcigkZXhwb3J0ZXIpOwogKiBgYGAKICoKICogQHBhcmFtIFRyYW5zcG9ydCAkdHJhbnNwb3J0IFRoZSB0cmFuc3BvcnQgZm9yIHNlbmRpbmcgbG9nIGRhdGEKICov"},{"repository_path":"src\/bridge\/telemetry\/otlp\/src\/Flow\/Bridge\/Telemetry\/OTLP\/DSL\/functions.php","start_line_in_file":276,"slug":"otlp-tracer-provider","name":"otlp_tracer_provider","namespace":"Flow\\Bridge\\Telemetry\\OTLP\\DSL","parameters":[{"name":"processor","type":[{"name":"SpanProcessor","namespace":"Flow\\Telemetry\\Tracer","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"clock","type":[{"name":"ClockInterface","namespace":"Psr\\Clock","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"sampler","type":[{"name":"Sampler","namespace":"Flow\\Telemetry\\Tracer\\Sampler","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\Telemetry\\Tracer\\Sampler\\AlwaysOnSampler::..."},{"name":"contextStorage","type":[{"name":"ContextStorage","namespace":"Flow\\Telemetry\\Context","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\Telemetry\\Context\\MemoryContextStorage::..."}],"return_type":[{"name":"TracerProvider","namespace":"Flow\\Telemetry\\Tracer","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY_OTLP","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIHRyYWNlciBwcm92aWRlciBjb25maWd1cmVkIGZvciBPVExQIGV4cG9ydC4KICoKICogRXhhbXBsZSB1c2FnZToKICogYGBgcGhwCiAqICRwcm9jZXNzb3IgPSBiYXRjaGluZ19zcGFuX3Byb2Nlc3NvcihvdGxwX3NwYW5fZXhwb3J0ZXIoJHRyYW5zcG9ydCkpOwogKiAkcHJvdmlkZXIgPSBvdGxwX3RyYWNlcl9wcm92aWRlcigkcHJvY2Vzc29yLCAkY2xvY2spOwogKiAkdHJhY2VyID0gJHByb3ZpZGVyLT50cmFjZXIoJHJlc291cmNlLCAnbXktc2VydmljZScsICcxLjAuMCcpOwogKiBgYGAKICoKICogQHBhcmFtIFNwYW5Qcm9jZXNzb3IgJHByb2Nlc3NvciBUaGUgcHJvY2Vzc29yIGZvciBoYW5kbGluZyBzcGFucwogKiBAcGFyYW0gQ2xvY2tJbnRlcmZhY2UgJGNsb2NrIFRoZSBjbG9jayBmb3IgdGltZXN0YW1wcwogKiBAcGFyYW0gU2FtcGxlciAkc2FtcGxlciBUaGUgc2FtcGxlciBmb3IgZGVjaWRpbmcgd2hldGhlciB0byByZWNvcmQgc3BhbnMKICogQHBhcmFtIENvbnRleHRTdG9yYWdlICRjb250ZXh0U3RvcmFnZSBUaGUgY29udGV4dCBzdG9yYWdlIGZvciBwcm9wYWdhdGluZyB0cmFjZSBjb250ZXh0CiAqLw=="},{"repository_path":"src\/bridge\/telemetry\/otlp\/src\/Flow\/Bridge\/Telemetry\/OTLP\/DSL\/functions.php","start_line_in_file":300,"slug":"otlp-meter-provider","name":"otlp_meter_provider","namespace":"Flow\\Bridge\\Telemetry\\OTLP\\DSL","parameters":[{"name":"processor","type":[{"name":"MetricProcessor","namespace":"Flow\\Telemetry\\Meter","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"clock","type":[{"name":"ClockInterface","namespace":"Psr\\Clock","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"temporality","type":[{"name":"AggregationTemporality","namespace":"Flow\\Telemetry\\Meter","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\Telemetry\\Meter\\AggregationTemporality::..."}],"return_type":[{"name":"MeterProvider","namespace":"Flow\\Telemetry\\Meter","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY_OTLP","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIG1ldGVyIHByb3ZpZGVyIGNvbmZpZ3VyZWQgZm9yIE9UTFAgZXhwb3J0LgogKgogKiBFeGFtcGxlIHVzYWdlOgogKiBgYGBwaHAKICogJHByb2Nlc3NvciA9IGJhdGNoaW5nX21ldHJpY19wcm9jZXNzb3Iob3RscF9tZXRyaWNfZXhwb3J0ZXIoJHRyYW5zcG9ydCkpOwogKiAkcHJvdmlkZXIgPSBvdGxwX21ldGVyX3Byb3ZpZGVyKCRwcm9jZXNzb3IsICRjbG9jayk7CiAqICRtZXRlciA9ICRwcm92aWRlci0+bWV0ZXIoJHJlc291cmNlLCAnbXktc2VydmljZScsICcxLjAuMCcpOwogKiBgYGAKICoKICogQHBhcmFtIE1ldHJpY1Byb2Nlc3NvciAkcHJvY2Vzc29yIFRoZSBwcm9jZXNzb3IgZm9yIGhhbmRsaW5nIG1ldHJpY3MKICogQHBhcmFtIENsb2NrSW50ZXJmYWNlICRjbG9jayBUaGUgY2xvY2sgZm9yIHRpbWVzdGFtcHMKICogQHBhcmFtIEFnZ3JlZ2F0aW9uVGVtcG9yYWxpdHkgJHRlbXBvcmFsaXR5IFRoZSBhZ2dyZWdhdGlvbiB0ZW1wb3JhbGl0eSBmb3IgbWV0cmljcwogKi8="},{"repository_path":"src\/bridge\/telemetry\/otlp\/src\/Flow\/Bridge\/Telemetry\/OTLP\/DSL\/functions.php","start_line_in_file":323,"slug":"otlp-logger-provider","name":"otlp_logger_provider","namespace":"Flow\\Bridge\\Telemetry\\OTLP\\DSL","parameters":[{"name":"processor","type":[{"name":"LogProcessor","namespace":"Flow\\Telemetry\\Logger","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"clock","type":[{"name":"ClockInterface","namespace":"Psr\\Clock","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"contextStorage","type":[{"name":"ContextStorage","namespace":"Flow\\Telemetry\\Context","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\Telemetry\\Context\\MemoryContextStorage::..."}],"return_type":[{"name":"LoggerProvider","namespace":"Flow\\Telemetry\\Logger","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY_OTLP","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGxvZ2dlciBwcm92aWRlciBjb25maWd1cmVkIGZvciBPVExQIGV4cG9ydC4KICoKICogRXhhbXBsZSB1c2FnZToKICogYGBgcGhwCiAqICRwcm9jZXNzb3IgPSBiYXRjaGluZ19sb2dfcHJvY2Vzc29yKG90bHBfbG9nX2V4cG9ydGVyKCR0cmFuc3BvcnQpKTsKICogJHByb3ZpZGVyID0gb3RscF9sb2dnZXJfcHJvdmlkZXIoJHByb2Nlc3NvciwgJGNsb2NrKTsKICogJGxvZ2dlciA9ICRwcm92aWRlci0+bG9nZ2VyKCRyZXNvdXJjZSwgJ215LXNlcnZpY2UnLCAnMS4wLjAnKTsKICogYGBgCiAqCiAqIEBwYXJhbSBMb2dQcm9jZXNzb3IgJHByb2Nlc3NvciBUaGUgcHJvY2Vzc29yIGZvciBoYW5kbGluZyBsb2cgcmVjb3JkcwogKiBAcGFyYW0gQ2xvY2tJbnRlcmZhY2UgJGNsb2NrIFRoZSBjbG9jayBmb3IgdGltZXN0YW1wcwogKiBAcGFyYW0gQ29udGV4dFN0b3JhZ2UgJGNvbnRleHRTdG9yYWdlIFRoZSBjb250ZXh0IHN0b3JhZ2UgZm9yIHByb3BhZ2F0aW5nIGNvbnRleHQKICov"}] \ No newline at end of file +[{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":255,"slug":"df","name":"df","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"config","type":[{"name":"Config","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false},{"name":"ConfigBuilder","namespace":"Flow\\ETL\\Config","is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Flow","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}},{"name":"DocumentationExample","namespace":"Flow\\ETL\\Attribute","arguments":{"topic":"data_frame","example":"data_reading","option":"data_frame"}},{"name":"DocumentationExample","namespace":"Flow\\ETL\\Attribute","arguments":{"topic":"data_frame","example":"data_writing","option":"overwrite"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEFsaWFzIGZvciBkYXRhX2ZyYW1lKCkgOiBGbG93LgogKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":263,"slug":"data-frame","name":"data_frame","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"config","type":[{"name":"Config","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false},{"name":"ConfigBuilder","namespace":"Flow\\ETL\\Config","is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Flow","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}},{"name":"DocumentationExample","namespace":"Flow\\ETL\\Attribute","arguments":{"topic":"data_frame","example":"data_reading","option":"data_frame"}},{"name":"DocumentationExample","namespace":"Flow\\ETL\\Attribute","arguments":{"topic":"data_frame","example":"data_writing","option":"overwrite"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":269,"slug":"telemetry-options","name":"telemetry_options","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"trace_loading","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"trace_transformations","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"trace_cache","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"collect_metrics","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"filesystem","type":[{"name":"FilesystemTelemetryOptions","namespace":"Flow\\Filesystem\\Telemetry","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"TelemetryOptions","namespace":"Flow\\ETL\\Config\\Telemetry","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":288,"slug":"from-rows","name":"from_rows","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"rows","type":[{"name":"Rows","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"RowsExtractor","namespace":"Flow\\ETL\\Extractor","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"EXTRACTOR"}},{"name":"DocumentationExample","namespace":"Flow\\ETL\\Attribute","arguments":{"topic":"data_frame","example":"data_reading","option":"data_frame"}},{"name":"DocumentationExample","namespace":"Flow\\ETL\\Attribute","arguments":{"topic":"data_frame","example":"data_writing","option":"overwrite"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":295,"slug":"from-path-partitions","name":"from_path_partitions","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"path","type":[{"name":"Path","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"PathPartitionsExtractor","namespace":"Flow\\ETL\\Extractor","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"EXTRACTOR"}},{"name":"DocumentationExample","namespace":"Flow\\ETL\\Attribute","arguments":{"topic":"partitioning","example":"path_partitions"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":307,"slug":"from-array","name":"from_array","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"array","type":[{"name":"iterable","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"schema","type":[{"name":"Schema","namespace":"Flow\\ETL","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"ArrayExtractor","namespace":"Flow\\ETL\\Extractor","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"EXTRACTOR"}},{"name":"DocumentationExample","namespace":"Flow\\ETL\\Attribute","arguments":{"topic":"data_frame","example":"data_reading","option":"array"}},{"name":"DocumentationExample","namespace":"Flow\\ETL\\Attribute","arguments":{"topic":"data_frame","example":"data_reading","option":"data_frame"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBpdGVyYWJsZTxhcnJheTxtaXhlZD4+ICRhcnJheQogKiBAcGFyYW0gbnVsbHxTY2hlbWEgJHNjaGVtYSAtIEBkZXByZWNhdGVkIHVzZSB3aXRoU2NoZW1hKCkgbWV0aG9kIGluc3RlYWQKICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":324,"slug":"from-cache","name":"from_cache","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"id","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"fallback_extractor","type":[{"name":"Extractor","namespace":"Flow\\ETL","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"clear","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"CacheExtractor","namespace":"Flow\\ETL\\Extractor","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"EXTRACTOR"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBzdHJpbmcgJGlkIC0gY2FjaGUgaWQgZnJvbSB3aGljaCBkYXRhIHdpbGwgYmUgZXh0cmFjdGVkCiAqIEBwYXJhbSBudWxsfEV4dHJhY3RvciAkZmFsbGJhY2tfZXh0cmFjdG9yIC0gZXh0cmFjdG9yIHRoYXQgd2lsbCBiZSB1c2VkIHdoZW4gY2FjaGUgaXMgZW1wdHkgLSBAZGVwcmVjYXRlZCB1c2Ugd2l0aEZhbGxiYWNrRXh0cmFjdG9yKCkgbWV0aG9kIGluc3RlYWQKICogQHBhcmFtIGJvb2wgJGNsZWFyIC0gY2xlYXIgY2FjaGUgYWZ0ZXIgZXh0cmFjdGlvbiAtIEBkZXByZWNhdGVkIHVzZSB3aXRoQ2xlYXJPbkZpbmlzaCgpIG1ldGhvZCBpbnN0ZWFkCiAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":340,"slug":"from-all","name":"from_all","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"extractors","type":[{"name":"Extractor","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"ChainExtractor","namespace":"Flow\\ETL\\Extractor","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"EXTRACTOR"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":346,"slug":"from-memory","name":"from_memory","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"memory","type":[{"name":"Memory","namespace":"Flow\\ETL\\Memory","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"MemoryExtractor","namespace":"Flow\\ETL\\Extractor","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"EXTRACTOR"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":352,"slug":"files","name":"files","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"directory","type":[{"name":"Path","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"FilesExtractor","namespace":"Flow\\ETL\\Extractor","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"EXTRACTOR"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":358,"slug":"filesystem-cache","name":"filesystem_cache","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"cache_dir","type":[{"name":"Path","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"filesystem","type":[{"name":"Filesystem","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\Filesystem\\Local\\NativeLocalFilesystem::..."},{"name":"serializer","type":[{"name":"Serializer","namespace":"Flow\\Serializer","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\Serializer\\NativePHPSerializer::..."}],"return_type":[{"name":"FilesystemCache","namespace":"Flow\\ETL\\Cache\\Implementation","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":367,"slug":"batched-by","name":"batched_by","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"extractor","type":[{"name":"Extractor","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"column","type":[{"name":"Reference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"min_size","type":[{"name":"int","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"BatchByExtractor","namespace":"Flow\\ETL\\Extractor","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"EXTRACTOR"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBudWxsfGludDwxLCBtYXg+ICRtaW5fc2l6ZQogKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":380,"slug":"batches","name":"batches","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"extractor","type":[{"name":"Extractor","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"size","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"BatchExtractor","namespace":"Flow\\ETL\\Extractor","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"EXTRACTOR"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBpbnQ8MSwgbWF4PiAkc2l6ZQogKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":391,"slug":"chunks-from","name":"chunks_from","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"extractor","type":[{"name":"Extractor","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"chunk_size","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"BatchExtractor","namespace":"Flow\\ETL\\Extractor","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"EXTRACTOR"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBpbnQ8MSwgbWF4PiAkY2h1bmtfc2l6ZQogKgogKiBAZGVwcmVjYXRlZCB1c2UgYmF0Y2hlcygpIGluc3RlYWQKICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":397,"slug":"from-pipeline","name":"from_pipeline","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"pipeline","type":[{"name":"Pipeline","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"PipelineExtractor","namespace":"Flow\\ETL\\Extractor","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"EXTRACTOR"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":403,"slug":"from-data-frame","name":"from_data_frame","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"data_frame","type":[{"name":"DataFrame","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"DataFrameExtractor","namespace":"Flow\\ETL\\Extractor","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"EXTRACTOR"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":409,"slug":"from-sequence-date-period","name":"from_sequence_date_period","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"entry_name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"start","type":[{"name":"DateTimeInterface","namespace":"","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"interval","type":[{"name":"DateInterval","namespace":"","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"end","type":[{"name":"DateTimeInterface","namespace":"","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"options","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"0"}],"return_type":[{"name":"SequenceExtractor","namespace":"Flow\\ETL\\Extractor","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"EXTRACTOR"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":418,"slug":"from-sequence-date-period-recurrences","name":"from_sequence_date_period_recurrences","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"entry_name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"start","type":[{"name":"DateTimeInterface","namespace":"","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"interval","type":[{"name":"DateInterval","namespace":"","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"recurrences","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"options","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"0"}],"return_type":[{"name":"SequenceExtractor","namespace":"Flow\\ETL\\Extractor","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"EXTRACTOR"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":427,"slug":"from-sequence-number","name":"from_sequence_number","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"entry_name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"start","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"float","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"end","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"float","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"step","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"float","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"1"}],"return_type":[{"name":"SequenceExtractor","namespace":"Flow\\ETL\\Extractor","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"EXTRACTOR"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":436,"slug":"to-callable","name":"to_callable","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"callable","type":[{"name":"callable","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"CallbackLoader","namespace":"Flow\\ETL\\Loader","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"LOADER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":442,"slug":"to-memory","name":"to_memory","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"memory","type":[{"name":"Memory","namespace":"Flow\\ETL\\Memory","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"MemoryLoader","namespace":"Flow\\ETL\\Loader","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"LOADER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":456,"slug":"to-array","name":"to_array","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"array","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ArrayLoader","namespace":"Flow\\ETL\\Loader","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"LOADER"}},{"name":"DocumentationExample","namespace":"Flow\\ETL\\Attribute","arguments":{"topic":"data_frame","example":"data_writing","option":"array"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENvbnZlcnQgcm93cyB0byBhbiBhcnJheSBhbmQgc3RvcmUgdGhlbSBpbiBwYXNzZWQgYXJyYXkgdmFyaWFibGUuCiAqCiAqIEBwYXJhbSBhcnJheTxhcnJheS1rZXksIG1peGVkPiAkYXJyYXkKICoKICogQHBhcmFtLW91dCBhcnJheTxhcnJheTxtaXhlZD4+ICRhcnJheQogKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":463,"slug":"to-output","name":"to_output","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"truncate","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"20"},{"name":"output","type":[{"name":"Output","namespace":"Flow\\ETL\\Loader\\StreamLoader","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Loader\\StreamLoader\\Output::..."},{"name":"formatter","type":[{"name":"Formatter","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Formatter\\AsciiTableFormatter::..."},{"name":"schemaFormatter","type":[{"name":"SchemaFormatter","namespace":"Flow\\ETL\\Schema","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Row\\Formatter\\ASCIISchemaFormatter::..."}],"return_type":[{"name":"StreamLoader","namespace":"Flow\\ETL\\Loader","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"LOADER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":469,"slug":"to-stderr","name":"to_stderr","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"truncate","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"20"},{"name":"output","type":[{"name":"Output","namespace":"Flow\\ETL\\Loader\\StreamLoader","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Loader\\StreamLoader\\Output::..."},{"name":"formatter","type":[{"name":"Formatter","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Formatter\\AsciiTableFormatter::..."},{"name":"schemaFormatter","type":[{"name":"SchemaFormatter","namespace":"Flow\\ETL\\Schema","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Row\\Formatter\\ASCIISchemaFormatter::..."}],"return_type":[{"name":"StreamLoader","namespace":"Flow\\ETL\\Loader","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"LOADER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":475,"slug":"to-stdout","name":"to_stdout","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"truncate","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"20"},{"name":"output","type":[{"name":"Output","namespace":"Flow\\ETL\\Loader\\StreamLoader","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Loader\\StreamLoader\\Output::..."},{"name":"formatter","type":[{"name":"Formatter","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Formatter\\AsciiTableFormatter::..."},{"name":"schemaFormatter","type":[{"name":"SchemaFormatter","namespace":"Flow\\ETL\\Schema","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Row\\Formatter\\ASCIISchemaFormatter::..."}],"return_type":[{"name":"StreamLoader","namespace":"Flow\\ETL\\Loader","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"LOADER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":481,"slug":"to-stream","name":"to_stream","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"uri","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"truncate","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"20"},{"name":"output","type":[{"name":"Output","namespace":"Flow\\ETL\\Loader\\StreamLoader","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Loader\\StreamLoader\\Output::..."},{"name":"mode","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'w'"},{"name":"formatter","type":[{"name":"Formatter","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Formatter\\AsciiTableFormatter::..."},{"name":"schemaFormatter","type":[{"name":"SchemaFormatter","namespace":"Flow\\ETL\\Schema","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Row\\Formatter\\ASCIISchemaFormatter::..."}],"return_type":[{"name":"StreamLoader","namespace":"Flow\\ETL\\Loader","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"LOADER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":487,"slug":"to-transformation","name":"to_transformation","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"transformer","type":[{"name":"Transformer","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false},{"name":"Transformation","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"loader","type":[{"name":"Loader","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"TransformerLoader","namespace":"Flow\\ETL\\Loader","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"LOADER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":493,"slug":"to-branch","name":"to_branch","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"condition","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"loader","type":[{"name":"Loader","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"BranchingLoader","namespace":"Flow\\ETL\\Loader","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"LOADER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":499,"slug":"rename-style","name":"rename_style","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"style","type":[{"name":"StringStyles","namespace":"Flow\\ETL\\String","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"RenameCaseEntryStrategy","namespace":"Flow\\ETL\\Transformer\\Rename","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"TRANSFORMER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":509,"slug":"rename-replace","name":"rename_replace","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"search","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"replace","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"RenameReplaceEntryStrategy","namespace":"Flow\\ETL\\Transformer\\Rename","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"TRANSFORMER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxzdHJpbmc+fHN0cmluZyAkc2VhcmNoCiAqIEBwYXJhbSBhcnJheTxzdHJpbmc+fHN0cmluZyAkcmVwbGFjZQogKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":518,"slug":"rename-map","name":"rename_map","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"renames","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"RenameMapEntryStrategy","namespace":"Flow\\ETL\\Transformer\\Rename","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"TRANSFORMER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxzdHJpbmcsIHN0cmluZz4gJHJlbmFtZXMgTWFwIG9mIG9sZF9uYW1lID0+IG5ld19uYW1lCiAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":527,"slug":"bool-entry","name":"bool_entry","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"value","type":[{"name":"bool","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Entry","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"ENTRY"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gRW50cnk8P2Jvb2w+CiAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":536,"slug":"boolean-entry","name":"boolean_entry","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"value","type":[{"name":"bool","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Entry","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"ENTRY"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gRW50cnk8P2Jvb2w+CiAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":545,"slug":"datetime-entry","name":"datetime_entry","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"value","type":[{"name":"DateTimeInterface","namespace":"","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Entry","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"ENTRY"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gRW50cnk8P1xEYXRlVGltZUludGVyZmFjZT4KICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":554,"slug":"time-entry","name":"time_entry","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"value","type":[{"name":"DateInterval","namespace":"","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Entry","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"ENTRY"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gRW50cnk8P1xEYXRlSW50ZXJ2YWw+CiAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":563,"slug":"date-entry","name":"date_entry","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"value","type":[{"name":"DateTimeInterface","namespace":"","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Entry","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"ENTRY"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gRW50cnk8P1xEYXRlVGltZUludGVyZmFjZT4KICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":572,"slug":"int-entry","name":"int_entry","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"value","type":[{"name":"int","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Entry","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"ENTRY"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gRW50cnk8P2ludD4KICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":581,"slug":"integer-entry","name":"integer_entry","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"value","type":[{"name":"int","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Entry","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"ENTRY"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gRW50cnk8P2ludD4KICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":590,"slug":"enum-entry","name":"enum_entry","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"enum","type":[{"name":"UnitEnum","namespace":"","is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Entry","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"ENTRY"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gRW50cnk8P1xVbml0RW51bT4KICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":599,"slug":"float-entry","name":"float_entry","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"value","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"float","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Entry","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"ENTRY"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gRW50cnk8P2Zsb2F0PgogKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":610,"slug":"json-entry","name":"json_entry","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"data","type":[{"name":"Json","namespace":"Flow\\Types\\Value","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Entry","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"ENTRY"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBudWxsfGFycmF5PGFycmF5LWtleSwgbWl4ZWQ+fEpzb258c3RyaW5nICRkYXRhCiAqCiAqIEByZXR1cm4gRW50cnk8P0pzb24+CiAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":623,"slug":"json-object-entry","name":"json_object_entry","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"data","type":[{"name":"Json","namespace":"Flow\\Types\\Value","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Entry","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"ENTRY"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBudWxsfGFycmF5PGFycmF5LWtleSwgbWl4ZWQ+fEpzb258c3RyaW5nICRkYXRhCiAqCiAqIEB0aHJvd3MgSW52YWxpZEFyZ3VtZW50RXhjZXB0aW9uCiAqCiAqIEByZXR1cm4gRW50cnk8P0pzb24+CiAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":640,"slug":"str-entry","name":"str_entry","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"value","type":[{"name":"string","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Entry","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"ENTRY"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gRW50cnk8P3N0cmluZz4KICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":658,"slug":"null-entry","name":"null_entry","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Entry","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"ENTRY"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIFRoaXMgZnVuY3Rpb25zIGlzIGFuIGFsaWFzIGZvciBjcmVhdGluZyBzdHJpbmcgZW50cnkgZnJvbSBudWxsLgogKiBUaGUgbWFpbiBkaWZmZXJlbmNlIGJldHdlZW4gdXNpbmcgdGhpcyBmdW5jdGlvbiBhbiBzaW1wbHkgc3RyX2VudHJ5IHdpdGggc2Vjb25kIGFyZ3VtZW50IG51bGwKICogaXMgdGhhdCB0aGlzIGZ1bmN0aW9uIHdpbGwgYWxzbyBrZWVwIGEgbm90ZSBpbiB0aGUgbWV0YWRhdGEgdGhhdCB0eXBlIG1pZ2h0IG5vdCBiZSBmaW5hbC4KICogRm9yIGV4YW1wbGUgd2hlbiB3ZSBuZWVkIHRvIGd1ZXNzIGNvbHVtbiB0eXBlIGZyb20gcm93cyBiZWNhdXNlIHNjaGVtYSB3YXMgbm90IHByb3ZpZGVkLAogKiBhbmQgZ2l2ZW4gY29sdW1uIGluIHRoZSBmaXJzdCByb3cgaXMgbnVsbCwgaXQgbWlnaHQgc3RpbGwgY2hhbmdlIG9uY2Ugd2UgZ2V0IHRvIHRoZSBzZWNvbmQgcm93LgogKiBUaGF0IG1ldGFkYXRhIGlzIHVzZWQgdG8gZGV0ZXJtaW5lIGlmIHN0cmluZ19lbnRyeSB3YXMgY3JlYXRlZCBmcm9tIG51bGwgb3Igbm90LgogKgogKiBCeSBkZXNpZ24gZmxvdyBhc3N1bWVzIHdoZW4gZ3Vlc3NpbmcgY29sdW1uIHR5cGUgdGhhdCBudWxsIHdvdWxkIGJlIGEgc3RyaW5nICh0aGUgbW9zdCBmbGV4aWJsZSB0eXBlKS4KICoKICogQHJldHVybiBFbnRyeTw\/c3RyaW5nPgogKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":667,"slug":"string-entry","name":"string_entry","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"value","type":[{"name":"string","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Entry","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"ENTRY"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gRW50cnk8P3N0cmluZz4KICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":676,"slug":"uuid-entry","name":"uuid_entry","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"value","type":[{"name":"Uuid","namespace":"Flow\\Types\\Value","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Entry","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"ENTRY"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gRW50cnk8P1xGbG93XFR5cGVzXFZhbHVlXFV1aWQ+CiAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":685,"slug":"xml-entry","name":"xml_entry","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"value","type":[{"name":"DOMDocument","namespace":"","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Entry","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"ENTRY"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gRW50cnk8P1xET01Eb2N1bWVudD4KICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":694,"slug":"xml-element-entry","name":"xml_element_entry","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"value","type":[{"name":"DOMElement","namespace":"","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Entry","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"ENTRY"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gRW50cnk8P1xET01FbGVtZW50PgogKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":703,"slug":"html-entry","name":"html_entry","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"value","type":[{"name":"Dom\\HTMLDocument","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Entry","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"ENTRY"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gRW50cnk8P0hUTUxEb2N1bWVudD4KICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":712,"slug":"html-element-entry","name":"html_element_entry","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"value","type":[{"name":"Dom\\HTMLElement","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Entry","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"ENTRY"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gRW50cnk8P0hUTUxFbGVtZW50PgogKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":721,"slug":"entries","name":"entries","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"entries","type":[{"name":"Entry","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"Entries","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBFbnRyeTxtaXhlZD4gLi4uJGVudHJpZXMKICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":735,"slug":"struct-entry","name":"struct_entry","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"value","type":[{"name":"array","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"type","type":[{"name":"StructureType","namespace":"Flow\\Types\\Type\\Logical","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Entry","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"ENTRY"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEB0ZW1wbGF0ZSBUCiAqCiAqIEBwYXJhbSA\/YXJyYXk8c3RyaW5nLCBtaXhlZD4gJHZhbHVlCiAqIEBwYXJhbSBTdHJ1Y3R1cmVUeXBlPFQ+ICR0eXBlCiAqCiAqIEByZXR1cm4gRW50cnk8P2FycmF5PHN0cmluZywgVD4+CiAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":749,"slug":"structure-entry","name":"structure_entry","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"value","type":[{"name":"array","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"type","type":[{"name":"StructureType","namespace":"Flow\\Types\\Type\\Logical","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Entry","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"ENTRY"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEB0ZW1wbGF0ZSBUCiAqCiAqIEBwYXJhbSA\/YXJyYXk8c3RyaW5nLCBtaXhlZD4gJHZhbHVlCiAqIEBwYXJhbSBTdHJ1Y3R1cmVUeXBlPFQ+ICR0eXBlCiAqCiAqIEByZXR1cm4gRW50cnk8P2FycmF5PHN0cmluZywgVD4+CiAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":859,"slug":"list-entry","name":"list_entry","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"value","type":[{"name":"array","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"type","type":[{"name":"ListType","namespace":"Flow\\Types\\Type\\Logical","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Entry","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"ENTRY"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEB0ZW1wbGF0ZSBUCiAqCiAqIEBwYXJhbSBudWxsfGxpc3Q8bWl4ZWQ+ICR2YWx1ZQogKiBAcGFyYW0gTGlzdFR5cGU8VD4gJHR5cGUKICoKICogQHJldHVybiBFbnRyeTxtaXhlZD4KICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":905,"slug":"map-entry","name":"map_entry","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"value","type":[{"name":"array","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"mapType","type":[{"name":"MapType","namespace":"Flow\\Types\\Type\\Logical","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Entry","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"ENTRY"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEB0ZW1wbGF0ZSBUS2V5IG9mIGFycmF5LWtleQogKiBAdGVtcGxhdGUgVFZhbHVlCiAqCiAqIEBwYXJhbSA\/YXJyYXk8YXJyYXkta2V5LCBtaXhlZD4gJHZhbHVlCiAqIEBwYXJhbSBNYXBUeXBlPFRLZXksIFRWYWx1ZT4gJG1hcFR5cGUKICoKICogQHJldHVybiBFbnRyeTw\/YXJyYXk8VEtleSwgVFZhbHVlPj4KICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":938,"slug":"type-date","name":"type_date","namespace":"Flow\\ETL\\DSL","parameters":[],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBkZXByZWNhdGVkIHBsZWFzZSB1c2UgXEZsb3dcVHlwZXNcRFNMXHR5cGVfZGF0ZSgpIDogRGF0ZVR5cGUKICoKICogQHJldHVybiBUeXBlPFxEYXRlVGltZUludGVyZmFjZT4KICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":993,"slug":"type-int","name":"type_int","namespace":"Flow\\ETL\\DSL","parameters":[],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBkZXByZWNhdGVkIHBsZWFzZSB1c2UgXEZsb3dcVHlwZXNcRFNMXHR5cGVfaW50ZWdlcigpIDogSW50ZWdlclR5cGUKICoKICogQHJldHVybiBUeXBlPGludD4KICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1120,"slug":"row","name":"row","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"entry","type":[{"name":"Entry","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"Row","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBFbnRyeTxtaXhlZD4gLi4uJGVudHJ5CiAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1126,"slug":"rows","name":"rows","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"row","type":[{"name":"Row","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"Rows","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1136,"slug":"rows-partitioned","name":"rows_partitioned","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"rows","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"partitions","type":[{"name":"Partitions","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Rows","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxSb3c+ICRyb3dzCiAqIEBwYXJhbSBhcnJheTxcRmxvd1xGaWxlc3lzdGVtXFBhcnRpdGlvbnxzdHJpbmc+fFBhcnRpdGlvbnMgJHBhcnRpdGlvbnMKICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1145,"slug":"col","name":"col","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"entry","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"EntryReference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":true,"doc_comment":"LyoqCiAqIEFuIGFsaWFzIGZvciBgcmVmYC4KICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1155,"slug":"entry","name":"entry","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"entry","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"EntryReference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}},{"name":"DocumentationExample","namespace":"Flow\\ETL\\Attribute","arguments":{"topic":"data_frame","example":"columns","option":"create"}}],"scalar_function_chain":true,"doc_comment":"LyoqCiAqIEFuIGFsaWFzIGZvciBgcmVmYC4KICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1162,"slug":"ref","name":"ref","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"entry","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"EntryReference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}},{"name":"DocumentationExample","namespace":"Flow\\ETL\\Attribute","arguments":{"topic":"data_frame","example":"columns","option":"create"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1168,"slug":"structure-ref","name":"structure_ref","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"entry","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"StructureFunctions","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1174,"slug":"list-ref","name":"list_ref","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"entry","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ListFunctions","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1180,"slug":"refs","name":"refs","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"entries","type":[{"name":"Reference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"References","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1186,"slug":"select","name":"select","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"entries","type":[{"name":"Reference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"Select","namespace":"Flow\\ETL\\Transformation","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"TRANSFORMER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1192,"slug":"drop","name":"drop","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"entries","type":[{"name":"Reference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"Drop","namespace":"Flow\\ETL\\Transformation","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"TRANSFORMER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1198,"slug":"add-row-index","name":"add_row_index","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"column","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'index'"},{"name":"startFrom","type":[{"name":"StartFrom","namespace":"Flow\\ETL\\Transformation\\AddRowIndex","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Transformation\\AddRowIndex\\StartFrom::..."}],"return_type":[{"name":"AddRowIndex","namespace":"Flow\\ETL\\Transformation","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"TRANSFORMER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1207,"slug":"batch-size","name":"batch_size","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"size","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"BatchSize","namespace":"Flow\\ETL\\Transformation","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"TRANSFORMER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBpbnQ8MSwgbWF4PiAkc2l6ZQogKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1213,"slug":"limit","name":"limit","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"limit","type":[{"name":"int","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Limit","namespace":"Flow\\ETL\\Transformation","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"TRANSFORMER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1222,"slug":"mask-columns","name":"mask_columns","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"columns","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"},{"name":"mask","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'******'"}],"return_type":[{"name":"MaskColumns","namespace":"Flow\\ETL\\Transformation","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"TRANSFORMER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxpbnQsIHN0cmluZz4gJGNvbHVtbnMKICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1228,"slug":"optional","name":"optional","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"function","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Optional","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1235,"slug":"lit","name":"lit","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"value","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Literal","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}},{"name":"DocumentationExample","namespace":"Flow\\ETL\\Attribute","arguments":{"topic":"data_frame","example":"columns","option":"create"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1241,"slug":"exists","name":"exists","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"ref","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Exists","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1247,"slug":"when","name":"when","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"condition","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"then","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"else","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"When","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1253,"slug":"array-get","name":"array_get","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"ref","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"path","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ArrayGet","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1262,"slug":"array-get-collection","name":"array_get_collection","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"ref","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"keys","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ArrayGetCollection","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxhcnJheS1rZXksIG1peGVkPnxTY2FsYXJGdW5jdGlvbiAka2V5cwogKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1268,"slug":"array-get-collection-first","name":"array_get_collection_first","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"ref","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"keys","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"ArrayGetCollection","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1277,"slug":"array-exists","name":"array_exists","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"ref","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"path","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ArrayPathExists","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxhcnJheS1rZXksIG1peGVkPnxTY2FsYXJGdW5jdGlvbiAkcmVmCiAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1287,"slug":"array-merge","name":"array_merge","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"left","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"right","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ArrayMerge","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxhcnJheS1rZXksIG1peGVkPnxTY2FsYXJGdW5jdGlvbiAkbGVmdAogKiBAcGFyYW0gYXJyYXk8YXJyYXkta2V5LCBtaXhlZD58U2NhbGFyRnVuY3Rpb24gJHJpZ2h0CiAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1296,"slug":"array-merge-collection","name":"array_merge_collection","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"array","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ArrayMergeCollection","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxhcnJheS1rZXksIG1peGVkPnxTY2FsYXJGdW5jdGlvbiAkYXJyYXkKICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1302,"slug":"array-key-rename","name":"array_key_rename","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"ref","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"path","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"newName","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ArrayKeyRename","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1308,"slug":"array-keys-style-convert","name":"array_keys_style_convert","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"ref","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"style","type":[{"name":"StringStyles","namespace":"Flow\\ETL\\String","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\String\\StringStyles::..."}],"return_type":[{"name":"ArrayKeysStyleConvert","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1314,"slug":"array-sort","name":"array_sort","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"function","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"sort_function","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"Sort","namespace":"Flow\\ETL\\Function\\ArraySort","is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"flags","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"recursive","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"true"}],"return_type":[{"name":"ArraySort","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1327,"slug":"array-reverse","name":"array_reverse","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"function","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"preserveKeys","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"ArrayReverse","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxhcnJheS1rZXksIG1peGVkPnxTY2FsYXJGdW5jdGlvbiAkZnVuY3Rpb24KICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1333,"slug":"now","name":"now","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"time_zone","type":[{"name":"DateTimeZone","namespace":"","is_nullable":false,"is_variadic":false},{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"DateTimeZone::..."}],"return_type":[{"name":"Now","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1339,"slug":"between","name":"between","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"value","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"lower_bound","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"upper_bound","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"boundary","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"Boundary","namespace":"Flow\\ETL\\Function\\Between","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Function\\Between\\Boundary::..."}],"return_type":[{"name":"Between","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1345,"slug":"to-date-time","name":"to_date_time","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"ref","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"format","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'Y-m-d H:i:s'"},{"name":"timeZone","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"DateTimeZone","namespace":"","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"DateTimeZone::..."}],"return_type":[{"name":"ToDateTime","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1351,"slug":"to-date","name":"to_date","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"ref","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"format","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'Y-m-d'"},{"name":"timeZone","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"DateTimeZone","namespace":"","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"DateTimeZone::..."}],"return_type":[{"name":"ToDate","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1357,"slug":"date-time-format","name":"date_time_format","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"ref","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"format","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"DateTimeFormat","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1363,"slug":"split","name":"split","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"value","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"separator","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"limit","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"9223372036854775807"}],"return_type":[{"name":"Split","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1373,"slug":"combine","name":"combine","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"keys","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"values","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Combine","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxhcnJheS1rZXksIG1peGVkPnxTY2FsYXJGdW5jdGlvbiAka2V5cwogKiBAcGFyYW0gYXJyYXk8YXJyYXkta2V5LCBtaXhlZD58U2NhbGFyRnVuY3Rpb24gJHZhbHVlcwogKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1382,"slug":"concat","name":"concat","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"functions","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"Concat","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":"LyoqCiAqIENvbmNhdCBhbGwgdmFsdWVzLiBJZiB5b3Ugd2FudCB0byBjb25jYXRlbmF0ZSB2YWx1ZXMgd2l0aCBzZXBhcmF0b3IgdXNlIGNvbmNhdF93cyBmdW5jdGlvbi4KICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1391,"slug":"concat-ws","name":"concat_ws","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"separator","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"functions","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"ConcatWithSeparator","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":"LyoqCiAqIENvbmNhdCBhbGwgdmFsdWVzIHdpdGggc2VwYXJhdG9yLgogKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1397,"slug":"hash","name":"hash","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"value","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"algorithm","type":[{"name":"Algorithm","namespace":"Flow\\ETL\\Hash","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Hash\\NativePHPHash::..."}],"return_type":[{"name":"Hash","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1406,"slug":"cast","name":"cast","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"value","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"type","type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Cast","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":"LyoqCiAqIEBwYXJhbSBcRmxvd1xUeXBlc1xUeXBlPG1peGVkPnxzdHJpbmcgJHR5cGUKICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1412,"slug":"coalesce","name":"coalesce","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"values","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"Coalesce","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1418,"slug":"count","name":"count","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"function","type":[{"name":"EntryReference","namespace":"Flow\\ETL\\Row","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Count","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"AGGREGATING_FUNCTION"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1431,"slug":"call","name":"call","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"callable","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"callable","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"parameters","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"},{"name":"return_type","type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"CallUserFunc","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":"LyoqCiAqIENhbGxzIGEgdXNlci1kZWZpbmVkIGZ1bmN0aW9uIHdpdGggdGhlIGdpdmVuIHBhcmFtZXRlcnMuCiAqCiAqIEBwYXJhbSBjYWxsYWJsZXxTY2FsYXJGdW5jdGlvbiAkY2FsbGFibGUKICogQHBhcmFtIGFycmF5PG1peGVkPiAkcGFyYW1ldGVycwogKiBAcGFyYW0gbnVsbHxUeXBlPG1peGVkPiAkcmV0dXJuX3R5cGUKICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1460,"slug":"array-unpack","name":"array_unpack","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"array","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"skip_keys","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"},{"name":"entry_prefix","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"ArrayUnpack","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxhcnJheS1rZXksIG1peGVkPnxTY2FsYXJGdW5jdGlvbiAkYXJyYXkKICogQHBhcmFtIGFycmF5PGFycmF5LWtleSwgbWl4ZWQ+fFNjYWxhckZ1bmN0aW9uICRza2lwX2tleXMKICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1486,"slug":"array-expand","name":"array_expand","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"function","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"expand","type":[{"name":"ArrayExpand","namespace":"Flow\\ETL\\Function\\ArrayExpand","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Function\\ArrayExpand\\ArrayExpand::..."}],"return_type":[{"name":"ArrayExpand","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":"LyoqCiAqIEV4cGFuZHMgZWFjaCB2YWx1ZSBpbnRvIGVudHJ5LCBpZiB0aGVyZSBhcmUgbW9yZSB0aGFuIG9uZSB2YWx1ZSwgbXVsdGlwbGUgcm93cyB3aWxsIGJlIGNyZWF0ZWQuCiAqIEFycmF5IGtleXMgYXJlIGlnbm9yZWQsIG9ubHkgdmFsdWVzIGFyZSB1c2VkIHRvIGNyZWF0ZSBuZXcgcm93cy4KICoKICogQmVmb3JlOgogKiAgICstLSstLS0tLS0tLS0tLS0tLS0tLS0tKwogKiAgIHxpZHwgICAgICAgICAgICAgIGFycmF5fAogKiAgICstLSstLS0tLS0tLS0tLS0tLS0tLS0tKwogKiAgIHwgMXx7ImEiOjEsImIiOjIsImMiOjN9fAogKiAgICstLSstLS0tLS0tLS0tLS0tLS0tLS0tKwogKgogKiBBZnRlcjoKICogICArLS0rLS0tLS0tLS0rCiAqICAgfGlkfGV4cGFuZGVkfAogKiAgICstLSstLS0tLS0tLSsKICogICB8IDF8ICAgICAgIDF8CiAqICAgfCAxfCAgICAgICAyfAogKiAgIHwgMXwgICAgICAgM3wKICogICArLS0rLS0tLS0tLS0rCiAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1492,"slug":"size","name":"size","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"value","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Size","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1498,"slug":"uuid-v4","name":"uuid_v4","namespace":"Flow\\ETL\\DSL","parameters":[],"return_type":[{"name":"Uuid","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1504,"slug":"uuid-v7","name":"uuid_v7","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"value","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"DateTimeInterface","namespace":"","is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Uuid","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1510,"slug":"ulid","name":"ulid","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"value","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Ulid","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1516,"slug":"lower","name":"lower","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"value","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ToLower","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1522,"slug":"capitalize","name":"capitalize","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"value","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Capitalize","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1528,"slug":"upper","name":"upper","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"value","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ToUpper","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1534,"slug":"all","name":"all","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"functions","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"All","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1540,"slug":"any","name":"any","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"values","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"Any","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1546,"slug":"not","name":"not","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"value","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Not","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1552,"slug":"to-timezone","name":"to_timezone","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"value","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"DateTimeInterface","namespace":"","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"timeZone","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"DateTimeZone","namespace":"","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ToTimeZone","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1558,"slug":"ignore-error-handler","name":"ignore_error_handler","namespace":"Flow\\ETL\\DSL","parameters":[],"return_type":[{"name":"IgnoreError","namespace":"Flow\\ETL\\ErrorHandler","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1564,"slug":"skip-rows-handler","name":"skip_rows_handler","namespace":"Flow\\ETL\\DSL","parameters":[],"return_type":[{"name":"SkipRows","namespace":"Flow\\ETL\\ErrorHandler","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1570,"slug":"throw-error-handler","name":"throw_error_handler","namespace":"Flow\\ETL\\DSL","parameters":[],"return_type":[{"name":"ThrowError","namespace":"Flow\\ETL\\ErrorHandler","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1576,"slug":"regex-replace","name":"regex_replace","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"pattern","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"replacement","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"subject","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"limit","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"RegexReplace","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1582,"slug":"regex-match-all","name":"regex_match_all","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"pattern","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"subject","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"flags","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"0"},{"name":"offset","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"0"}],"return_type":[{"name":"RegexMatchAll","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1588,"slug":"regex-match","name":"regex_match","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"pattern","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"subject","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"flags","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"0"},{"name":"offset","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"0"}],"return_type":[{"name":"RegexMatch","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1594,"slug":"regex","name":"regex","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"pattern","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"subject","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"flags","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"0"},{"name":"offset","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"0"}],"return_type":[{"name":"Regex","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1600,"slug":"regex-all","name":"regex_all","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"pattern","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"subject","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"flags","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"0"},{"name":"offset","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"0"}],"return_type":[{"name":"RegexAll","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1606,"slug":"sprintf","name":"sprintf","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"format","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"args","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"float","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":true,"default_value":null}],"return_type":[{"name":"Sprintf","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1612,"slug":"sanitize","name":"sanitize","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"value","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"placeholder","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'*'"},{"name":"skipCharacters","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Sanitize","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1618,"slug":"round","name":"round","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"value","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"float","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"precision","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"2"},{"name":"mode","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"1"}],"return_type":[{"name":"Round","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1624,"slug":"number-format","name":"number_format","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"value","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"float","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"decimals","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"2"},{"name":"decimal_separator","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'.'"},{"name":"thousands_separator","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"','"}],"return_type":[{"name":"NumberFormat","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1635,"slug":"to-entry","name":"to_entry","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"data","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"entryFactory","type":[{"name":"EntryFactory","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Entry","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxtaXhlZD4gJGRhdGEKICoKICogQHJldHVybiBFbnRyeTxtaXhlZD4KICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1646,"slug":"array-to-row","name":"array_to_row","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"data","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"entryFactory","type":[{"name":"EntryFactory","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"partitions","type":[{"name":"Partitions","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"},{"name":"schema","type":[{"name":"Schema","namespace":"Flow\\ETL","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Row","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxhcnJheTxtaXhlZD4+fGFycmF5PG1peGVkfHN0cmluZz4gJGRhdGEKICogQHBhcmFtIGFycmF5PFBhcnRpdGlvbj58UGFydGl0aW9ucyAkcGFydGl0aW9ucwogKiBAcGFyYW0gbnVsbHxTY2hlbWEgJHNjaGVtYQogKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1691,"slug":"array-to-rows","name":"array_to_rows","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"data","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"entryFactory","type":[{"name":"EntryFactory","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"partitions","type":[{"name":"Partitions","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"},{"name":"schema","type":[{"name":"Schema","namespace":"Flow\\ETL","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Rows","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxhcnJheTxtaXhlZD4+fGFycmF5PG1peGVkfHN0cmluZz4gJGRhdGEKICogQHBhcmFtIGFycmF5PFBhcnRpdGlvbj58UGFydGl0aW9ucyAkcGFydGl0aW9ucwogKiBAcGFyYW0gbnVsbHxTY2hlbWEgJHNjaGVtYQogKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1720,"slug":"rank","name":"rank","namespace":"Flow\\ETL\\DSL","parameters":[],"return_type":[{"name":"Rank","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"WINDOW_FUNCTION"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1726,"slug":"dens-rank","name":"dens_rank","namespace":"Flow\\ETL\\DSL","parameters":[],"return_type":[{"name":"DenseRank","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"WINDOW_FUNCTION"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1732,"slug":"dense-rank","name":"dense_rank","namespace":"Flow\\ETL\\DSL","parameters":[],"return_type":[{"name":"DenseRank","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"WINDOW_FUNCTION"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1738,"slug":"average","name":"average","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"ref","type":[{"name":"EntryReference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"scale","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"2"},{"name":"rounding","type":[{"name":"Rounding","namespace":"Flow\\Calculator","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\Calculator\\Rounding::..."}],"return_type":[{"name":"Average","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"AGGREGATING_FUNCTION"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1744,"slug":"greatest","name":"greatest","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"values","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":true,"default_value":null}],"return_type":[{"name":"Greatest","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1750,"slug":"least","name":"least","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"values","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":true,"default_value":null}],"return_type":[{"name":"Least","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1756,"slug":"collect","name":"collect","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"ref","type":[{"name":"EntryReference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Collect","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"AGGREGATING_FUNCTION"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1762,"slug":"string-agg","name":"string_agg","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"ref","type":[{"name":"EntryReference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"separator","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"', '"},{"name":"sort","type":[{"name":"SortOrder","namespace":"Flow\\ETL\\Row","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"StringAggregate","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"AGGREGATING_FUNCTION"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1768,"slug":"collect-unique","name":"collect_unique","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"ref","type":[{"name":"EntryReference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"CollectUnique","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"AGGREGATING_FUNCTION"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1774,"slug":"window","name":"window","namespace":"Flow\\ETL\\DSL","parameters":[],"return_type":[{"name":"Window","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1780,"slug":"sum","name":"sum","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"ref","type":[{"name":"EntryReference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Sum","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"AGGREGATING_FUNCTION"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1786,"slug":"first","name":"first","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"ref","type":[{"name":"EntryReference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"First","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"AGGREGATING_FUNCTION"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1792,"slug":"last","name":"last","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"ref","type":[{"name":"EntryReference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Last","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"AGGREGATING_FUNCTION"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1798,"slug":"max","name":"max","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"ref","type":[{"name":"EntryReference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Max","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"AGGREGATING_FUNCTION"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1804,"slug":"min","name":"min","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"ref","type":[{"name":"EntryReference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Min","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"AGGREGATING_FUNCTION"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1810,"slug":"row-number","name":"row_number","namespace":"Flow\\ETL\\DSL","parameters":[],"return_type":[{"name":"RowNumber","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1821,"slug":"schema","name":"schema","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"definitions","type":[{"name":"Definition","namespace":"Flow\\ETL\\Schema","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"Schema","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBEZWZpbml0aW9uPG1peGVkPiAuLi4kZGVmaW5pdGlvbnMKICoKICogQHJldHVybiBTY2hlbWEKICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1830,"slug":"schema-to-json","name":"schema_to_json","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"schema","type":[{"name":"Schema","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"pretty","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBTY2hlbWEgJHNjaGVtYQogKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1839,"slug":"schema-to-php","name":"schema_to_php","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"schema","type":[{"name":"Schema","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"valueFormatter","type":[{"name":"ValueFormatter","namespace":"Flow\\ETL\\Schema\\Formatter\\PHPFormatter","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Schema\\Formatter\\PHPFormatter\\ValueFormatter::..."},{"name":"typeFormatter","type":[{"name":"TypeFormatter","namespace":"Flow\\ETL\\Schema\\Formatter\\PHPFormatter","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Schema\\Formatter\\PHPFormatter\\TypeFormatter::..."}],"return_type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBTY2hlbWEgJHNjaGVtYQogKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1848,"slug":"schema-to-ascii","name":"schema_to_ascii","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"schema","type":[{"name":"Schema","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"formatter","type":[{"name":"SchemaFormatter","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBTY2hlbWEgJHNjaGVtYQogKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1858,"slug":"schema-validate","name":"schema_validate","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"expected","type":[{"name":"Schema","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"given","type":[{"name":"Schema","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"validator","type":[{"name":"SchemaValidator","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Schema\\Validator\\StrictValidator::..."}],"return_type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBTY2hlbWEgJGV4cGVjdGVkCiAqIEBwYXJhbSBTY2hlbWEgJGdpdmVuCiAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1864,"slug":"schema-evolving-validator","name":"schema_evolving_validator","namespace":"Flow\\ETL\\DSL","parameters":[],"return_type":[{"name":"EvolvingValidator","namespace":"Flow\\ETL\\Schema\\Validator","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1870,"slug":"schema-strict-validator","name":"schema_strict_validator","namespace":"Flow\\ETL\\DSL","parameters":[],"return_type":[{"name":"StrictValidator","namespace":"Flow\\ETL\\Schema\\Validator","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1876,"slug":"schema-selective-validator","name":"schema_selective_validator","namespace":"Flow\\ETL\\DSL","parameters":[],"return_type":[{"name":"SelectiveValidator","namespace":"Flow\\ETL\\Schema\\Validator","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1885,"slug":"schema-from-json","name":"schema_from_json","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"schema","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Schema","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gU2NoZW1hCiAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1897,"slug":"schema-metadata","name":"schema_metadata","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"metadata","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxzdHJpbmcsIGFycmF5PGJvb2x8ZmxvYXR8aW50fHN0cmluZz58Ym9vbHxmbG9hdHxpbnR8c3RyaW5nPiAkbWV0YWRhdGEKICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1906,"slug":"int-schema","name":"int_schema","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"nullable","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"IntegerDefinition","namespace":"Flow\\ETL\\Schema\\Definition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEFsaWFzIGZvciBgaW50ZWdlcl9zY2hlbWFgLgogKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1912,"slug":"integer-schema","name":"integer_schema","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"nullable","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"IntegerDefinition","namespace":"Flow\\ETL\\Schema\\Definition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1921,"slug":"str-schema","name":"str_schema","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"nullable","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"StringDefinition","namespace":"Flow\\ETL\\Schema\\Definition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEFsaWFzIGZvciBgc3RyaW5nX3NjaGVtYWAuCiAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1927,"slug":"string-schema","name":"string_schema","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"nullable","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"StringDefinition","namespace":"Flow\\ETL\\Schema\\Definition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1933,"slug":"bool-schema","name":"bool_schema","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"nullable","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"BooleanDefinition","namespace":"Flow\\ETL\\Schema\\Definition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1939,"slug":"float-schema","name":"float_schema","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"nullable","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"FloatDefinition","namespace":"Flow\\ETL\\Schema\\Definition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1953,"slug":"map-schema","name":"map_schema","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"type","type":[{"name":"MapType","namespace":"Flow\\Types\\Type\\Logical","is_nullable":false,"is_variadic":false},{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"nullable","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"MapDefinition","namespace":"Flow\\ETL\\Schema\\Definition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEB0ZW1wbGF0ZSBUS2V5IG9mIGFycmF5LWtleQogKiBAdGVtcGxhdGUgVFZhbHVlCiAqCiAqIEBwYXJhbSBNYXBUeXBlPFRLZXksIFRWYWx1ZT58VHlwZTxhcnJheTxUS2V5LCBUVmFsdWU+PiAkdHlwZQogKgogKiBAcmV0dXJuIE1hcERlZmluaXRpb248VEtleSwgVFZhbHVlPgogKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1967,"slug":"list-schema","name":"list_schema","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"type","type":[{"name":"ListType","namespace":"Flow\\Types\\Type\\Logical","is_nullable":false,"is_variadic":false},{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"nullable","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"ListDefinition","namespace":"Flow\\ETL\\Schema\\Definition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEB0ZW1wbGF0ZSBUCiAqCiAqIEBwYXJhbSBMaXN0VHlwZTxUPnxUeXBlPGxpc3Q8VD4+ICR0eXBlCiAqCiAqIEByZXR1cm4gTGlzdERlZmluaXRpb248VD4KICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1981,"slug":"enum-schema","name":"enum_schema","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"type","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"nullable","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"EnumDefinition","namespace":"Flow\\ETL\\Schema\\Definition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEB0ZW1wbGF0ZSBUIG9mIFxVbml0RW51bQogKgogKiBAcGFyYW0gY2xhc3Mtc3RyaW5nPFQ+ICR0eXBlCiAqCiAqIEByZXR1cm4gRW51bURlZmluaXRpb248VD4KICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1987,"slug":"null-schema","name":"null_schema","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"StringDefinition","namespace":"Flow\\ETL\\Schema\\Definition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1993,"slug":"datetime-schema","name":"datetime_schema","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"nullable","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"DateTimeDefinition","namespace":"Flow\\ETL\\Schema\\Definition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":1999,"slug":"time-schema","name":"time_schema","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"nullable","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"TimeDefinition","namespace":"Flow\\ETL\\Schema\\Definition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2005,"slug":"date-schema","name":"date_schema","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"nullable","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"DateDefinition","namespace":"Flow\\ETL\\Schema\\Definition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2011,"slug":"json-schema","name":"json_schema","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"nullable","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"JsonDefinition","namespace":"Flow\\ETL\\Schema\\Definition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2017,"slug":"html-schema","name":"html_schema","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"nullable","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"HTMLDefinition","namespace":"Flow\\ETL\\Schema\\Definition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2023,"slug":"html-element-schema","name":"html_element_schema","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"nullable","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"HTMLElementDefinition","namespace":"Flow\\ETL\\Schema\\Definition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2029,"slug":"xml-schema","name":"xml_schema","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"nullable","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"XMLDefinition","namespace":"Flow\\ETL\\Schema\\Definition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2035,"slug":"xml-element-schema","name":"xml_element_schema","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"nullable","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"XMLElementDefinition","namespace":"Flow\\ETL\\Schema\\Definition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2050,"slug":"struct-schema","name":"struct_schema","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"type","type":[{"name":"StructureType","namespace":"Flow\\Types\\Type\\Logical","is_nullable":false,"is_variadic":false},{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"nullable","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"StructureDefinition","namespace":"Flow\\ETL\\Schema\\Definition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEB0ZW1wbGF0ZSBUCiAqCiAqIEBwYXJhbSBTdHJ1Y3R1cmVUeXBlPFQ+fFR5cGU8YXJyYXk8c3RyaW5nLCBUPj4gJHR5cGUKICoKICogQHJldHVybiBTdHJ1Y3R1cmVEZWZpbml0aW9uPFQ+CiAqCiAqIEBkZXByZWNhdGVkIFVzZSBgc3RydWN0dXJlX3NjaGVtYSgpYCBpbnN0ZWFkCiAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2064,"slug":"structure-schema","name":"structure_schema","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"type","type":[{"name":"StructureType","namespace":"Flow\\Types\\Type\\Logical","is_nullable":false,"is_variadic":false},{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"nullable","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"StructureDefinition","namespace":"Flow\\ETL\\Schema\\Definition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEB0ZW1wbGF0ZSBUCiAqCiAqIEBwYXJhbSBTdHJ1Y3R1cmVUeXBlPFQ+fFR5cGU8YXJyYXk8c3RyaW5nLCBUPj4gJHR5cGUKICoKICogQHJldHVybiBTdHJ1Y3R1cmVEZWZpbml0aW9uPFQ+CiAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2071,"slug":"uuid-schema","name":"uuid_schema","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"nullable","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"UuidDefinition","namespace":"Flow\\ETL\\Schema\\Definition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2084,"slug":"definition-from-array","name":"definition_from_array","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"definition","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Definition","namespace":"Flow\\ETL\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIERlZmluaXRpb24gZnJvbSBhbiBhcnJheSByZXByZXNlbnRhdGlvbi4KICoKICogQHBhcmFtIGFycmF5PGFycmF5LWtleSwgbWl4ZWQ+ICRkZWZpbml0aW9uCiAqCiAqIEByZXR1cm4gRGVmaW5pdGlvbjxtaXhlZD4KICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2117,"slug":"definition-from-type","name":"definition_from_type","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"ref","type":[{"name":"Reference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"type","type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"nullable","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"metadata","type":[{"name":"Metadata","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Definition","namespace":"Flow\\ETL\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIERlZmluaXRpb24gZnJvbSBhIFR5cGUuCiAqCiAqIEBwYXJhbSBUeXBlPG1peGVkPiAkdHlwZQogKgogKiBAcmV0dXJuIERlZmluaXRpb248bWl4ZWQ+CiAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2143,"slug":"execution-context","name":"execution_context","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"config","type":[{"name":"Config","namespace":"Flow\\ETL","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"FlowContext","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2149,"slug":"flow-context","name":"flow_context","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"config","type":[{"name":"Config","namespace":"Flow\\ETL","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"FlowContext","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2155,"slug":"config","name":"config","namespace":"Flow\\ETL\\DSL","parameters":[],"return_type":[{"name":"Config","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2161,"slug":"config-builder","name":"config_builder","namespace":"Flow\\ETL\\DSL","parameters":[],"return_type":[{"name":"ConfigBuilder","namespace":"Flow\\ETL\\Config","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2170,"slug":"overwrite","name":"overwrite","namespace":"Flow\\ETL\\DSL","parameters":[],"return_type":[{"name":"SaveMode","namespace":"Flow\\ETL\\Filesystem","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEFsaWFzIGZvciBzYXZlX21vZGVfb3ZlcndyaXRlKCkuCiAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2176,"slug":"save-mode-overwrite","name":"save_mode_overwrite","namespace":"Flow\\ETL\\DSL","parameters":[],"return_type":[{"name":"SaveMode","namespace":"Flow\\ETL\\Filesystem","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2185,"slug":"ignore","name":"ignore","namespace":"Flow\\ETL\\DSL","parameters":[],"return_type":[{"name":"SaveMode","namespace":"Flow\\ETL\\Filesystem","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEFsaWFzIGZvciBzYXZlX21vZGVfaWdub3JlKCkuCiAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2191,"slug":"save-mode-ignore","name":"save_mode_ignore","namespace":"Flow\\ETL\\DSL","parameters":[],"return_type":[{"name":"SaveMode","namespace":"Flow\\ETL\\Filesystem","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2200,"slug":"exception-if-exists","name":"exception_if_exists","namespace":"Flow\\ETL\\DSL","parameters":[],"return_type":[{"name":"SaveMode","namespace":"Flow\\ETL\\Filesystem","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEFsaWFzIGZvciBzYXZlX21vZGVfZXhjZXB0aW9uX2lmX2V4aXN0cygpLgogKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2206,"slug":"save-mode-exception-if-exists","name":"save_mode_exception_if_exists","namespace":"Flow\\ETL\\DSL","parameters":[],"return_type":[{"name":"SaveMode","namespace":"Flow\\ETL\\Filesystem","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2215,"slug":"append","name":"append","namespace":"Flow\\ETL\\DSL","parameters":[],"return_type":[{"name":"SaveMode","namespace":"Flow\\ETL\\Filesystem","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEFsaWFzIGZvciBzYXZlX21vZGVfYXBwZW5kKCkuCiAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2221,"slug":"save-mode-append","name":"save_mode_append","namespace":"Flow\\ETL\\DSL","parameters":[],"return_type":[{"name":"SaveMode","namespace":"Flow\\ETL\\Filesystem","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2231,"slug":"execution-strict","name":"execution_strict","namespace":"Flow\\ETL\\DSL","parameters":[],"return_type":[{"name":"ExecutionMode","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEluIHRoaXMgbW9kZSwgZnVuY3Rpb25zIHRocm93cyBleGNlcHRpb25zIGlmIHRoZSBnaXZlbiBlbnRyeSBpcyBub3QgZm91bmQKICogb3IgcGFzc2VkIHBhcmFtZXRlcnMgYXJlIGludmFsaWQuCiAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2240,"slug":"execution-lenient","name":"execution_lenient","namespace":"Flow\\ETL\\DSL","parameters":[],"return_type":[{"name":"ExecutionMode","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEluIHRoaXMgbW9kZSwgZnVuY3Rpb25zIHJldHVybnMgbnVsbHMgaW5zdGVhZCBvZiB0aHJvd2luZyBleGNlcHRpb25zLgogKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2251,"slug":"get-type","name":"get_type","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"value","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gVHlwZTxtaXhlZD4KICoKICogQGRlcHJlY2F0ZWQgUGxlYXNlIHVzZSBcRmxvd1xUeXBlc1xEU0xcZ2V0X3R5cGUoJHZhbHVlKSBpbnN0ZWFkCiAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2262,"slug":"print-schema","name":"print_schema","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"schema","type":[{"name":"Schema","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"formatter","type":[{"name":"SchemaFormatter","namespace":"Flow\\ETL\\Schema","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBTY2hlbWEgJHNjaGVtYQogKgogKiBAZGVwcmVjYXRlZCBQbGVhc2UgdXNlIHNjaGVtYV90b19hc2NpaSgkc2NoZW1hKSBpbnN0ZWFkCiAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2268,"slug":"print-rows","name":"print_rows","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"rows","type":[{"name":"Rows","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"truncate","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"formatter","type":[{"name":"Formatter","namespace":"Flow\\ETL","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2274,"slug":"identical","name":"identical","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"left","type":[{"name":"Reference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"right","type":[{"name":"Reference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Identical","namespace":"Flow\\ETL\\Join\\Comparison","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"COMPARISON"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2280,"slug":"equal","name":"equal","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"left","type":[{"name":"Reference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"right","type":[{"name":"Reference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Equal","namespace":"Flow\\ETL\\Join\\Comparison","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"COMPARISON"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2286,"slug":"compare-all","name":"compare_all","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"comparisons","type":[{"name":"Comparison","namespace":"Flow\\ETL\\Join","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"All","namespace":"Flow\\ETL\\Join\\Comparison","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"COMPARISON"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2292,"slug":"compare-any","name":"compare_any","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"comparisons","type":[{"name":"Comparison","namespace":"Flow\\ETL\\Join","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"Any","namespace":"Flow\\ETL\\Join\\Comparison","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"COMPARISON"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2303,"slug":"join-on","name":"join_on","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"comparisons","type":[{"name":"Comparison","namespace":"Flow\\ETL\\Join","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"join_prefix","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"''"}],"return_type":[{"name":"Expression","namespace":"Flow\\ETL\\Join","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}},{"name":"DocumentationExample","namespace":"Flow\\ETL\\Attribute","arguments":{"topic":"join","example":"join"}},{"name":"DocumentationExample","namespace":"Flow\\ETL\\Attribute","arguments":{"topic":"join","example":"join_each"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxcRmxvd1xFVExcSm9pblxDb21wYXJpc29ufHN0cmluZz58Q29tcGFyaXNvbiAkY29tcGFyaXNvbnMKICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2309,"slug":"compare-entries-by-name","name":"compare_entries_by_name","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"order","type":[{"name":"Order","namespace":"Flow\\ETL\\Transformer\\OrderEntries","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Transformer\\OrderEntries\\Order::..."}],"return_type":[{"name":"Comparator","namespace":"Flow\\ETL\\Transformer\\OrderEntries","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2315,"slug":"compare-entries-by-name-desc","name":"compare_entries_by_name_desc","namespace":"Flow\\ETL\\DSL","parameters":[],"return_type":[{"name":"Comparator","namespace":"Flow\\ETL\\Transformer\\OrderEntries","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2324,"slug":"compare-entries-by-type","name":"compare_entries_by_type","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"priorities","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[...]"},{"name":"order","type":[{"name":"Order","namespace":"Flow\\ETL\\Transformer\\OrderEntries","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Transformer\\OrderEntries\\Order::..."}],"return_type":[{"name":"Comparator","namespace":"Flow\\ETL\\Transformer\\OrderEntries","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxjbGFzcy1zdHJpbmc8RW50cnk8bWl4ZWQ+PiwgaW50PiAkcHJpb3JpdGllcwogKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2333,"slug":"compare-entries-by-type-desc","name":"compare_entries_by_type_desc","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"priorities","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[...]"}],"return_type":[{"name":"Comparator","namespace":"Flow\\ETL\\Transformer\\OrderEntries","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxjbGFzcy1zdHJpbmc8RW50cnk8bWl4ZWQ+PiwgaW50PiAkcHJpb3JpdGllcwogKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2342,"slug":"compare-entries-by-type-and-name","name":"compare_entries_by_type_and_name","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"priorities","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[...]"},{"name":"order","type":[{"name":"Order","namespace":"Flow\\ETL\\Transformer\\OrderEntries","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Transformer\\OrderEntries\\Order::..."}],"return_type":[{"name":"Comparator","namespace":"Flow\\ETL\\Transformer\\OrderEntries","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxjbGFzcy1zdHJpbmc8RW50cnk8bWl4ZWQ+PiwgaW50PiAkcHJpb3JpdGllcwogKi8="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2355,"slug":"is-type","name":"is_type","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"type","type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"value","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null}],"return_type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxzdHJpbmd8VHlwZTxtaXhlZD4+fFR5cGU8bWl4ZWQ+ICR0eXBlCiAqIEBwYXJhbSBtaXhlZCAkdmFsdWUKICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2418,"slug":"generate-random-string","name":"generate_random_string","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"length","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"32"},{"name":"generator","type":[{"name":"NativePHPRandomValueGenerator","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\NativePHPRandomValueGenerator::..."}],"return_type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2424,"slug":"generate-random-int","name":"generate_random_int","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"start","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"-9223372036854775808"},{"name":"end","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"9223372036854775807"},{"name":"generator","type":[{"name":"NativePHPRandomValueGenerator","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\NativePHPRandomValueGenerator::..."}],"return_type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2430,"slug":"random-string","name":"random_string","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"length","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"generator","type":[{"name":"RandomValueGenerator","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\NativePHPRandomValueGenerator::..."}],"return_type":[{"name":"RandomString","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2441,"slug":"dom-element-to-string","name":"dom_element_to_string","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"element","type":[{"name":"DOMElement","namespace":"","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"format_output","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"preserver_white_space","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"false","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"DATA_FRAME"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBkZXByZWNhdGVkIFBsZWFzZSB1c2UgXEZsb3dcVHlwZXNcRFNMXGRvbV9lbGVtZW50X3RvX3N0cmluZygpIGluc3RlYWQKICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2447,"slug":"date-interval-to-milliseconds","name":"date_interval_to_milliseconds","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"interval","type":[{"name":"DateInterval","namespace":"","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2464,"slug":"date-interval-to-seconds","name":"date_interval_to_seconds","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"interval","type":[{"name":"DateInterval","namespace":"","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2481,"slug":"date-interval-to-microseconds","name":"date_interval_to_microseconds","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"interval","type":[{"name":"DateInterval","namespace":"","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2498,"slug":"with-entry","name":"with_entry","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"function","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"WithEntry","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2504,"slug":"constraint-unique","name":"constraint_unique","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"reference","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"references","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"UniqueConstraint","namespace":"Flow\\ETL\\Constraint","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2510,"slug":"constraint-sorted-by","name":"constraint_sorted_by","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"column","type":[{"name":"Reference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"columns","type":[{"name":"Reference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"SortedByConstraint","namespace":"Flow\\ETL\\Constraint","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2521,"slug":"analyze","name":"analyze","namespace":"Flow\\ETL\\DSL","parameters":[],"return_type":[{"name":"Analyze","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2530,"slug":"match-cases","name":"match_cases","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"cases","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"default","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"MatchCases","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":true,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxNYXRjaENvbmRpdGlvbj4gJGNhc2VzCiAqLw=="},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2536,"slug":"match-condition","name":"match_condition","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"condition","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"then","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null}],"return_type":[{"name":"MatchCondition","namespace":"Flow\\ETL\\Function\\MatchCases","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"SCALAR_FUNCTION"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2542,"slug":"retry-any-throwable","name":"retry_any_throwable","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"limit","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"AnyThrowable","namespace":"Flow\\ETL\\Retry\\RetryStrategy","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2551,"slug":"retry-on-exception-types","name":"retry_on_exception_types","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"exception_types","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"limit","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"OnExceptionTypes","namespace":"Flow\\ETL\\Retry\\RetryStrategy","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxjbGFzcy1zdHJpbmc8XFRocm93YWJsZT4+ICRleGNlcHRpb25fdHlwZXMKICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2557,"slug":"delay-linear","name":"delay_linear","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"delay","type":[{"name":"Duration","namespace":"Flow\\ETL\\Time","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"increment","type":[{"name":"Duration","namespace":"Flow\\ETL\\Time","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Linear","namespace":"Flow\\ETL\\Retry\\DelayFactory","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2563,"slug":"delay-exponential","name":"delay_exponential","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"base","type":[{"name":"Duration","namespace":"Flow\\ETL\\Time","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"multiplier","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"2"},{"name":"max_delay","type":[{"name":"Duration","namespace":"Flow\\ETL\\Time","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Exponential","namespace":"Flow\\ETL\\Retry\\DelayFactory","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2572,"slug":"delay-jitter","name":"delay_jitter","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"delay","type":[{"name":"DelayFactory","namespace":"Flow\\ETL\\Retry","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"jitter_factor","type":[{"name":"float","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Jitter","namespace":"Flow\\ETL\\Retry\\DelayFactory","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBmbG9hdCAkaml0dGVyX2ZhY3RvciBhIHZhbHVlIGJldHdlZW4gMCBhbmQgMSByZXByZXNlbnRpbmcgdGhlIG1heGltdW0gcGVyY2VudGFnZSBvZiBqaXR0ZXIgdG8gYXBwbHkKICov"},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2578,"slug":"delay-fixed","name":"delay_fixed","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"delay","type":[{"name":"Duration","namespace":"Flow\\ETL\\Time","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Fixed","namespace":"Flow\\ETL\\Retry\\DelayFactory","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2584,"slug":"duration-seconds","name":"duration_seconds","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"seconds","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Duration","namespace":"Flow\\ETL\\Time","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2590,"slug":"duration-milliseconds","name":"duration_milliseconds","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"milliseconds","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Duration","namespace":"Flow\\ETL\\Time","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2596,"slug":"duration-microseconds","name":"duration_microseconds","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"microseconds","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Duration","namespace":"Flow\\ETL\\Time","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2602,"slug":"duration-minutes","name":"duration_minutes","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"minutes","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Duration","namespace":"Flow\\ETL\\Time","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2608,"slug":"write-with-retries","name":"write_with_retries","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"loader","type":[{"name":"Loader","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"retry_strategy","type":[{"name":"RetryStrategy","namespace":"Flow\\ETL\\Retry","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Retry\\RetryStrategy\\AnyThrowable::..."},{"name":"delay_factory","type":[{"name":"DelayFactory","namespace":"Flow\\ETL\\Retry","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Retry\\DelayFactory\\Fixed\\FixedMilliseconds::..."},{"name":"sleep","type":[{"name":"Sleep","namespace":"Flow\\ETL\\Time","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Time\\SystemSleep::..."}],"return_type":[{"name":"RetryLoader","namespace":"Flow\\ETL\\Loader","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"LOADER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/core\/etl\/src\/Flow\/ETL\/DSL\/functions.php","start_line_in_file":2618,"slug":"clock","name":"clock","namespace":"Flow\\ETL\\DSL","parameters":[{"name":"time_zone","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'UTC'"}],"return_type":[{"name":"ClockInterface","namespace":"Psr\\Clock","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CORE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/adapter\/etl-adapter-avro\/src\/Flow\/ETL\/Adapter\/Avro\/functions.php","start_line_in_file":13,"slug":"from-avro","name":"from_avro","namespace":"Flow\\ETL\\DSL\\Adapter\\Avro","parameters":[{"name":"path","type":[{"name":"Path","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"AvroExtractor","namespace":"Flow\\ETL\\Adapter\\Avro\\FlixTech","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"AVRO","type":"EXTRACTOR"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/adapter\/etl-adapter-avro\/src\/Flow\/ETL\/Adapter\/Avro\/functions.php","start_line_in_file":21,"slug":"to-avro","name":"to_avro","namespace":"Flow\\ETL\\DSL\\Adapter\\Avro","parameters":[{"name":"path","type":[{"name":"Path","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"schema","type":[{"name":"Schema","namespace":"Flow\\ETL","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"AvroLoader","namespace":"Flow\\ETL\\Adapter\\Avro\\FlixTech","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"AVRO","type":"LOADER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/adapter\/etl-adapter-chartjs\/src\/Flow\/ETL\/Adapter\/ChartJS\/functions.php","start_line_in_file":14,"slug":"bar-chart","name":"bar_chart","namespace":"Flow\\ETL\\Adapter\\ChartJS","parameters":[{"name":"label","type":[{"name":"EntryReference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"datasets","type":[{"name":"References","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"BarChart","namespace":"Flow\\ETL\\Adapter\\ChartJS\\Chart","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CHART_JS","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/adapter\/etl-adapter-chartjs\/src\/Flow\/ETL\/Adapter\/ChartJS\/functions.php","start_line_in_file":20,"slug":"line-chart","name":"line_chart","namespace":"Flow\\ETL\\Adapter\\ChartJS","parameters":[{"name":"label","type":[{"name":"EntryReference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"datasets","type":[{"name":"References","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"LineChart","namespace":"Flow\\ETL\\Adapter\\ChartJS\\Chart","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CHART_JS","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/adapter\/etl-adapter-chartjs\/src\/Flow\/ETL\/Adapter\/ChartJS\/functions.php","start_line_in_file":26,"slug":"pie-chart","name":"pie_chart","namespace":"Flow\\ETL\\Adapter\\ChartJS","parameters":[{"name":"label","type":[{"name":"EntryReference","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"datasets","type":[{"name":"References","namespace":"Flow\\ETL\\Row","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"PieChart","namespace":"Flow\\ETL\\Adapter\\ChartJS\\Chart","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CHART_JS","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/adapter\/etl-adapter-chartjs\/src\/Flow\/ETL\/Adapter\/ChartJS\/functions.php","start_line_in_file":32,"slug":"to-chartjs","name":"to_chartjs","namespace":"Flow\\ETL\\Adapter\\ChartJS","parameters":[{"name":"type","type":[{"name":"Chart","namespace":"Flow\\ETL\\Adapter\\ChartJS","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ChartJSLoader","namespace":"Flow\\ETL\\Adapter\\ChartJS","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CHART_JS","type":"LOADER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/adapter\/etl-adapter-chartjs\/src\/Flow\/ETL\/Adapter\/ChartJS\/functions.php","start_line_in_file":43,"slug":"to-chartjs-file","name":"to_chartjs_file","namespace":"Flow\\ETL\\Adapter\\ChartJS","parameters":[{"name":"type","type":[{"name":"Chart","namespace":"Flow\\ETL\\Adapter\\ChartJS","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"output","type":[{"name":"Path","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"template","type":[{"name":"Path","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"ChartJSLoader","namespace":"Flow\\ETL\\Adapter\\ChartJS","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CHART_JS","type":"LOADER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBDaGFydCAkdHlwZQogKiBAcGFyYW0gbnVsbHxQYXRofHN0cmluZyAkb3V0cHV0IC0gQGRlcHJlY2F0ZWQgdXNlICRsb2FkZXItPndpdGhPdXRwdXRQYXRoKCkgaW5zdGVhZAogKiBAcGFyYW0gbnVsbHxQYXRofHN0cmluZyAkdGVtcGxhdGUgLSBAZGVwcmVjYXRlZCB1c2UgJGxvYWRlci0+d2l0aFRlbXBsYXRlKCkgaW5zdGVhZAogKi8="},{"repository_path":"src\/adapter\/etl-adapter-chartjs\/src\/Flow\/ETL\/Adapter\/ChartJS\/functions.php","start_line_in_file":71,"slug":"to-chartjs-var","name":"to_chartjs_var","namespace":"Flow\\ETL\\Adapter\\ChartJS","parameters":[{"name":"type","type":[{"name":"Chart","namespace":"Flow\\ETL\\Adapter\\ChartJS","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"output","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ChartJSLoader","namespace":"Flow\\ETL\\Adapter\\ChartJS","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CHART_JS","type":"LOADER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBDaGFydCAkdHlwZQogKiBAcGFyYW0gYXJyYXk8YXJyYXkta2V5LCBtaXhlZD4gJG91dHB1dCAtIEBkZXByZWNhdGVkIHVzZSAkbG9hZGVyLT53aXRoT3V0cHV0VmFyKCkgaW5zdGVhZAogKi8="},{"repository_path":"src\/adapter\/etl-adapter-csv\/src\/Flow\/ETL\/Adapter\/CSV\/functions.php","start_line_in_file":25,"slug":"from-csv","name":"from_csv","namespace":"Flow\\ETL\\Adapter\\CSV","parameters":[{"name":"path","type":[{"name":"Path","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"with_header","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"true"},{"name":"empty_to_null","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"true"},{"name":"separator","type":[{"name":"string","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"enclosure","type":[{"name":"string","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"escape","type":[{"name":"string","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"characters_read_in_line","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"1000"},{"name":"schema","type":[{"name":"Schema","namespace":"Flow\\ETL","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"CSVExtractor","namespace":"Flow\\ETL\\Adapter\\CSV","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CSV","type":"EXTRACTOR"}},{"name":"DocumentationExample","namespace":"Flow\\ETL\\Attribute","arguments":{"topic":"data_frame","example":"data_reading","option":"csv"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBQYXRofHN0cmluZyAkcGF0aAogKiBAcGFyYW0gYm9vbCAkZW1wdHlfdG9fbnVsbCAtIEBkZXByZWNhdGVkIHVzZSAkbG9hZGVyLT53aXRoRW1wdHlUb051bGwoKSBpbnN0ZWFkCiAqIEBwYXJhbSBib29sICR3aXRoX2hlYWRlciAtIEBkZXByZWNhdGVkIHVzZSAkbG9hZGVyLT53aXRoSGVhZGVyKCkgaW5zdGVhZAogKiBAcGFyYW0gbnVsbHxzdHJpbmcgJHNlcGFyYXRvciAtIEBkZXByZWNhdGVkIHVzZSAkbG9hZGVyLT53aXRoU2VwYXJhdG9yKCkgaW5zdGVhZAogKiBAcGFyYW0gbnVsbHxzdHJpbmcgJGVuY2xvc3VyZSAtIEBkZXByZWNhdGVkIHVzZSAkbG9hZGVyLT53aXRoRW5jbG9zdXJlKCkgaW5zdGVhZAogKiBAcGFyYW0gbnVsbHxzdHJpbmcgJGVzY2FwZSAtIEBkZXByZWNhdGVkIHVzZSAkbG9hZGVyLT53aXRoRXNjYXBlKCkgaW5zdGVhZAogKiBAcGFyYW0gaW50PDEsIG1heD4gJGNoYXJhY3RlcnNfcmVhZF9pbl9saW5lIC0gQGRlcHJlY2F0ZWQgdXNlICRsb2FkZXItPndpdGhDaGFyYWN0ZXJzUmVhZEluTGluZSgpIGluc3RlYWQKICogQHBhcmFtIG51bGx8U2NoZW1hICRzY2hlbWEgLSBAZGVwcmVjYXRlZCB1c2UgJGxvYWRlci0+d2l0aFNjaGVtYSgpIGluc3RlYWQKICov"},{"repository_path":"src\/adapter\/etl-adapter-csv\/src\/Flow\/ETL\/Adapter\/CSV\/functions.php","start_line_in_file":70,"slug":"to-csv","name":"to_csv","namespace":"Flow\\ETL\\Adapter\\CSV","parameters":[{"name":"uri","type":[{"name":"Path","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"with_header","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"true"},{"name":"separator","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"','"},{"name":"enclosure","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'\\\"'"},{"name":"escape","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'\\\\'"},{"name":"new_line_separator","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'\\n'"},{"name":"datetime_format","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'Y-m-d\\\\TH:i:sP'"}],"return_type":[{"name":"CSVLoader","namespace":"Flow\\ETL\\Adapter\\CSV","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CSV","type":"LOADER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBQYXRofHN0cmluZyAkdXJpCiAqIEBwYXJhbSBib29sICR3aXRoX2hlYWRlciAtIEBkZXByZWNhdGVkIHVzZSAkbG9hZGVyLT53aXRoSGVhZGVyKCkgaW5zdGVhZAogKiBAcGFyYW0gc3RyaW5nICRzZXBhcmF0b3IgLSBAZGVwcmVjYXRlZCB1c2UgJGxvYWRlci0+d2l0aFNlcGFyYXRvcigpIGluc3RlYWQKICogQHBhcmFtIHN0cmluZyAkZW5jbG9zdXJlIC0gQGRlcHJlY2F0ZWQgdXNlICRsb2FkZXItPndpdGhFbmNsb3N1cmUoKSBpbnN0ZWFkCiAqIEBwYXJhbSBzdHJpbmcgJGVzY2FwZSAtIEBkZXByZWNhdGVkIHVzZSAkbG9hZGVyLT53aXRoRXNjYXBlKCkgaW5zdGVhZAogKiBAcGFyYW0gc3RyaW5nICRuZXdfbGluZV9zZXBhcmF0b3IgLSBAZGVwcmVjYXRlZCB1c2UgJGxvYWRlci0+d2l0aE5ld0xpbmVTZXBhcmF0b3IoKSBpbnN0ZWFkCiAqIEBwYXJhbSBzdHJpbmcgJGRhdGV0aW1lX2Zvcm1hdCAtIEBkZXByZWNhdGVkIHVzZSAkbG9hZGVyLT53aXRoRGF0ZVRpbWVGb3JtYXQoKSBpbnN0ZWFkCiAqLw=="},{"repository_path":"src\/adapter\/etl-adapter-csv\/src\/Flow\/ETL\/Adapter\/CSV\/functions.php","start_line_in_file":95,"slug":"csv-detect-separator","name":"csv_detect_separator","namespace":"Flow\\ETL\\Adapter\\CSV","parameters":[{"name":"stream","type":[{"name":"SourceStream","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"lines","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"5"},{"name":"fallback","type":[{"name":"Option","namespace":"Flow\\ETL\\Adapter\\CSV\\Detector","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"Flow\\ETL\\Adapter\\CSV\\Detector\\Option::..."},{"name":"options","type":[{"name":"Options","namespace":"Flow\\ETL\\Adapter\\CSV\\Detector","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Option","namespace":"Flow\\ETL\\Adapter\\CSV\\Detector","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"CSV","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBTb3VyY2VTdHJlYW0gJHN0cmVhbSAtIHZhbGlkIHJlc291cmNlIHRvIENTViBmaWxlCiAqIEBwYXJhbSBpbnQ8MSwgbWF4PiAkbGluZXMgLSBudW1iZXIgb2YgbGluZXMgdG8gcmVhZCBmcm9tIENTViBmaWxlLCBkZWZhdWx0IDUsIG1vcmUgbGluZXMgbWVhbnMgbW9yZSBhY2N1cmF0ZSBkZXRlY3Rpb24gYnV0IHNsb3dlciBkZXRlY3Rpb24KICogQHBhcmFtIG51bGx8T3B0aW9uICRmYWxsYmFjayAtIGZhbGxiYWNrIG9wdGlvbiB0byB1c2Ugd2hlbiBubyBiZXN0IG9wdGlvbiBjYW4gYmUgZGV0ZWN0ZWQsIGRlZmF1bHQgaXMgT3B0aW9uKCcsJywgJyInLCAnXFwnKQogKiBAcGFyYW0gbnVsbHxPcHRpb25zICRvcHRpb25zIC0gb3B0aW9ucyB0byB1c2UgZm9yIGRldGVjdGlvbiwgZGVmYXVsdCBpcyBPcHRpb25zOjphbGwoKQogKi8="},{"repository_path":"src\/adapter\/etl-adapter-doctrine\/src\/Flow\/ETL\/Adapter\/Doctrine\/functions.php","start_line_in_file":36,"slug":"dbal-dataframe-factory","name":"dbal_dataframe_factory","namespace":"Flow\\ETL\\Adapter\\Doctrine","parameters":[{"name":"connection","type":[{"name":"Connection","namespace":"Doctrine\\DBAL","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"query","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"parameters","type":[{"name":"QueryParameter","namespace":"Flow\\ETL\\Adapter\\Doctrine","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"DbalDataFrameFactory","namespace":"Flow\\ETL\\Adapter\\Doctrine","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"DOCTRINE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxzdHJpbmcsIG1peGVkPnxDb25uZWN0aW9uICRjb25uZWN0aW9uCiAqIEBwYXJhbSBzdHJpbmcgJHF1ZXJ5CiAqIEBwYXJhbSBRdWVyeVBhcmFtZXRlciAuLi4kcGFyYW1ldGVycwogKi8="},{"repository_path":"src\/adapter\/etl-adapter-doctrine\/src\/Flow\/ETL\/Adapter\/Doctrine\/functions.php","start_line_in_file":56,"slug":"from-dbal-limit-offset","name":"from_dbal_limit_offset","namespace":"Flow\\ETL\\Adapter\\Doctrine","parameters":[{"name":"connection","type":[{"name":"Connection","namespace":"Doctrine\\DBAL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"table","type":[{"name":"Table","namespace":"Flow\\ETL\\Adapter\\Doctrine","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"order_by","type":[{"name":"OrderBy","namespace":"Flow\\ETL\\Adapter\\Doctrine","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"page_size","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"1000"},{"name":"maximum","type":[{"name":"int","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"DbalLimitOffsetExtractor","namespace":"Flow\\ETL\\Adapter\\Doctrine","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"DOCTRINE","type":"EXTRACTOR"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBDb25uZWN0aW9uICRjb25uZWN0aW9uCiAqIEBwYXJhbSBzdHJpbmd8VGFibGUgJHRhYmxlCiAqIEBwYXJhbSBhcnJheTxPcmRlckJ5PnxPcmRlckJ5ICRvcmRlcl9ieQogKiBAcGFyYW0gaW50ICRwYWdlX3NpemUKICogQHBhcmFtIG51bGx8aW50ICRtYXhpbXVtCiAqCiAqIEB0aHJvd3MgSW52YWxpZEFyZ3VtZW50RXhjZXB0aW9uCiAqLw=="},{"repository_path":"src\/adapter\/etl-adapter-doctrine\/src\/Flow\/ETL\/Adapter\/Doctrine\/functions.php","start_line_in_file":83,"slug":"from-dbal-limit-offset-qb","name":"from_dbal_limit_offset_qb","namespace":"Flow\\ETL\\Adapter\\Doctrine","parameters":[{"name":"connection","type":[{"name":"Connection","namespace":"Doctrine\\DBAL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"queryBuilder","type":[{"name":"QueryBuilder","namespace":"Doctrine\\DBAL\\Query","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"page_size","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"1000"},{"name":"maximum","type":[{"name":"int","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"offset","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"0"}],"return_type":[{"name":"DbalLimitOffsetExtractor","namespace":"Flow\\ETL\\Adapter\\Doctrine","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"DOCTRINE","type":"EXTRACTOR"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBDb25uZWN0aW9uICRjb25uZWN0aW9uCiAqIEBwYXJhbSBpbnQgJHBhZ2Vfc2l6ZQogKiBAcGFyYW0gbnVsbHxpbnQgJG1heGltdW0gLSBtYXhpbXVtIGNhbiBhbHNvIGJlIHRha2VuIGZyb20gYSBxdWVyeSBidWlsZGVyLCAkbWF4aW11bSBob3dldmVyIGlzIHVzZWQgcmVnYXJkbGVzcyBvZiB0aGUgcXVlcnkgYnVpbGRlciBpZiBpdCdzIHNldAogKiBAcGFyYW0gaW50ICRvZmZzZXQgLSBvZmZzZXQgY2FuIGFsc28gYmUgdGFrZW4gZnJvbSBhIHF1ZXJ5IGJ1aWxkZXIsICRvZmZzZXQgaG93ZXZlciBpcyB1c2VkIHJlZ2FyZGxlc3Mgb2YgdGhlIHF1ZXJ5IGJ1aWxkZXIgaWYgaXQncyBzZXQgdG8gbm9uIDAgdmFsdWUKICov"},{"repository_path":"src\/adapter\/etl-adapter-doctrine\/src\/Flow\/ETL\/Adapter\/Doctrine\/functions.php","start_line_in_file":104,"slug":"from-dbal-key-set-qb","name":"from_dbal_key_set_qb","namespace":"Flow\\ETL\\Adapter\\Doctrine","parameters":[{"name":"connection","type":[{"name":"Connection","namespace":"Doctrine\\DBAL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"queryBuilder","type":[{"name":"QueryBuilder","namespace":"Doctrine\\DBAL\\Query","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"key_set","type":[{"name":"KeySet","namespace":"Flow\\ETL\\Adapter\\Doctrine\\Pagination","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"DbalKeySetExtractor","namespace":"Flow\\ETL\\Adapter\\Doctrine","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"DOCTRINE","type":"EXTRACTOR"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/adapter\/etl-adapter-doctrine\/src\/Flow\/ETL\/Adapter\/Doctrine\/functions.php","start_line_in_file":117,"slug":"from-dbal-queries","name":"from_dbal_queries","namespace":"Flow\\ETL\\Adapter\\Doctrine","parameters":[{"name":"connection","type":[{"name":"Connection","namespace":"Doctrine\\DBAL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"query","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"parameters_set","type":[{"name":"ParametersSet","namespace":"Flow\\ETL\\Adapter\\Doctrine","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"types","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"DbalQueryExtractor","namespace":"Flow\\ETL\\Adapter\\Doctrine","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"DOCTRINE","type":"EXTRACTOR"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBudWxsfFBhcmFtZXRlcnNTZXQgJHBhcmFtZXRlcnNfc2V0IC0gZWFjaCBvbmUgcGFyYW1ldGVycyBhcnJheSB3aWxsIGJlIGV2YWx1YXRlZCBhcyBuZXcgcXVlcnkKICogQHBhcmFtIGFycmF5PGludHxzdHJpbmcsIERiYWxBcnJheVR5cGV8RGJhbFBhcmFtZXRlclR5cGV8RGJhbFR5cGV8aW50fHN0cmluZz4gJHR5cGVzCiAqLw=="},{"repository_path":"src\/adapter\/etl-adapter-doctrine\/src\/Flow\/ETL\/Adapter\/Doctrine\/functions.php","start_line_in_file":147,"slug":"dbal-from-queries","name":"dbal_from_queries","namespace":"Flow\\ETL\\Adapter\\Doctrine","parameters":[{"name":"connection","type":[{"name":"Connection","namespace":"Doctrine\\DBAL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"query","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"parameters_set","type":[{"name":"ParametersSet","namespace":"Flow\\ETL\\Adapter\\Doctrine","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"types","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"DbalQueryExtractor","namespace":"Flow\\ETL\\Adapter\\Doctrine","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"DOCTRINE","type":"EXTRACTOR"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBkZXByZWNhdGVkIHVzZSBmcm9tX2RiYWxfcXVlcmllcygpIGluc3RlYWQKICoKICogQHBhcmFtIG51bGx8UGFyYW1ldGVyc1NldCAkcGFyYW1ldGVyc19zZXQgLSBlYWNoIG9uZSBwYXJhbWV0ZXJzIGFycmF5IHdpbGwgYmUgZXZhbHVhdGVkIGFzIG5ldyBxdWVyeQogKiBAcGFyYW0gYXJyYXk8aW50fHN0cmluZywgRGJhbEFycmF5VHlwZXxEYmFsUGFyYW1ldGVyVHlwZXxEYmFsVHlwZXxpbnR8c3RyaW5nPiAkdHlwZXMKICov"},{"repository_path":"src\/adapter\/etl-adapter-doctrine\/src\/Flow\/ETL\/Adapter\/Doctrine\/functions.php","start_line_in_file":161,"slug":"from-dbal-query","name":"from_dbal_query","namespace":"Flow\\ETL\\Adapter\\Doctrine","parameters":[{"name":"connection","type":[{"name":"Connection","namespace":"Doctrine\\DBAL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"query","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"parameters","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"},{"name":"types","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"DbalQueryExtractor","namespace":"Flow\\ETL\\Adapter\\Doctrine","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"DOCTRINE","type":"EXTRACTOR"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxzdHJpbmcsIG1peGVkPnxsaXN0PG1peGVkPiAkcGFyYW1ldGVycyAtIEBkZXByZWNhdGVkIHVzZSBEYmFsUXVlcnlFeHRyYWN0b3I6OndpdGhQYXJhbWV0ZXJzKCkgaW5zdGVhZAogKiBAcGFyYW0gYXJyYXk8aW50PDAsIG1heD58c3RyaW5nLCBEYmFsQXJyYXlUeXBlfERiYWxQYXJhbWV0ZXJUeXBlfERiYWxUeXBlfHN0cmluZz4gJHR5cGVzIC0gQGRlcHJlY2F0ZWQgdXNlIERiYWxRdWVyeUV4dHJhY3Rvcjo6d2l0aFR5cGVzKCkgaW5zdGVhZAogKi8="},{"repository_path":"src\/adapter\/etl-adapter-doctrine\/src\/Flow\/ETL\/Adapter\/Doctrine\/functions.php","start_line_in_file":182,"slug":"dbal-from-query","name":"dbal_from_query","namespace":"Flow\\ETL\\Adapter\\Doctrine","parameters":[{"name":"connection","type":[{"name":"Connection","namespace":"Doctrine\\DBAL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"query","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"parameters","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"},{"name":"types","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"DbalQueryExtractor","namespace":"Flow\\ETL\\Adapter\\Doctrine","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"DOCTRINE","type":"EXTRACTOR"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBkZXByZWNhdGVkIHVzZSBmcm9tX2RiYWxfcXVlcnkoKSBpbnN0ZWFkCiAqCiAqIEBwYXJhbSBhcnJheTxzdHJpbmcsIG1peGVkPnxsaXN0PG1peGVkPiAkcGFyYW1ldGVycyAtIEBkZXByZWNhdGVkIHVzZSBEYmFsUXVlcnlFeHRyYWN0b3I6OndpdGhQYXJhbWV0ZXJzKCkgaW5zdGVhZAogKiBAcGFyYW0gYXJyYXk8aW50PDAsIG1heD58c3RyaW5nLCBEYmFsQXJyYXlUeXBlfERiYWxQYXJhbWV0ZXJUeXBlfERiYWxUeXBlfHN0cmluZz4gJHR5cGVzIC0gQGRlcHJlY2F0ZWQgdXNlIERiYWxRdWVyeUV4dHJhY3Rvcjo6d2l0aFR5cGVzKCkgaW5zdGVhZAogKi8="},{"repository_path":"src\/adapter\/etl-adapter-doctrine\/src\/Flow\/ETL\/Adapter\/Doctrine\/functions.php","start_line_in_file":208,"slug":"to-dbal-table-insert","name":"to_dbal_table_insert","namespace":"Flow\\ETL\\Adapter\\Doctrine","parameters":[{"name":"connection","type":[{"name":"Connection","namespace":"Doctrine\\DBAL","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"table","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"options","type":[{"name":"InsertOptions","namespace":"Flow\\Doctrine\\Bulk","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"DbalLoader","namespace":"Flow\\ETL\\Adapter\\Doctrine","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"DOCTRINE","type":"LOADER"}},{"name":"DocumentationExample","namespace":"Flow\\ETL\\Attribute","arguments":{"topic":"data_frame","example":"data_writing","option":"database_upsert"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEluc2VydCBuZXcgcm93cyBpbnRvIGEgZGF0YWJhc2UgdGFibGUuCiAqIEluc2VydCBjYW4gYWxzbyBiZSB1c2VkIGFzIGFuIHVwc2VydCB3aXRoIHRoZSBoZWxwIG9mIEluc2VydE9wdGlvbnMuCiAqIEluc2VydE9wdGlvbnMgYXJlIHBsYXRmb3JtIHNwZWNpZmljLCBzbyBwbGVhc2UgY2hvb3NlIHRoZSByaWdodCBvbmUgZm9yIHlvdXIgZGF0YWJhc2UuCiAqCiAqICAtIE15U1FMSW5zZXJ0T3B0aW9ucwogKiAgLSBQb3N0Z3JlU1FMSW5zZXJ0T3B0aW9ucwogKiAgLSBTcWxpdGVJbnNlcnRPcHRpb25zCiAqCiAqIEluIG9yZGVyIHRvIGNvbnRyb2wgdGhlIHNpemUgb2YgdGhlIHNpbmdsZSBpbnNlcnQsIHVzZSBEYXRhRnJhbWU6OmNodW5rU2l6ZSgpIG1ldGhvZCBqdXN0IGJlZm9yZSBjYWxsaW5nIERhdGFGcmFtZTo6bG9hZCgpLgogKgogKiBAcGFyYW0gYXJyYXk8c3RyaW5nLCBtaXhlZD58Q29ubmVjdGlvbiAkY29ubmVjdGlvbgogKgogKiBAdGhyb3dzIEludmFsaWRBcmd1bWVudEV4Y2VwdGlvbgogKi8="},{"repository_path":"src\/adapter\/etl-adapter-doctrine\/src\/Flow\/ETL\/Adapter\/Doctrine\/functions.php","start_line_in_file":228,"slug":"to-dbal-table-update","name":"to_dbal_table_update","namespace":"Flow\\ETL\\Adapter\\Doctrine","parameters":[{"name":"connection","type":[{"name":"Connection","namespace":"Doctrine\\DBAL","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"table","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"options","type":[{"name":"UpdateOptions","namespace":"Flow\\Doctrine\\Bulk","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"DbalLoader","namespace":"Flow\\ETL\\Adapter\\Doctrine","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"DOCTRINE","type":"LOADER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqICBVcGRhdGUgZXhpc3Rpbmcgcm93cyBpbiBkYXRhYmFzZS4KICoKICogIEluIG9yZGVyIHRvIGNvbnRyb2wgdGhlIHNpemUgb2YgdGhlIHNpbmdsZSByZXF1ZXN0LCB1c2UgRGF0YUZyYW1lOjpjaHVua1NpemUoKSBtZXRob2QganVzdCBiZWZvcmUgY2FsbGluZyBEYXRhRnJhbWU6OmxvYWQoKS4KICoKICogQHBhcmFtIGFycmF5PHN0cmluZywgbWl4ZWQ+fENvbm5lY3Rpb24gJGNvbm5lY3Rpb24KICoKICogQHRocm93cyBJbnZhbGlkQXJndW1lbnRFeGNlcHRpb24KICov"},{"repository_path":"src\/adapter\/etl-adapter-doctrine\/src\/Flow\/ETL\/Adapter\/Doctrine\/functions.php","start_line_in_file":248,"slug":"to-dbal-table-delete","name":"to_dbal_table_delete","namespace":"Flow\\ETL\\Adapter\\Doctrine","parameters":[{"name":"connection","type":[{"name":"Connection","namespace":"Doctrine\\DBAL","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"table","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"DbalLoader","namespace":"Flow\\ETL\\Adapter\\Doctrine","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"DOCTRINE","type":"LOADER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIERlbGV0ZSByb3dzIGZyb20gZGF0YWJhc2UgdGFibGUgYmFzZWQgb24gdGhlIHByb3ZpZGVkIGRhdGEuCiAqCiAqIEluIG9yZGVyIHRvIGNvbnRyb2wgdGhlIHNpemUgb2YgdGhlIHNpbmdsZSByZXF1ZXN0LCB1c2UgRGF0YUZyYW1lOjpjaHVua1NpemUoKSBtZXRob2QganVzdCBiZWZvcmUgY2FsbGluZyBEYXRhRnJhbWU6OmxvYWQoKS4KICoKICogQHBhcmFtIGFycmF5PHN0cmluZywgbWl4ZWQ+fENvbm5lY3Rpb24gJGNvbm5lY3Rpb24KICoKICogQHRocm93cyBJbnZhbGlkQXJndW1lbnRFeGNlcHRpb24KICov"},{"repository_path":"src\/adapter\/etl-adapter-doctrine\/src\/Flow\/ETL\/Adapter\/Doctrine\/functions.php","start_line_in_file":265,"slug":"to-dbal-schema-table","name":"to_dbal_schema_table","namespace":"Flow\\ETL\\Adapter\\Doctrine","parameters":[{"name":"schema","type":[{"name":"Schema","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"table_name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"table_options","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"},{"name":"types_map","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"Table","namespace":"Doctrine\\DBAL\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"DOCTRINE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENvbnZlcnRzIGEgRmxvd1xFVExcU2NoZW1hIHRvIGEgRG9jdHJpbmVcREJBTFxTY2hlbWFcVGFibGUuCiAqCiAqIEBwYXJhbSBTY2hlbWEgJHNjaGVtYQogKiBAcGFyYW0gYXJyYXk8YXJyYXkta2V5LCBtaXhlZD4gJHRhYmxlX29wdGlvbnMKICogQHBhcmFtIGFycmF5PGNsYXNzLXN0cmluZzxcRmxvd1xUeXBlc1xUeXBlPG1peGVkPj4sIGNsYXNzLXN0cmluZzxcRG9jdHJpbmVcREJBTFxUeXBlc1xUeXBlPj4gJHR5cGVzX21hcAogKi8="},{"repository_path":"src\/adapter\/etl-adapter-doctrine\/src\/Flow\/ETL\/Adapter\/Doctrine\/functions.php","start_line_in_file":278,"slug":"table-schema-to-flow-schema","name":"table_schema_to_flow_schema","namespace":"Flow\\ETL\\Adapter\\Doctrine","parameters":[{"name":"table","type":[{"name":"Table","namespace":"Doctrine\\DBAL\\Schema","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"types_map","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"Schema","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"DOCTRINE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENvbnZlcnRzIGEgRG9jdHJpbmVcREJBTFxTY2hlbWFcVGFibGUgdG8gYSBGbG93XEVUTFxTY2hlbWEuCiAqCiAqIEBwYXJhbSBhcnJheTxjbGFzcy1zdHJpbmc8XEZsb3dcVHlwZXNcVHlwZTxtaXhlZD4+LCBjbGFzcy1zdHJpbmc8XERvY3RyaW5lXERCQUxcVHlwZXNcVHlwZT4+ICR0eXBlc19tYXAKICoKICogQHJldHVybiBTY2hlbWEKICov"},{"repository_path":"src\/adapter\/etl-adapter-doctrine\/src\/Flow\/ETL\/Adapter\/Doctrine\/functions.php","start_line_in_file":289,"slug":"postgresql-insert-options","name":"postgresql_insert_options","namespace":"Flow\\ETL\\Adapter\\Doctrine","parameters":[{"name":"skip_conflicts","type":[{"name":"bool","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"constraint","type":[{"name":"string","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"conflict_columns","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"},{"name":"update_columns","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"PostgreSQLInsertOptions","namespace":"Flow\\Doctrine\\Bulk\\Dialect","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"DOCTRINE","type":"HELPER"}},{"name":"DocumentationExample","namespace":"Flow\\ETL\\Attribute","arguments":{"topic":"data_frame","example":"data_writing","option":"database_upsert"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxzdHJpbmc+ICRjb25mbGljdF9jb2x1bW5zCiAqIEBwYXJhbSBhcnJheTxzdHJpbmc+ICR1cGRhdGVfY29sdW1ucwogKi8="},{"repository_path":"src\/adapter\/etl-adapter-doctrine\/src\/Flow\/ETL\/Adapter\/Doctrine\/functions.php","start_line_in_file":298,"slug":"mysql-insert-options","name":"mysql_insert_options","namespace":"Flow\\ETL\\Adapter\\Doctrine","parameters":[{"name":"skip_conflicts","type":[{"name":"bool","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"upsert","type":[{"name":"bool","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"update_columns","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"MySQLInsertOptions","namespace":"Flow\\Doctrine\\Bulk\\Dialect","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"DOCTRINE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxzdHJpbmc+ICR1cGRhdGVfY29sdW1ucwogKi8="},{"repository_path":"src\/adapter\/etl-adapter-doctrine\/src\/Flow\/ETL\/Adapter\/Doctrine\/functions.php","start_line_in_file":308,"slug":"sqlite-insert-options","name":"sqlite_insert_options","namespace":"Flow\\ETL\\Adapter\\Doctrine","parameters":[{"name":"skip_conflicts","type":[{"name":"bool","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"conflict_columns","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"},{"name":"update_columns","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"SqliteInsertOptions","namespace":"Flow\\Doctrine\\Bulk\\Dialect","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"DOCTRINE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxzdHJpbmc+ICRjb25mbGljdF9jb2x1bW5zCiAqIEBwYXJhbSBhcnJheTxzdHJpbmc+ICR1cGRhdGVfY29sdW1ucwogKi8="},{"repository_path":"src\/adapter\/etl-adapter-doctrine\/src\/Flow\/ETL\/Adapter\/Doctrine\/functions.php","start_line_in_file":318,"slug":"postgresql-update-options","name":"postgresql_update_options","namespace":"Flow\\ETL\\Adapter\\Doctrine","parameters":[{"name":"primary_key_columns","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"},{"name":"update_columns","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"PostgreSQLUpdateOptions","namespace":"Flow\\Doctrine\\Bulk\\Dialect","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"DOCTRINE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxzdHJpbmc+ICRwcmltYXJ5X2tleV9jb2x1bW5zCiAqIEBwYXJhbSBhcnJheTxzdHJpbmc+ICR1cGRhdGVfY29sdW1ucwogKi8="},{"repository_path":"src\/adapter\/etl-adapter-doctrine\/src\/Flow\/ETL\/Adapter\/Doctrine\/functions.php","start_line_in_file":339,"slug":"to-dbal-transaction","name":"to_dbal_transaction","namespace":"Flow\\ETL\\Adapter\\Doctrine","parameters":[{"name":"connection","type":[{"name":"Connection","namespace":"Doctrine\\DBAL","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"loaders","type":[{"name":"Loader","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"TransactionalDbalLoader","namespace":"Flow\\ETL\\Adapter\\Doctrine","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"DOCTRINE","type":"LOADER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEV4ZWN1dGUgbXVsdGlwbGUgbG9hZGVycyB3aXRoaW4gYSBkYXRhYmFzZSB0cmFuc2FjdGlvbi4KICogRWFjaCBiYXRjaCBvZiByb3dzIHdpbGwgYmUgcHJvY2Vzc2VkIGluIGl0cyBvd24gdHJhbnNhY3Rpb24uCiAqIElmIGFueSBsb2FkZXIgZmFpbHMsIHRoZSBlbnRpcmUgYmF0Y2ggd2lsbCBiZSByb2xsZWQgYmFjay4KICoKICogQHBhcmFtIGFycmF5PHN0cmluZywgbWl4ZWQ+fENvbm5lY3Rpb24gJGNvbm5lY3Rpb24KICogQHBhcmFtIExvYWRlciAuLi4kbG9hZGVycyAtIExvYWRlcnMgdG8gZXhlY3V0ZSB3aXRoaW4gdGhlIHRyYW5zYWN0aW9uCiAqCiAqIEB0aHJvd3MgSW52YWxpZEFyZ3VtZW50RXhjZXB0aW9uCiAqLw=="},{"repository_path":"src\/adapter\/etl-adapter-doctrine\/src\/Flow\/ETL\/Adapter\/Doctrine\/functions.php","start_line_in_file":349,"slug":"pagination-key-asc","name":"pagination_key_asc","namespace":"Flow\\ETL\\Adapter\\Doctrine","parameters":[{"name":"column","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"type","type":[{"name":"ParameterType","namespace":"Doctrine\\DBAL","is_nullable":false,"is_variadic":false},{"name":"Type","namespace":"Doctrine\\DBAL\\Types","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Doctrine\\DBAL\\ParameterType::..."}],"return_type":[{"name":"Key","namespace":"Flow\\ETL\\Adapter\\Doctrine\\Pagination","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"DOCTRINE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/adapter\/etl-adapter-doctrine\/src\/Flow\/ETL\/Adapter\/Doctrine\/functions.php","start_line_in_file":355,"slug":"pagination-key-desc","name":"pagination_key_desc","namespace":"Flow\\ETL\\Adapter\\Doctrine","parameters":[{"name":"column","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"type","type":[{"name":"ParameterType","namespace":"Doctrine\\DBAL","is_nullable":false,"is_variadic":false},{"name":"Type","namespace":"Doctrine\\DBAL\\Types","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Doctrine\\DBAL\\ParameterType::..."}],"return_type":[{"name":"Key","namespace":"Flow\\ETL\\Adapter\\Doctrine\\Pagination","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"DOCTRINE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/adapter\/etl-adapter-doctrine\/src\/Flow\/ETL\/Adapter\/Doctrine\/functions.php","start_line_in_file":361,"slug":"pagination-key-set","name":"pagination_key_set","namespace":"Flow\\ETL\\Adapter\\Doctrine","parameters":[{"name":"keys","type":[{"name":"Key","namespace":"Flow\\ETL\\Adapter\\Doctrine\\Pagination","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"KeySet","namespace":"Flow\\ETL\\Adapter\\Doctrine\\Pagination","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"DOCTRINE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/adapter\/etl-adapter-excel\/src\/Flow\/ETL\/Adapter\/Excel\/DSL\/functions.php","start_line_in_file":18,"slug":"from-excel","name":"from_excel","namespace":"Flow\\ETL\\Adapter\\Excel\\DSL","parameters":[{"name":"path","type":[{"name":"Path","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ExcelExtractor","namespace":"Flow\\ETL\\Adapter\\Excel","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"EXCEL","type":"EXTRACTOR"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/adapter\/etl-adapter-excel\/src\/Flow\/ETL\/Adapter\/Excel\/DSL\/functions.php","start_line_in_file":25,"slug":"to-excel","name":"to_excel","namespace":"Flow\\ETL\\Adapter\\Excel\\DSL","parameters":[{"name":"path","type":[{"name":"Path","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ExcelLoader","namespace":"Flow\\ETL\\Adapter\\Excel","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"EXCEL","type":"LOADER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/adapter\/etl-adapter-excel\/src\/Flow\/ETL\/Adapter\/Excel\/DSL\/functions.php","start_line_in_file":31,"slug":"is-valid-excel-sheet-name","name":"is_valid_excel_sheet_name","namespace":"Flow\\ETL\\Adapter\\Excel\\DSL","parameters":[{"name":"sheet_name","type":[{"name":"ScalarFunction","namespace":"Flow\\ETL\\Function","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"IsValidExcelSheetName","namespace":"Flow\\ETL\\Adapter\\Excel\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"EXCEL","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/adapter\/etl-adapter-elasticsearch\/src\/Flow\/ETL\/Adapter\/Elasticsearch\/functions.php","start_line_in_file":36,"slug":"to-es-bulk-index","name":"to_es_bulk_index","namespace":"Flow\\ETL\\Adapter\\Elasticsearch","parameters":[{"name":"config","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"index","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"id_factory","type":[{"name":"IdFactory","namespace":"Flow\\ETL\\Adapter\\Elasticsearch","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"parameters","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"ElasticsearchLoader","namespace":"Flow\\ETL\\Adapter\\Elasticsearch\\ElasticsearchPHP","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"ELASTIC_SEARCH","type":"LOADER"}},{"name":"DocumentationExample","namespace":"Flow\\ETL\\Attribute","arguments":{"topic":"data_frame","example":"data_writing","option":"elasticsearch"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIGh0dHBzOi8vd3d3LmVsYXN0aWMuY28vZ3VpZGUvZW4vZWxhc3RpY3NlYXJjaC9yZWZlcmVuY2UvbWFzdGVyL2RvY3MtYnVsay5odG1sLgogKgogKiBJbiBvcmRlciB0byBjb250cm9sIHRoZSBzaXplIG9mIHRoZSBzaW5nbGUgcmVxdWVzdCwgdXNlIERhdGFGcmFtZTo6Y2h1bmtTaXplKCkgbWV0aG9kIGp1c3QgYmVmb3JlIGNhbGxpbmcgRGF0YUZyYW1lOjpsb2FkKCkuCiAqCiAqIEBwYXJhbSBhcnJheXsKICogIGhvc3RzPzogYXJyYXk8c3RyaW5nPiwKICogIGNvbm5lY3Rpb25QYXJhbXM\/OiBhcnJheTxtaXhlZD4sCiAqICByZXRyaWVzPzogaW50LAogKiAgc25pZmZPblN0YXJ0PzogYm9vbCwKICogIHNzbENlcnQ\/OiBhcnJheTxzdHJpbmc+LAogKiAgc3NsS2V5PzogYXJyYXk8c3RyaW5nPiwKICogIHNzbFZlcmlmaWNhdGlvbj86IGJvb2x8c3RyaW5nLAogKiAgZWxhc3RpY01ldGFIZWFkZXI\/OiBib29sLAogKiAgaW5jbHVkZVBvcnRJbkhvc3RIZWFkZXI\/OiBib29sCiAqIH0gJGNvbmZpZwogKiBAcGFyYW0gc3RyaW5nICRpbmRleAogKiBAcGFyYW0gSWRGYWN0b3J5ICRpZF9mYWN0b3J5CiAqIEBwYXJhbSBhcnJheTxtaXhlZD4gJHBhcmFtZXRlcnMgLSBodHRwczovL3d3dy5lbGFzdGljLmNvL2d1aWRlL2VuL2VsYXN0aWNzZWFyY2gvcmVmZXJlbmNlL21hc3Rlci9kb2NzLWJ1bGsuaHRtbCAtIEBkZXByZWNhdGVkIHVzZSB3aXRoUGFyYW1ldGVycyBtZXRob2QgaW5zdGVhZAogKi8="},{"repository_path":"src\/adapter\/etl-adapter-elasticsearch\/src\/Flow\/ETL\/Adapter\/Elasticsearch\/functions.php","start_line_in_file":47,"slug":"entry-id-factory","name":"entry_id_factory","namespace":"Flow\\ETL\\Adapter\\Elasticsearch","parameters":[{"name":"entry_name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"IdFactory","namespace":"Flow\\ETL\\Adapter\\Elasticsearch","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"ELASTIC_SEARCH","type":"HELPER"}},{"name":"DocumentationExample","namespace":"Flow\\ETL\\Attribute","arguments":{"topic":"data_frame","example":"data_writing","option":"elasticsearch"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/adapter\/etl-adapter-elasticsearch\/src\/Flow\/ETL\/Adapter\/Elasticsearch\/functions.php","start_line_in_file":53,"slug":"hash-id-factory","name":"hash_id_factory","namespace":"Flow\\ETL\\Adapter\\Elasticsearch","parameters":[{"name":"entry_names","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"IdFactory","namespace":"Flow\\ETL\\Adapter\\Elasticsearch","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"ELASTIC_SEARCH","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/adapter\/etl-adapter-elasticsearch\/src\/Flow\/ETL\/Adapter\/Elasticsearch\/functions.php","start_line_in_file":79,"slug":"to-es-bulk-update","name":"to_es_bulk_update","namespace":"Flow\\ETL\\Adapter\\Elasticsearch","parameters":[{"name":"config","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"index","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"id_factory","type":[{"name":"IdFactory","namespace":"Flow\\ETL\\Adapter\\Elasticsearch","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"parameters","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"ElasticsearchLoader","namespace":"Flow\\ETL\\Adapter\\Elasticsearch\\ElasticsearchPHP","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"ELASTIC_SEARCH","type":"LOADER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqICBodHRwczovL3d3dy5lbGFzdGljLmNvL2d1aWRlL2VuL2VsYXN0aWNzZWFyY2gvcmVmZXJlbmNlL21hc3Rlci9kb2NzLWJ1bGsuaHRtbC4KICoKICogSW4gb3JkZXIgdG8gY29udHJvbCB0aGUgc2l6ZSBvZiB0aGUgc2luZ2xlIHJlcXVlc3QsIHVzZSBEYXRhRnJhbWU6OmNodW5rU2l6ZSgpIG1ldGhvZCBqdXN0IGJlZm9yZSBjYWxsaW5nIERhdGFGcmFtZTo6bG9hZCgpLgogKgogKiBAcGFyYW0gYXJyYXl7CiAqICBob3N0cz86IGFycmF5PHN0cmluZz4sCiAqICBjb25uZWN0aW9uUGFyYW1zPzogYXJyYXk8bWl4ZWQ+LAogKiAgcmV0cmllcz86IGludCwKICogIHNuaWZmT25TdGFydD86IGJvb2wsCiAqICBzc2xDZXJ0PzogYXJyYXk8c3RyaW5nPiwKICogIHNzbEtleT86IGFycmF5PHN0cmluZz4sCiAqICBzc2xWZXJpZmljYXRpb24\/OiBib29sfHN0cmluZywKICogIGVsYXN0aWNNZXRhSGVhZGVyPzogYm9vbCwKICogIGluY2x1ZGVQb3J0SW5Ib3N0SGVhZGVyPzogYm9vbAogKiB9ICRjb25maWcKICogQHBhcmFtIHN0cmluZyAkaW5kZXgKICogQHBhcmFtIElkRmFjdG9yeSAkaWRfZmFjdG9yeQogKiBAcGFyYW0gYXJyYXk8bWl4ZWQ+ICRwYXJhbWV0ZXJzIC0gaHR0cHM6Ly93d3cuZWxhc3RpYy5jby9ndWlkZS9lbi9lbGFzdGljc2VhcmNoL3JlZmVyZW5jZS9tYXN0ZXIvZG9jcy1idWxrLmh0bWwgLSBAZGVwcmVjYXRlZCB1c2Ugd2l0aFBhcmFtZXRlcnMgbWV0aG9kIGluc3RlYWQKICov"},{"repository_path":"src\/adapter\/etl-adapter-elasticsearch\/src\/Flow\/ETL\/Adapter\/Elasticsearch\/functions.php","start_line_in_file":95,"slug":"es-hits-to-rows","name":"es_hits_to_rows","namespace":"Flow\\ETL\\Adapter\\Elasticsearch","parameters":[{"name":"source","type":[{"name":"DocumentDataSource","namespace":"Flow\\ETL\\Adapter\\Elasticsearch\\ElasticsearchPHP","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Adapter\\Elasticsearch\\ElasticsearchPHP\\DocumentDataSource::..."}],"return_type":[{"name":"HitsIntoRowsTransformer","namespace":"Flow\\ETL\\Adapter\\Elasticsearch\\ElasticsearchPHP","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"ELASTIC_SEARCH","type":"HELPER"}},{"name":"DocumentationExample","namespace":"Flow\\ETL\\Attribute","arguments":{"topic":"data_frame","example":"data_writing","option":"elasticsearch"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIFRyYW5zZm9ybXMgZWxhc3RpY3NlYXJjaCByZXN1bHRzIGludG8gY2xlYXIgRmxvdyBSb3dzIHVzaW5nIFsnaGl0cyddWydoaXRzJ11beF1bJ19zb3VyY2UnXS4KICoKICogQHJldHVybiBIaXRzSW50b1Jvd3NUcmFuc2Zvcm1lcgogKi8="},{"repository_path":"src\/adapter\/etl-adapter-elasticsearch\/src\/Flow\/ETL\/Adapter\/Elasticsearch\/functions.php","start_line_in_file":124,"slug":"from-es","name":"from_es","namespace":"Flow\\ETL\\Adapter\\Elasticsearch","parameters":[{"name":"config","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"parameters","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"pit_params","type":[{"name":"array","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"ElasticsearchExtractor","namespace":"Flow\\ETL\\Adapter\\Elasticsearch\\ElasticsearchPHP","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"ELASTIC_SEARCH","type":"EXTRACTOR"}},{"name":"DocumentationExample","namespace":"Flow\\ETL\\Attribute","arguments":{"topic":"data_frame","example":"data_reading","option":"elasticsearch"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEV4dHJhY3RvciB3aWxsIGF1dG9tYXRpY2FsbHkgdHJ5IHRvIGl0ZXJhdGUgb3ZlciB3aG9sZSBpbmRleCB1c2luZyBvbmUgb2YgdGhlIHR3byBpdGVyYXRpb24gbWV0aG9kczouCiAqCiAqIC0gZnJvbS9zaXplCiAqIC0gc2VhcmNoX2FmdGVyCiAqCiAqIFNlYXJjaCBhZnRlciBpcyBzZWxlY3RlZCB3aGVuIHlvdSBwcm92aWRlIGRlZmluZSBzb3J0IHBhcmFtZXRlcnMgaW4gcXVlcnksIG90aGVyd2lzZSBpdCB3aWxsIGZhbGxiYWNrIHRvIGZyb20vc2l6ZS4KICoKICogQHBhcmFtIGFycmF5ewogKiAgaG9zdHM\/OiBhcnJheTxzdHJpbmc+LAogKiAgY29ubmVjdGlvblBhcmFtcz86IGFycmF5PG1peGVkPiwKICogIHJldHJpZXM\/OiBpbnQsCiAqICBzbmlmZk9uU3RhcnQ\/OiBib29sLAogKiAgc3NsQ2VydD86IGFycmF5PHN0cmluZz4sCiAqICBzc2xLZXk\/OiBhcnJheTxzdHJpbmc+LAogKiAgc3NsVmVyaWZpY2F0aW9uPzogYm9vbHxzdHJpbmcsCiAqICBlbGFzdGljTWV0YUhlYWRlcj86IGJvb2wsCiAqICBpbmNsdWRlUG9ydEluSG9zdEhlYWRlcj86IGJvb2wKICogfSAkY29uZmlnCiAqIEBwYXJhbSBhcnJheTxtaXhlZD4gJHBhcmFtZXRlcnMgLSBodHRwczovL3d3dy5lbGFzdGljLmNvL2d1aWRlL2VuL2VsYXN0aWNzZWFyY2gvcmVmZXJlbmNlL21hc3Rlci9zZWFyY2gtc2VhcmNoLmh0bWwKICogQHBhcmFtID9hcnJheTxtaXhlZD4gJHBpdF9wYXJhbXMgLSB3aGVuIHVzZWQgZXh0cmFjdG9yIHdpbGwgY3JlYXRlIHBvaW50IGluIHRpbWUgdG8gc3RhYmlsaXplIHNlYXJjaCByZXN1bHRzLiBQb2ludCBpbiB0aW1lIGlzIGF1dG9tYXRpY2FsbHkgY2xvc2VkIHdoZW4gbGFzdCBlbGVtZW50IGlzIGV4dHJhY3RlZC4gaHR0cHM6Ly93d3cuZWxhc3RpYy5jby9ndWlkZS9lbi9lbGFzdGljc2VhcmNoL3JlZmVyZW5jZS9tYXN0ZXIvcG9pbnQtaW4tdGltZS1hcGkuaHRtbCAtIEBkZXByZWNhdGVkIHVzZSB3aXRoUG9pbnRJblRpbWUgbWV0aG9kIGluc3RlYWQKICov"},{"repository_path":"src\/adapter\/etl-adapter-google-sheet\/src\/Flow\/ETL\/Adapter\/GoogleSheet\/functions.php","start_line_in_file":20,"slug":"from-google-sheet","name":"from_google_sheet","namespace":"Flow\\ETL\\Adapter\\GoogleSheet","parameters":[{"name":"auth_config","type":[{"name":"Sheets","namespace":"Google\\Service","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"spreadsheet_id","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"sheet_name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"with_header","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"true"},{"name":"rows_per_page","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"1000"},{"name":"options","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"GoogleSheetExtractor","namespace":"Flow\\ETL\\Adapter\\GoogleSheet","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"GOOGLE_SHEET","type":"EXTRACTOR"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheXt0eXBlOiBzdHJpbmcsIHByb2plY3RfaWQ6IHN0cmluZywgcHJpdmF0ZV9rZXlfaWQ6IHN0cmluZywgcHJpdmF0ZV9rZXk6IHN0cmluZywgY2xpZW50X2VtYWlsOiBzdHJpbmcsIGNsaWVudF9pZDogc3RyaW5nLCBhdXRoX3VyaTogc3RyaW5nLCB0b2tlbl91cmk6IHN0cmluZywgYXV0aF9wcm92aWRlcl94NTA5X2NlcnRfdXJsOiBzdHJpbmcsIGNsaWVudF94NTA5X2NlcnRfdXJsOiBzdHJpbmd9fFNoZWV0cyAkYXV0aF9jb25maWcKICogQHBhcmFtIHN0cmluZyAkc3ByZWFkc2hlZXRfaWQKICogQHBhcmFtIHN0cmluZyAkc2hlZXRfbmFtZQogKiBAcGFyYW0gYm9vbCAkd2l0aF9oZWFkZXIgLSBAZGVwcmVjYXRlZCB1c2Ugd2l0aEhlYWRlciBtZXRob2QgaW5zdGVhZAogKiBAcGFyYW0gaW50ICRyb3dzX3Blcl9wYWdlIC0gaG93IG1hbnkgcm93cyBwZXIgcGFnZSB0byBmZXRjaCBmcm9tIEdvb2dsZSBTaGVldHMgQVBJIC0gQGRlcHJlY2F0ZWQgdXNlIHdpdGhSb3dzUGVyUGFnZSBtZXRob2QgaW5zdGVhZAogKiBAcGFyYW0gYXJyYXl7ZGF0ZVRpbWVSZW5kZXJPcHRpb24\/OiBzdHJpbmcsIG1ham9yRGltZW5zaW9uPzogc3RyaW5nLCB2YWx1ZVJlbmRlck9wdGlvbj86IHN0cmluZ30gJG9wdGlvbnMgLSBAZGVwcmVjYXRlZCB1c2Ugd2l0aE9wdGlvbnMgbWV0aG9kIGluc3RlYWQKICov"},{"repository_path":"src\/adapter\/etl-adapter-google-sheet\/src\/Flow\/ETL\/Adapter\/GoogleSheet\/functions.php","start_line_in_file":57,"slug":"from-google-sheet-columns","name":"from_google_sheet_columns","namespace":"Flow\\ETL\\Adapter\\GoogleSheet","parameters":[{"name":"auth_config","type":[{"name":"Sheets","namespace":"Google\\Service","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"spreadsheet_id","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"sheet_name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"start_range_column","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"end_range_column","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"with_header","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"true"},{"name":"rows_per_page","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"1000"},{"name":"options","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"GoogleSheetExtractor","namespace":"Flow\\ETL\\Adapter\\GoogleSheet","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"GOOGLE_SHEET","type":"EXTRACTOR"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheXt0eXBlOiBzdHJpbmcsIHByb2plY3RfaWQ6IHN0cmluZywgcHJpdmF0ZV9rZXlfaWQ6IHN0cmluZywgcHJpdmF0ZV9rZXk6IHN0cmluZywgY2xpZW50X2VtYWlsOiBzdHJpbmcsIGNsaWVudF9pZDogc3RyaW5nLCBhdXRoX3VyaTogc3RyaW5nLCB0b2tlbl91cmk6IHN0cmluZywgYXV0aF9wcm92aWRlcl94NTA5X2NlcnRfdXJsOiBzdHJpbmcsIGNsaWVudF94NTA5X2NlcnRfdXJsOiBzdHJpbmd9fFNoZWV0cyAkYXV0aF9jb25maWcKICogQHBhcmFtIHN0cmluZyAkc3ByZWFkc2hlZXRfaWQKICogQHBhcmFtIHN0cmluZyAkc2hlZXRfbmFtZQogKiBAcGFyYW0gc3RyaW5nICRzdGFydF9yYW5nZV9jb2x1bW4KICogQHBhcmFtIHN0cmluZyAkZW5kX3JhbmdlX2NvbHVtbgogKiBAcGFyYW0gYm9vbCAkd2l0aF9oZWFkZXIgLSBAZGVwcmVjYXRlZCB1c2Ugd2l0aEhlYWRlciBtZXRob2QgaW5zdGVhZAogKiBAcGFyYW0gaW50ICRyb3dzX3Blcl9wYWdlIC0gaG93IG1hbnkgcm93cyBwZXIgcGFnZSB0byBmZXRjaCBmcm9tIEdvb2dsZSBTaGVldHMgQVBJLCBkZWZhdWx0IDEwMDAgLSBAZGVwcmVjYXRlZCB1c2Ugd2l0aFJvd3NQZXJQYWdlIG1ldGhvZCBpbnN0ZWFkCiAqIEBwYXJhbSBhcnJheXtkYXRlVGltZVJlbmRlck9wdGlvbj86IHN0cmluZywgbWFqb3JEaW1lbnNpb24\/OiBzdHJpbmcsIHZhbHVlUmVuZGVyT3B0aW9uPzogc3RyaW5nfSAkb3B0aW9ucyAtIEBkZXByZWNhdGVkIHVzZSB3aXRoT3B0aW9ucyBtZXRob2QgaW5zdGVhZAogKi8="},{"repository_path":"src\/adapter\/etl-adapter-http\/src\/Flow\/ETL\/Adapter\/Http\/DSL\/functions.php","start_line_in_file":15,"slug":"from-dynamic-http-requests","name":"from_dynamic_http_requests","namespace":"Flow\\ETL\\Adapter\\Http","parameters":[{"name":"client","type":[{"name":"ClientInterface","namespace":"Psr\\Http\\Client","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"requestFactory","type":[{"name":"NextRequestFactory","namespace":"Flow\\ETL\\Adapter\\Http\\DynamicExtractor","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"PsrHttpClientDynamicExtractor","namespace":"Flow\\ETL\\Adapter\\Http","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"HTTP","type":"EXTRACTOR"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/adapter\/etl-adapter-http\/src\/Flow\/ETL\/Adapter\/Http\/DSL\/functions.php","start_line_in_file":29,"slug":"from-static-http-requests","name":"from_static_http_requests","namespace":"Flow\\ETL\\Adapter\\Http","parameters":[{"name":"client","type":[{"name":"ClientInterface","namespace":"Psr\\Http\\Client","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"requests","type":[{"name":"iterable","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"PsrHttpClientStaticExtractor","namespace":"Flow\\ETL\\Adapter\\Http","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"HTTP","type":"EXTRACTOR"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBpdGVyYWJsZTxSZXF1ZXN0SW50ZXJmYWNlPiAkcmVxdWVzdHMKICov"},{"repository_path":"src\/adapter\/etl-adapter-json\/src\/Flow\/ETL\/Adapter\/JSON\/functions.php","start_line_in_file":20,"slug":"from-json","name":"from_json","namespace":"Flow\\ETL\\Adapter\\JSON","parameters":[{"name":"path","type":[{"name":"Path","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"pointer","type":[{"name":"string","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"schema","type":[{"name":"Schema","namespace":"Flow\\ETL","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"JsonExtractor","namespace":"Flow\\ETL\\Adapter\\JSON\\JSONMachine","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"JSON","type":"EXTRACTOR"}},{"name":"DocumentationExample","namespace":"Flow\\ETL\\Attribute","arguments":{"topic":"data_frame","example":"data_reading","option":"json"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBQYXRofHN0cmluZyAkcGF0aCAtIHN0cmluZyBpcyBpbnRlcm5hbGx5IHR1cm5lZCBpbnRvIHN0cmVhbQogKiBAcGFyYW0gP3N0cmluZyAkcG9pbnRlciAtIGlmIHlvdSB3YW50IHRvIGl0ZXJhdGUgb25seSByZXN1bHRzIG9mIGEgc3VidHJlZSwgdXNlIGEgcG9pbnRlciwgcmVhZCBtb3JlIGF0IGh0dHBzOi8vZ2l0aHViLmNvbS9oYWxheGEvanNvbi1tYWNoaW5lI3BhcnNpbmctYS1zdWJ0cmVlIC0gQGRlcHJlY2F0ZSB1c2Ugd2l0aFBvaW50ZXIgbWV0aG9kIGluc3RlYWQKICogQHBhcmFtIG51bGx8U2NoZW1hICRzY2hlbWEgLSBlbmZvcmNlIHNjaGVtYSBvbiB0aGUgZXh0cmFjdGVkIGRhdGEgLSBAZGVwcmVjYXRlIHVzZSB3aXRoU2NoZW1hIG1ldGhvZCBpbnN0ZWFkCiAqLw=="},{"repository_path":"src\/adapter\/etl-adapter-json\/src\/Flow\/ETL\/Adapter\/JSON\/functions.php","start_line_in_file":45,"slug":"from-json-lines","name":"from_json_lines","namespace":"Flow\\ETL\\Adapter\\JSON","parameters":[{"name":"path","type":[{"name":"Path","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"JsonLinesExtractor","namespace":"Flow\\ETL\\Adapter\\JSON\\JSONMachine","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"JSON","type":"EXTRACTOR"}},{"name":"DocumentationExample","namespace":"Flow\\ETL\\Attribute","arguments":{"topic":"data_frame","example":"data_reading","option":"jsonl"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIFVzZWQgdG8gcmVhZCBmcm9tIGEgSlNPTiBsaW5lcyBodHRwczovL2pzb25saW5lcy5vcmcvIGZvcm1hdHRlZCBmaWxlLgogKgogKiBAcGFyYW0gUGF0aHxzdHJpbmcgJHBhdGggLSBzdHJpbmcgaXMgaW50ZXJuYWxseSB0dXJuZWQgaW50byBzdHJlYW0KICov"},{"repository_path":"src\/adapter\/etl-adapter-json\/src\/Flow\/ETL\/Adapter\/JSON\/functions.php","start_line_in_file":60,"slug":"to-json","name":"to_json","namespace":"Flow\\ETL\\Adapter\\JSON","parameters":[{"name":"path","type":[{"name":"Path","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"flags","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"4194304"},{"name":"date_time_format","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'Y-m-d\\\\TH:i:sP'"},{"name":"put_rows_in_new_lines","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"JsonLoader","namespace":"Flow\\ETL\\Adapter\\JSON","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"JSON","type":"LOADER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBQYXRofHN0cmluZyAkcGF0aAogKiBAcGFyYW0gaW50ICRmbGFncyAtIFBIUCBKU09OIEZsYWdzIC0gQGRlcHJlY2F0ZSB1c2Ugd2l0aEZsYWdzIG1ldGhvZCBpbnN0ZWFkCiAqIEBwYXJhbSBzdHJpbmcgJGRhdGVfdGltZV9mb3JtYXQgLSBmb3JtYXQgZm9yIERhdGVUaW1lSW50ZXJmYWNlOjpmb3JtYXQoKSAtIEBkZXByZWNhdGUgdXNlIHdpdGhEYXRlVGltZUZvcm1hdCBtZXRob2QgaW5zdGVhZAogKiBAcGFyYW0gYm9vbCAkcHV0X3Jvd3NfaW5fbmV3X2xpbmVzIC0gaWYgeW91IHdhbnQgdG8gcHV0IGVhY2ggcm93IGluIGEgbmV3IGxpbmUgLSBAZGVwcmVjYXRlIHVzZSB3aXRoUm93c0luTmV3TGluZXMgbWV0aG9kIGluc3RlYWQKICoKICogQHJldHVybiBKc29uTG9hZGVyCiAqLw=="},{"repository_path":"src\/adapter\/etl-adapter-json\/src\/Flow\/ETL\/Adapter\/JSON\/functions.php","start_line_in_file":80,"slug":"to-json-lines","name":"to_json_lines","namespace":"Flow\\ETL\\Adapter\\JSON","parameters":[{"name":"path","type":[{"name":"Path","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"JsonLinesLoader","namespace":"Flow\\ETL\\Adapter\\JSON","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"JSON","type":"LOADER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIFVzZWQgdG8gd3JpdGUgdG8gYSBKU09OIGxpbmVzIGh0dHBzOi8vanNvbmxpbmVzLm9yZy8gZm9ybWF0dGVkIGZpbGUuCiAqCiAqIEBwYXJhbSBQYXRofHN0cmluZyAkcGF0aAogKgogKiBAcmV0dXJuIEpzb25MaW5lc0xvYWRlcgogKi8="},{"repository_path":"src\/adapter\/etl-adapter-parquet\/src\/Flow\/ETL\/Adapter\/Parquet\/functions.php","start_line_in_file":27,"slug":"from-parquet","name":"from_parquet","namespace":"Flow\\ETL\\Adapter\\Parquet","parameters":[{"name":"path","type":[{"name":"Path","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"columns","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"},{"name":"options","type":[{"name":"Options","namespace":"Flow\\Parquet","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\Parquet\\Options::..."},{"name":"byte_order","type":[{"name":"ByteOrder","namespace":"Flow\\Parquet","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\Parquet\\ByteOrder::..."},{"name":"offset","type":[{"name":"int","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"ParquetExtractor","namespace":"Flow\\ETL\\Adapter\\Parquet","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PARQUET","type":"EXTRACTOR"}},{"name":"DocumentationExample","namespace":"Flow\\ETL\\Attribute","arguments":{"topic":"data_frame","example":"data_reading","option":"parquet"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBQYXRofHN0cmluZyAkcGF0aAogKiBAcGFyYW0gYXJyYXk8c3RyaW5nPiAkY29sdW1ucyAtIGxpc3Qgb2YgY29sdW1ucyB0byByZWFkIGZyb20gcGFycXVldCBmaWxlIC0gQGRlcHJlY2F0ZWQgdXNlIGB3aXRoQ29sdW1uc2AgbWV0aG9kIGluc3RlYWQKICogQHBhcmFtIE9wdGlvbnMgJG9wdGlvbnMgLSBAZGVwcmVjYXRlZCB1c2UgYHdpdGhPcHRpb25zYCBtZXRob2QgaW5zdGVhZAogKiBAcGFyYW0gQnl0ZU9yZGVyICRieXRlX29yZGVyIC0gQGRlcHJlY2F0ZWQgdXNlIGB3aXRoQnl0ZU9yZGVyYCBtZXRob2QgaW5zdGVhZAogKiBAcGFyYW0gbnVsbHxpbnQgJG9mZnNldCAtIEBkZXByZWNhdGVkIHVzZSBgd2l0aE9mZnNldGAgbWV0aG9kIGluc3RlYWQKICov"},{"repository_path":"src\/adapter\/etl-adapter-parquet\/src\/Flow\/ETL\/Adapter\/Parquet\/functions.php","start_line_in_file":57,"slug":"to-parquet","name":"to_parquet","namespace":"Flow\\ETL\\Adapter\\Parquet","parameters":[{"name":"path","type":[{"name":"Path","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"options","type":[{"name":"Options","namespace":"Flow\\Parquet","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"compressions","type":[{"name":"Compressions","namespace":"Flow\\Parquet\\ParquetFile","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\Parquet\\ParquetFile\\Compressions::..."},{"name":"schema","type":[{"name":"Schema","namespace":"Flow\\ETL","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"ParquetLoader","namespace":"Flow\\ETL\\Adapter\\Parquet","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PARQUET","type":"LOADER"}},{"name":"DocumentationExample","namespace":"Flow\\ETL\\Attribute","arguments":{"topic":"data_frame","example":"data_writing","option":"parquet"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBQYXRofHN0cmluZyAkcGF0aAogKiBAcGFyYW0gbnVsbHxPcHRpb25zICRvcHRpb25zIC0gQGRlcHJlY2F0ZWQgdXNlIGB3aXRoT3B0aW9uc2AgbWV0aG9kIGluc3RlYWQKICogQHBhcmFtIENvbXByZXNzaW9ucyAkY29tcHJlc3Npb25zIC0gQGRlcHJlY2F0ZWQgdXNlIGB3aXRoQ29tcHJlc3Npb25zYCBtZXRob2QgaW5zdGVhZAogKiBAcGFyYW0gbnVsbHxTY2hlbWEgJHNjaGVtYSAtIEBkZXByZWNhdGVkIHVzZSBgd2l0aFNjaGVtYWAgbWV0aG9kIGluc3RlYWQKICov"},{"repository_path":"src\/adapter\/etl-adapter-parquet\/src\/Flow\/ETL\/Adapter\/Parquet\/functions.php","start_line_in_file":85,"slug":"array-to-generator","name":"array_to_generator","namespace":"Flow\\ETL\\Adapter\\Parquet","parameters":[{"name":"data","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Generator","namespace":"","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PARQUET","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEB0ZW1wbGF0ZSBUCiAqCiAqIEBwYXJhbSBhcnJheTxUPiAkZGF0YQogKgogKiBAcmV0dXJuIFxHZW5lcmF0b3I8VD4KICov"},{"repository_path":"src\/adapter\/etl-adapter-parquet\/src\/Flow\/ETL\/Adapter\/Parquet\/functions.php","start_line_in_file":93,"slug":"empty-generator","name":"empty_generator","namespace":"Flow\\ETL\\Adapter\\Parquet","parameters":[],"return_type":[{"name":"Generator","namespace":"","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PARQUET","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/adapter\/etl-adapter-parquet\/src\/Flow\/ETL\/Adapter\/Parquet\/functions.php","start_line_in_file":99,"slug":"schema-to-parquet","name":"schema_to_parquet","namespace":"Flow\\ETL\\Adapter\\Parquet","parameters":[{"name":"schema","type":[{"name":"Schema","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Schema","namespace":"Flow\\Parquet\\ParquetFile","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PARQUET","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/adapter\/etl-adapter-parquet\/src\/Flow\/ETL\/Adapter\/Parquet\/functions.php","start_line_in_file":105,"slug":"schema-from-parquet","name":"schema_from_parquet","namespace":"Flow\\ETL\\Adapter\\Parquet","parameters":[{"name":"schema","type":[{"name":"Schema","namespace":"Flow\\Parquet\\ParquetFile","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Schema","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PARQUET","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/adapter\/etl-adapter-text\/src\/Flow\/ETL\/Adapter\/Text\/functions.php","start_line_in_file":15,"slug":"from-text","name":"from_text","namespace":"Flow\\ETL\\Adapter\\Text","parameters":[{"name":"path","type":[{"name":"Path","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"TextExtractor","namespace":"Flow\\ETL\\Adapter\\Text","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TEXT","type":"EXTRACTOR"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBQYXRofHN0cmluZyAkcGF0aAogKi8="},{"repository_path":"src\/adapter\/etl-adapter-text\/src\/Flow\/ETL\/Adapter\/Text\/functions.php","start_line_in_file":30,"slug":"to-text","name":"to_text","namespace":"Flow\\ETL\\Adapter\\Text","parameters":[{"name":"path","type":[{"name":"Path","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"new_line_separator","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'\\n'"}],"return_type":[{"name":"Loader","namespace":"Flow\\ETL","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TEXT","type":"LOADER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBQYXRofHN0cmluZyAkcGF0aAogKiBAcGFyYW0gc3RyaW5nICRuZXdfbGluZV9zZXBhcmF0b3IgLSBkZWZhdWx0IFBIUF9FT0wgLSBAZGVwcmVjYXRlZCB1c2Ugd2l0aE5ld0xpbmVTZXBhcmF0b3IgbWV0aG9kIGluc3RlYWQKICoKICogQHJldHVybiBMb2FkZXIKICov"},{"repository_path":"src\/adapter\/etl-adapter-xml\/src\/Flow\/ETL\/Adapter\/XML\/functions.php","start_line_in_file":34,"slug":"from-xml","name":"from_xml","namespace":"Flow\\ETL\\Adapter\\XML","parameters":[{"name":"path","type":[{"name":"Path","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"xml_node_path","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"''"}],"return_type":[{"name":"XMLParserExtractor","namespace":"Flow\\ETL\\Adapter\\XML","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"XML","type":"EXTRACTOR"}},{"name":"DocumentationExample","namespace":"Flow\\ETL\\Attribute","arguments":{"topic":"data_frame","example":"data_reading","option":"xml"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqICBJbiBvcmRlciB0byBpdGVyYXRlIG9ubHkgb3ZlciA8ZWxlbWVudD4gbm9kZXMgdXNlIGBmcm9tX3htbCgkZmlsZSktPndpdGhYTUxOb2RlUGF0aCgncm9vdC9lbGVtZW50cy9lbGVtZW50JylgLgogKgogKiAgPHJvb3Q+CiAqICAgIDxlbGVtZW50cz4KICogICAgICA8ZWxlbWVudD48L2VsZW1lbnQ+CiAqICAgICAgPGVsZW1lbnQ+PC9lbGVtZW50PgogKiAgICA8ZWxlbWVudHM+CiAqICA8L3Jvb3Q+CiAqCiAqICBYTUwgTm9kZSBQYXRoIGRvZXMgbm90IHN1cHBvcnQgYXR0cmlidXRlcyBhbmQgaXQncyBub3QgeHBhdGgsIGl0IGlzIGp1c3QgYSBzZXF1ZW5jZQogKiAgb2Ygbm9kZSBuYW1lcyBzZXBhcmF0ZWQgd2l0aCBzbGFzaC4KICoKICogQHBhcmFtIFBhdGh8c3RyaW5nICRwYXRoCiAqIEBwYXJhbSBzdHJpbmcgJHhtbF9ub2RlX3BhdGggLSBAZGVwcmVjYXRlZCB1c2UgYGZyb21feG1sKCRmaWxlKS0+d2l0aFhNTE5vZGVQYXRoKCR4bWxOb2RlUGF0aClgIG1ldGhvZCBpbnN0ZWFkCiAqLw=="},{"repository_path":"src\/adapter\/etl-adapter-xml\/src\/Flow\/ETL\/Adapter\/XML\/functions.php","start_line_in_file":50,"slug":"to-xml","name":"to_xml","namespace":"Flow\\ETL\\Adapter\\XML","parameters":[{"name":"path","type":[{"name":"Path","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"root_element_name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'rows'"},{"name":"row_element_name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'row'"},{"name":"attribute_prefix","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'_'"},{"name":"date_time_format","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'Y-m-d\\\\TH:i:s.uP'"},{"name":"xml_writer","type":[{"name":"XMLWriter","namespace":"Flow\\ETL\\Adapter\\XML","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\ETL\\Adapter\\XML\\XMLWriter\\DOMDocumentWriter::..."}],"return_type":[{"name":"XMLLoader","namespace":"Flow\\ETL\\Adapter\\XML\\Loader","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"XML","type":"LOADER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBQYXRofHN0cmluZyAkcGF0aAogKiBAcGFyYW0gc3RyaW5nICRyb290X2VsZW1lbnRfbmFtZSAtIEBkZXByZWNhdGVkIHVzZSBgd2l0aFJvb3RFbGVtZW50TmFtZSgpYCBtZXRob2QgaW5zdGVhZAogKiBAcGFyYW0gc3RyaW5nICRyb3dfZWxlbWVudF9uYW1lIC0gQGRlcHJlY2F0ZWQgdXNlIGB3aXRoUm93RWxlbWVudE5hbWUoKWAgbWV0aG9kIGluc3RlYWQKICogQHBhcmFtIHN0cmluZyAkYXR0cmlidXRlX3ByZWZpeCAtIEBkZXByZWNhdGVkIHVzZSBgd2l0aEF0dHJpYnV0ZVByZWZpeCgpYCBtZXRob2QgaW5zdGVhZAogKiBAcGFyYW0gc3RyaW5nICRkYXRlX3RpbWVfZm9ybWF0IC0gQGRlcHJlY2F0ZWQgdXNlIGB3aXRoRGF0ZVRpbWVGb3JtYXQoKWAgbWV0aG9kIGluc3RlYWQKICogQHBhcmFtIFhNTFdyaXRlciAkeG1sX3dyaXRlcgogKi8="},{"repository_path":"src\/lib\/filesystem\/src\/Flow\/Filesystem\/DSL\/functions.php","start_line_in_file":23,"slug":"protocol","name":"protocol","namespace":"Flow\\Filesystem\\DSL","parameters":[{"name":"protocol","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Protocol","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"FILESYSTEM","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/filesystem\/src\/Flow\/Filesystem\/DSL\/functions.php","start_line_in_file":29,"slug":"partition","name":"partition","namespace":"Flow\\Filesystem\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"value","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Partition","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"FILESYSTEM","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/filesystem\/src\/Flow\/Filesystem\/DSL\/functions.php","start_line_in_file":35,"slug":"partitions","name":"partitions","namespace":"Flow\\Filesystem\\DSL","parameters":[{"name":"partition","type":[{"name":"Partition","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"Partitions","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"FILESYSTEM","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/filesystem\/src\/Flow\/Filesystem\/DSL\/functions.php","start_line_in_file":54,"slug":"path","name":"path","namespace":"Flow\\Filesystem\\DSL","parameters":[{"name":"path","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"options","type":[{"name":"Options","namespace":"Flow\\Filesystem\\Path","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"Path","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"FILESYSTEM","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIFBhdGggc3VwcG9ydHMgZ2xvYiBwYXR0ZXJucy4KICogRXhhbXBsZXM6CiAqICAtIHBhdGgoJyouY3N2JykgLSBhbnkgY3N2IGZpbGUgaW4gY3VycmVudCBkaXJlY3RvcnkKICogIC0gcGF0aCgnLyoqIC8gKi5jc3YnKSAtIGFueSBjc3YgZmlsZSBpbiBhbnkgc3ViZGlyZWN0b3J5IChyZW1vdmUgZW1wdHkgc3BhY2VzKQogKiAgLSBwYXRoKCcvZGlyL3BhcnRpdGlvbj0qIC8qLnBhcnF1ZXQnKSAtIGFueSBwYXJxdWV0IGZpbGUgaW4gZ2l2ZW4gcGFydGl0aW9uIGRpcmVjdG9yeS4KICoKICogR2xvYiBwYXR0ZXJuIGlzIGFsc28gc3VwcG9ydGVkIGJ5IHJlbW90ZSBmaWxlc3lzdGVtcyBsaWtlIEF6dXJlCiAqCiAqICAtIHBhdGgoJ2F6dXJlLWJsb2I6Ly9kaXJlY3RvcnkvKi5jc3YnKSAtIGFueSBjc3YgZmlsZSBpbiBnaXZlbiBkaXJlY3RvcnkKICoKICogQHBhcmFtIGFycmF5PHN0cmluZywgbnVsbHxib29sfGZsb2F0fGludHxzdHJpbmd8XFVuaXRFbnVtPnxQYXRoXE9wdGlvbnMgJG9wdGlvbnMKICov"},{"repository_path":"src\/lib\/filesystem\/src\/Flow\/Filesystem\/DSL\/functions.php","start_line_in_file":67,"slug":"path-stdout","name":"path_stdout","namespace":"Flow\\Filesystem\\DSL","parameters":[{"name":"options","type":[{"name":"array","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Path","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"FILESYSTEM","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIHBhdGggdG8gcGhwIHN0ZG91dCBzdHJlYW0uCiAqCiAqIEBwYXJhbSBudWxsfGFycmF5eydzdHJlYW0nOiAnb3V0cHV0J3wnc3RkZXJyJ3wnc3Rkb3V0J30gJG9wdGlvbnMKICoKICogQHJldHVybiBQYXRoCiAqLw=="},{"repository_path":"src\/lib\/filesystem\/src\/Flow\/Filesystem\/DSL\/functions.php","start_line_in_file":81,"slug":"path-memory","name":"path_memory","namespace":"Flow\\Filesystem\\DSL","parameters":[{"name":"path","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"''"},{"name":"options","type":[{"name":"array","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Path","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"FILESYSTEM","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIHBhdGggdG8gcGhwIG1lbW9yeSBzdHJlYW0uCiAqCiAqIEBwYXJhbSBzdHJpbmcgJHBhdGggLSBkZWZhdWx0ID0gJycgLSBwYXRoIGlzIHVzZWQgYXMgYW4gaWRlbnRpZmllciBpbiBtZW1vcnkgZmlsZXN5c3RlbSwgc28gd2UgY2FuIHdyaXRlIG11bHRpcGxlIGZpbGVzIHRvIG1lbW9yeSBhdCBvbmNlLCBlYWNoIHBhdGggaXMgYSBuZXcgaGFuZGxlCiAqIEBwYXJhbSBudWxsfGFycmF5eydzdHJlYW0nOiAnbWVtb3J5J3wndGVtcCd9ICRvcHRpb25zIC0gd2hlbiBub3RoaW5nIGlzIHByb3ZpZGVkLCAndGVtcCcgc3RyZWFtIGlzIHVzZWQgYnkgZGVmYXVsdAogKgogKiBAcmV0dXJuIFBhdGgKICov"},{"repository_path":"src\/lib\/filesystem\/src\/Flow\/Filesystem\/DSL\/functions.php","start_line_in_file":92,"slug":"path-real","name":"path_real","namespace":"Flow\\Filesystem\\DSL","parameters":[{"name":"path","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"options","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"Path","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"FILESYSTEM","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIFJlc29sdmUgcmVhbCBwYXRoIGZyb20gZ2l2ZW4gcGF0aC4KICoKICogQHBhcmFtIGFycmF5PHN0cmluZywgbnVsbHxib29sfGZsb2F0fGludHxzdHJpbmd8XFVuaXRFbnVtPiAkb3B0aW9ucwogKi8="},{"repository_path":"src\/lib\/filesystem\/src\/Flow\/Filesystem\/DSL\/functions.php","start_line_in_file":98,"slug":"native-local-filesystem","name":"native_local_filesystem","namespace":"Flow\\Filesystem\\DSL","parameters":[],"return_type":[{"name":"NativeLocalFilesystem","namespace":"Flow\\Filesystem\\Local","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"FILESYSTEM","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/filesystem\/src\/Flow\/Filesystem\/DSL\/functions.php","start_line_in_file":108,"slug":"stdout-filesystem","name":"stdout_filesystem","namespace":"Flow\\Filesystem\\DSL","parameters":[],"return_type":[{"name":"StdOutFilesystem","namespace":"Flow\\Filesystem\\Local","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"FILESYSTEM","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIFdyaXRlLW9ubHkgZmlsZXN5c3RlbSB1c2VmdWwgd2hlbiB3ZSBqdXN0IHdhbnQgdG8gd3JpdGUgdGhlIG91dHB1dCB0byBzdGRvdXQuCiAqIFRoZSBtYWluIHVzZSBjYXNlIGlzIGZvciBzdHJlYW1pbmcgZGF0YXNldHMgb3ZlciBodHRwLgogKi8="},{"repository_path":"src\/lib\/filesystem\/src\/Flow\/Filesystem\/DSL\/functions.php","start_line_in_file":117,"slug":"memory-filesystem","name":"memory_filesystem","namespace":"Flow\\Filesystem\\DSL","parameters":[],"return_type":[{"name":"MemoryFilesystem","namespace":"Flow\\Filesystem\\Local","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"FILESYSTEM","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIG5ldyBtZW1vcnkgZmlsZXN5c3RlbSBhbmQgd3JpdGVzIGRhdGEgdG8gaXQgaW4gbWVtb3J5LgogKi8="},{"repository_path":"src\/lib\/filesystem\/src\/Flow\/Filesystem\/DSL\/functions.php","start_line_in_file":128,"slug":"fstab","name":"fstab","namespace":"Flow\\Filesystem\\DSL","parameters":[{"name":"filesystems","type":[{"name":"Filesystem","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"FilesystemTable","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"FILESYSTEM","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIG5ldyBmaWxlc3lzdGVtIHRhYmxlIHdpdGggZ2l2ZW4gZmlsZXN5c3RlbXMuCiAqIEZpbGVzeXN0ZW1zIGNhbiBiZSBhbHNvIG1vdW50ZWQgbGF0ZXIuCiAqIElmIG5vIGZpbGVzeXN0ZW1zIGFyZSBwcm92aWRlZCwgbG9jYWwgZmlsZXN5c3RlbSBpcyBtb3VudGVkLgogKi8="},{"repository_path":"src\/lib\/filesystem\/src\/Flow\/Filesystem\/DSL\/functions.php","start_line_in_file":144,"slug":"traceable-filesystem","name":"traceable_filesystem","namespace":"Flow\\Filesystem\\DSL","parameters":[{"name":"filesystem","type":[{"name":"Filesystem","namespace":"Flow\\Filesystem","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"telemetryConfig","type":[{"name":"FilesystemTelemetryConfig","namespace":"Flow\\Filesystem\\Telemetry","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"TraceableFilesystem","namespace":"Flow\\Filesystem\\Telemetry","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"FILESYSTEM","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIFdyYXAgYSBmaWxlc3lzdGVtIHdpdGggdGVsZW1ldHJ5IHRyYWNpbmcgc3VwcG9ydC4KICogQWxsIGZpbGVzeXN0ZW0gYW5kIHN0cmVhbSBvcGVyYXRpb25zIHdpbGwgYmUgdHJhY2VkIGFjY29yZGluZyB0byB0aGUgY29uZmlndXJhdGlvbi4KICov"},{"repository_path":"src\/lib\/filesystem\/src\/Flow\/Filesystem\/DSL\/functions.php","start_line_in_file":155,"slug":"filesystem-telemetry-config","name":"filesystem_telemetry_config","namespace":"Flow\\Filesystem\\DSL","parameters":[{"name":"telemetry","type":[{"name":"Telemetry","namespace":"Flow\\Telemetry","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"clock","type":[{"name":"ClockInterface","namespace":"Psr\\Clock","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"options","type":[{"name":"FilesystemTelemetryOptions","namespace":"Flow\\Filesystem\\Telemetry","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"FilesystemTelemetryConfig","namespace":"Flow\\Filesystem\\Telemetry","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"FILESYSTEM","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIHRlbGVtZXRyeSBjb25maWd1cmF0aW9uIGZvciB0aGUgZmlsZXN5c3RlbS4KICov"},{"repository_path":"src\/lib\/filesystem\/src\/Flow\/Filesystem\/DSL\/functions.php","start_line_in_file":170,"slug":"filesystem-telemetry-options","name":"filesystem_telemetry_options","namespace":"Flow\\Filesystem\\DSL","parameters":[{"name":"traceStreams","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"true"},{"name":"collectMetrics","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"true"}],"return_type":[{"name":"FilesystemTelemetryOptions","namespace":"Flow\\Filesystem\\Telemetry","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"FILESYSTEM","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBvcHRpb25zIGZvciBmaWxlc3lzdGVtIHRlbGVtZXRyeS4KICoKICogQHBhcmFtIGJvb2wgJHRyYWNlU3RyZWFtcyBDcmVhdGUgYSBzaW5nbGUgc3BhbiBwZXIgc3RyZWFtIGxpZmVjeWNsZSAoZGVmYXVsdDogT04pCiAqIEBwYXJhbSBib29sICRjb2xsZWN0TWV0cmljcyBDb2xsZWN0IG1ldHJpY3MgZm9yIGJ5dGVzL29wZXJhdGlvbiBjb3VudHMgKGRlZmF1bHQ6IE9OKQogKi8="},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":56,"slug":"type-structure","name":"type_structure","namespace":"Flow\\Types\\DSL","parameters":[{"name":"elements","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"},{"name":"optional_elements","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"},{"name":"allow_extra","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"StructureType","namespace":"Flow\\Types\\Type\\Logical","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEB0ZW1wbGF0ZSBUCiAqCiAqIEBwYXJhbSBhcnJheTxzdHJpbmcsIFR5cGU8VD4+ICRlbGVtZW50cwogKiBAcGFyYW0gYXJyYXk8c3RyaW5nLCBUeXBlPFQ+PiAkb3B0aW9uYWxfZWxlbWVudHMKICoKICogQHJldHVybiBTdHJ1Y3R1cmVUeXBlPFQ+CiAqLw=="},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":73,"slug":"type-union","name":"type_union","namespace":"Flow\\Types\\DSL","parameters":[{"name":"first","type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"second","type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"types","type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEB0ZW1wbGF0ZSBUCiAqIEB0ZW1wbGF0ZSBUCiAqIEB0ZW1wbGF0ZSBUCiAqCiAqIEBwYXJhbSBUeXBlPFQ+ICRmaXJzdAogKiBAcGFyYW0gVHlwZTxUPiAkc2Vjb25kCiAqIEBwYXJhbSBUeXBlPFQ+IC4uLiR0eXBlcwogKgogKiBAcmV0dXJuIFR5cGU8VD4KICov"},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":94,"slug":"type-intersection","name":"type_intersection","namespace":"Flow\\Types\\DSL","parameters":[{"name":"first","type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"second","type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"types","type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEB0ZW1wbGF0ZSBUCiAqCiAqIEBwYXJhbSBUeXBlPFQ+ICRmaXJzdAogKiBAcGFyYW0gVHlwZTxUPiAkc2Vjb25kCiAqIEBwYXJhbSBUeXBlPFQ+IC4uLiR0eXBlcwogKgogKiBAcmV0dXJuIFR5cGU8VD4KICov"},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":109,"slug":"type-numeric-string","name":"type_numeric_string","namespace":"Flow\\Types\\DSL","parameters":[],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gVHlwZTxudW1lcmljLXN0cmluZz4KICov"},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":122,"slug":"type-optional","name":"type_optional","namespace":"Flow\\Types\\DSL","parameters":[{"name":"type","type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEB0ZW1wbGF0ZSBUCiAqCiAqIEBwYXJhbSBUeXBlPFQ+ICR0eXBlCiAqCiAqIEByZXR1cm4gVHlwZTxUPgogKi8="},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":133,"slug":"type-from-array","name":"type_from_array","namespace":"Flow\\Types\\DSL","parameters":[{"name":"data","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxzdHJpbmcsIG1peGVkPiAkZGF0YQogKgogKiBAcmV0dXJuIFR5cGU8bWl4ZWQ+CiAqLw=="},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":144,"slug":"type-is-nullable","name":"type_is_nullable","namespace":"Flow\\Types\\DSL","parameters":[{"name":"type","type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEB0ZW1wbGF0ZSBUCiAqCiAqIEBwYXJhbSBUeXBlPFQ+ICR0eXBlCiAqLw=="},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":166,"slug":"type-equals","name":"type_equals","namespace":"Flow\\Types\\DSL","parameters":[{"name":"left","type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"right","type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBUeXBlPG1peGVkPiAkbGVmdAogKiBAcGFyYW0gVHlwZTxtaXhlZD4gJHJpZ2h0CiAqLw=="},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":179,"slug":"types","name":"types","namespace":"Flow\\Types\\DSL","parameters":[{"name":"types","type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"Types","namespace":"Flow\\Types\\Type","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEB0ZW1wbGF0ZSBUCiAqCiAqIEBwYXJhbSBUeXBlPFQ+IC4uLiR0eXBlcwogKgogKiBAcmV0dXJuIFR5cGVzPFQ+CiAqLw=="},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":192,"slug":"type-list","name":"type_list","namespace":"Flow\\Types\\DSL","parameters":[{"name":"element","type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ListType","namespace":"Flow\\Types\\Type\\Logical","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEB0ZW1wbGF0ZSBUCiAqCiAqIEBwYXJhbSBUeXBlPFQ+ICRlbGVtZW50CiAqCiAqIEByZXR1cm4gTGlzdFR5cGU8VD4KICov"},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":207,"slug":"type-map","name":"type_map","namespace":"Flow\\Types\\DSL","parameters":[{"name":"key_type","type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"value_type","type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"MapType","namespace":"Flow\\Types\\Type\\Logical","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEB0ZW1wbGF0ZSBUS2V5IG9mIGFycmF5LWtleQogKiBAdGVtcGxhdGUgVFZhbHVlCiAqCiAqIEBwYXJhbSBUeXBlPFRLZXk+ICRrZXlfdHlwZQogKiBAcGFyYW0gVHlwZTxUVmFsdWU+ICR2YWx1ZV90eXBlCiAqCiAqIEByZXR1cm4gTWFwVHlwZTxUS2V5LCBUVmFsdWU+CiAqLw=="},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":216,"slug":"type-json","name":"type_json","namespace":"Flow\\Types\\DSL","parameters":[],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gVHlwZTxKc29uPgogKi8="},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":225,"slug":"type-datetime","name":"type_datetime","namespace":"Flow\\Types\\DSL","parameters":[],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gVHlwZTxcRGF0ZVRpbWVJbnRlcmZhY2U+CiAqLw=="},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":234,"slug":"type-date","name":"type_date","namespace":"Flow\\Types\\DSL","parameters":[],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gVHlwZTxcRGF0ZVRpbWVJbnRlcmZhY2U+CiAqLw=="},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":243,"slug":"type-time","name":"type_time","namespace":"Flow\\Types\\DSL","parameters":[],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gVHlwZTxcRGF0ZUludGVydmFsPgogKi8="},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":252,"slug":"type-time-zone","name":"type_time_zone","namespace":"Flow\\Types\\DSL","parameters":[],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gVHlwZTxcRGF0ZVRpbWVab25lPgogKi8="},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":261,"slug":"type-xml","name":"type_xml","namespace":"Flow\\Types\\DSL","parameters":[],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gVHlwZTxcRE9NRG9jdW1lbnQ+CiAqLw=="},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":270,"slug":"type-xml-element","name":"type_xml_element","namespace":"Flow\\Types\\DSL","parameters":[],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gVHlwZTxcRE9NRWxlbWVudD4KICov"},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":279,"slug":"type-uuid","name":"type_uuid","namespace":"Flow\\Types\\DSL","parameters":[],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gVHlwZTxVdWlkPgogKi8="},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":288,"slug":"type-integer","name":"type_integer","namespace":"Flow\\Types\\DSL","parameters":[],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gVHlwZTxpbnQ+CiAqLw=="},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":297,"slug":"type-string","name":"type_string","namespace":"Flow\\Types\\DSL","parameters":[],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gVHlwZTxzdHJpbmc+CiAqLw=="},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":306,"slug":"type-float","name":"type_float","namespace":"Flow\\Types\\DSL","parameters":[],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gVHlwZTxmbG9hdD4KICov"},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":315,"slug":"type-boolean","name":"type_boolean","namespace":"Flow\\Types\\DSL","parameters":[],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gVHlwZTxib29sPgogKi8="},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":328,"slug":"type-instance-of","name":"type_instance_of","namespace":"Flow\\Types\\DSL","parameters":[{"name":"class","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEB0ZW1wbGF0ZSBUIG9mIG9iamVjdAogKgogKiBAcGFyYW0gY2xhc3Mtc3RyaW5nPFQ+ICRjbGFzcwogKgogKiBAcmV0dXJuIFR5cGU8VD4KICov"},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":337,"slug":"type-object","name":"type_object","namespace":"Flow\\Types\\DSL","parameters":[],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gVHlwZTxvYmplY3Q+CiAqLw=="},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":346,"slug":"type-scalar","name":"type_scalar","namespace":"Flow\\Types\\DSL","parameters":[],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gVHlwZTxib29sfGZsb2F0fGludHxzdHJpbmc+CiAqLw=="},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":355,"slug":"type-resource","name":"type_resource","namespace":"Flow\\Types\\DSL","parameters":[],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gVHlwZTxyZXNvdXJjZT4KICov"},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":364,"slug":"type-array","name":"type_array","namespace":"Flow\\Types\\DSL","parameters":[],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gVHlwZTxhcnJheTxtaXhlZD4+CiAqLw=="},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":373,"slug":"type-callable","name":"type_callable","namespace":"Flow\\Types\\DSL","parameters":[],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gVHlwZTxjYWxsYWJsZT4KICov"},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":382,"slug":"type-null","name":"type_null","namespace":"Flow\\Types\\DSL","parameters":[],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gVHlwZTxudWxsPgogKi8="},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":391,"slug":"type-mixed","name":"type_mixed","namespace":"Flow\\Types\\DSL","parameters":[],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gVHlwZTxtaXhlZD4KICov"},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":400,"slug":"type-positive-integer","name":"type_positive_integer","namespace":"Flow\\Types\\DSL","parameters":[],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gVHlwZTxpbnQ8MCwgbWF4Pj4KICov"},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":409,"slug":"type-non-empty-string","name":"type_non_empty_string","namespace":"Flow\\Types\\DSL","parameters":[],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gVHlwZTxub24tZW1wdHktc3RyaW5nPgogKi8="},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":422,"slug":"type-enum","name":"type_enum","namespace":"Flow\\Types\\DSL","parameters":[{"name":"class","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEB0ZW1wbGF0ZSBUIG9mIFVuaXRFbnVtCiAqCiAqIEBwYXJhbSBjbGFzcy1zdHJpbmc8VD4gJGNsYXNzCiAqCiAqIEByZXR1cm4gVHlwZTxUPgogKi8="},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":435,"slug":"type-literal","name":"type_literal","namespace":"Flow\\Types\\DSL","parameters":[{"name":"value","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"float","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"LiteralType","namespace":"Flow\\Types\\Type\\Logical","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEB0ZW1wbGF0ZSBUIG9mIGJvb2x8ZmxvYXR8aW50fHN0cmluZwogKgogKiBAcGFyYW0gVCAkdmFsdWUKICoKICogQHJldHVybiBMaXRlcmFsVHlwZTxUPgogKi8="},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":444,"slug":"type-html","name":"type_html","namespace":"Flow\\Types\\DSL","parameters":[],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gVHlwZTxIVE1MRG9jdW1lbnQ+CiAqLw=="},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":453,"slug":"type-html-element","name":"type_html_element","namespace":"Flow\\Types\\DSL","parameters":[],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gVHlwZTxIVE1MRWxlbWVudD4KICov"},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":465,"slug":"type-is","name":"type_is","namespace":"Flow\\Types\\DSL","parameters":[{"name":"type","type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"typeClass","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEB0ZW1wbGF0ZSBUCiAqCiAqIEBwYXJhbSBUeXBlPFQ+ICR0eXBlCiAqIEBwYXJhbSBjbGFzcy1zdHJpbmc8VHlwZTxtaXhlZD4+ICR0eXBlQ2xhc3MKICov"},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":478,"slug":"type-is-any","name":"type_is_any","namespace":"Flow\\Types\\DSL","parameters":[{"name":"type","type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"typeClass","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"typeClasses","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEB0ZW1wbGF0ZSBUCiAqCiAqIEBwYXJhbSBUeXBlPFQ+ICR0eXBlCiAqIEBwYXJhbSBjbGFzcy1zdHJpbmc8VHlwZTxtaXhlZD4+ICR0eXBlQ2xhc3MKICogQHBhcmFtIGNsYXNzLXN0cmluZzxUeXBlPG1peGVkPj4gLi4uJHR5cGVDbGFzc2VzCiAqLw=="},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":487,"slug":"get-type","name":"get_type","namespace":"Flow\\Types\\DSL","parameters":[{"name":"value","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEByZXR1cm4gVHlwZTxtaXhlZD4KICov"},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":500,"slug":"type-class-string","name":"type_class_string","namespace":"Flow\\Types\\DSL","parameters":[{"name":"class","type":[{"name":"string","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Type","namespace":"Flow\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEB0ZW1wbGF0ZSBUIG9mIG9iamVjdAogKgogKiBAcGFyYW0gbnVsbHxjbGFzcy1zdHJpbmc8VD4gJGNsYXNzCiAqCiAqIEByZXR1cm4gKCRjbGFzcyBpcyBudWxsID8gVHlwZTxjbGFzcy1zdHJpbmc+IDogVHlwZTxjbGFzcy1zdHJpbmc8VD4+KQogKi8="},{"repository_path":"src\/lib\/types\/src\/Flow\/Types\/DSL\/functions.php","start_line_in_file":506,"slug":"dom-element-to-string","name":"dom_element_to_string","namespace":"Flow\\Types\\DSL","parameters":[{"name":"element","type":[{"name":"DOMElement","namespace":"","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"format_output","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"preserver_white_space","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"false","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TYPES","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":185,"slug":"sql-parser","name":"sql_parser","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"Parser","namespace":"Flow\\PostgreSql","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":191,"slug":"sql-parse","name":"sql_parse","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"sql","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ParsedQuery","namespace":"Flow\\PostgreSql","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":201,"slug":"sql-fingerprint","name":"sql_fingerprint","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"sql","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"string","namespace":null,"is_nullable":true,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIFJldHVybnMgYSBmaW5nZXJwcmludCBvZiB0aGUgZ2l2ZW4gU1FMIHF1ZXJ5LgogKiBMaXRlcmFsIHZhbHVlcyBhcmUgbm9ybWFsaXplZCBzbyB0aGV5IHdvbid0IGFmZmVjdCB0aGUgZmluZ2VycHJpbnQuCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":212,"slug":"sql-normalize","name":"sql_normalize","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"sql","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"string","namespace":null,"is_nullable":true,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIE5vcm1hbGl6ZSBTUUwgcXVlcnkgYnkgcmVwbGFjaW5nIGxpdGVyYWwgdmFsdWVzIGFuZCBuYW1lZCBwYXJhbWV0ZXJzIHdpdGggcG9zaXRpb25hbCBwYXJhbWV0ZXJzLgogKiBXSEVSRSBpZCA9IDppZCB3aWxsIGJlIGNoYW5nZWQgaW50byBXSEVSRSBpZCA9ICQxCiAqIFdIRVJFIGlkID0gMSB3aWxsIGJlIGNoYW5nZWQgaW50byBXSEVSRSBpZCA9ICQxLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":222,"slug":"sql-normalize-utility","name":"sql_normalize_utility","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"sql","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"string","namespace":null,"is_nullable":true,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIE5vcm1hbGl6ZSB1dGlsaXR5IFNRTCBzdGF0ZW1lbnRzIChEREwgbGlrZSBDUkVBVEUsIEFMVEVSLCBEUk9QKS4KICogVGhpcyBoYW5kbGVzIERETCBzdGF0ZW1lbnRzIGRpZmZlcmVudGx5IGZyb20gcGdfbm9ybWFsaXplKCkgd2hpY2ggaXMgb3B0aW1pemVkIGZvciBETUwuCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":233,"slug":"sql-split","name":"sql_split","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"sql","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIFNwbGl0IHN0cmluZyB3aXRoIG11bHRpcGxlIFNRTCBzdGF0ZW1lbnRzIGludG8gYXJyYXkgb2YgaW5kaXZpZHVhbCBzdGF0ZW1lbnRzLgogKgogKiBAcmV0dXJuIGFycmF5PHN0cmluZz4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":242,"slug":"sql-deparse-options","name":"sql_deparse_options","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"DeparseOptions","namespace":"Flow\\PostgreSql","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBEZXBhcnNlT3B0aW9ucyBmb3IgY29uZmlndXJpbmcgU1FMIGZvcm1hdHRpbmcuCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":256,"slug":"sql-deparse","name":"sql_deparse","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"query","type":[{"name":"ParsedQuery","namespace":"Flow\\PostgreSql","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"options","type":[{"name":"DeparseOptions","namespace":"Flow\\PostgreSql","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENvbnZlcnQgYSBQYXJzZWRRdWVyeSBBU1QgYmFjayB0byBTUUwgc3RyaW5nLgogKgogKiBXaGVuIGNhbGxlZCB3aXRob3V0IG9wdGlvbnMsIHJldHVybnMgdGhlIFNRTCBhcyBhIHNpbXBsZSBzdHJpbmcuCiAqIFdoZW4gY2FsbGVkIHdpdGggRGVwYXJzZU9wdGlvbnMsIGFwcGxpZXMgZm9ybWF0dGluZyAocHJldHR5LXByaW50aW5nLCBpbmRlbnRhdGlvbiwgZXRjLikuCiAqCiAqIEB0aHJvd3MgXFJ1bnRpbWVFeGNlcHRpb24gaWYgZGVwYXJzaW5nIGZhaWxzCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":272,"slug":"sql-format","name":"sql_format","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"sql","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"options","type":[{"name":"DeparseOptions","namespace":"Flow\\PostgreSql","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIFBhcnNlIGFuZCBmb3JtYXQgU1FMIHF1ZXJ5IHdpdGggcHJldHR5IHByaW50aW5nLgogKgogKiBUaGlzIGlzIGEgY29udmVuaWVuY2UgZnVuY3Rpb24gdGhhdCBwYXJzZXMgU1FMIGFuZCByZXR1cm5zIGl0IGZvcm1hdHRlZC4KICoKICogQHBhcmFtIHN0cmluZyAkc3FsIFRoZSBTUUwgcXVlcnkgdG8gZm9ybWF0CiAqIEBwYXJhbSBudWxsfERlcGFyc2VPcHRpb25zICRvcHRpb25zIEZvcm1hdHRpbmcgb3B0aW9ucyAoZGVmYXVsdHMgdG8gcHJldHR5LXByaW50IGVuYWJsZWQpCiAqCiAqIEB0aHJvd3MgXFJ1bnRpbWVFeGNlcHRpb24gaWYgcGFyc2luZyBvciBkZXBhcnNpbmcgZmFpbHMKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":282,"slug":"sql-summary","name":"sql_summary","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"sql","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"options","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"0"},{"name":"truncateLimit","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"0"}],"return_type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEdlbmVyYXRlIGEgc3VtbWFyeSBvZiBwYXJzZWQgcXVlcmllcyBpbiBwcm90b2J1ZiBmb3JtYXQuCiAqIFVzZWZ1bCBmb3IgcXVlcnkgbW9uaXRvcmluZyBhbmQgbG9nZ2luZyB3aXRob3V0IGZ1bGwgQVNUIG92ZXJoZWFkLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":297,"slug":"sql-to-paginated-query","name":"sql_to_paginated_query","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"sql","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"limit","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"offset","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"0"}],"return_type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIFRyYW5zZm9ybSBhIFNRTCBxdWVyeSBpbnRvIGEgcGFnaW5hdGVkIHF1ZXJ5IHdpdGggTElNSVQgYW5kIE9GRlNFVC4KICoKICogQHBhcmFtIHN0cmluZyAkc3FsIFRoZSBTUUwgcXVlcnkgdG8gcGFnaW5hdGUKICogQHBhcmFtIGludCAkbGltaXQgTWF4aW11bSBudW1iZXIgb2Ygcm93cyB0byByZXR1cm4KICogQHBhcmFtIGludCAkb2Zmc2V0IE51bWJlciBvZiByb3dzIHRvIHNraXAgKHJlcXVpcmVzIE9SREVSIEJZIGluIHF1ZXJ5KQogKgogKiBAcmV0dXJuIHN0cmluZyBUaGUgcGFnaW5hdGVkIFNRTCBxdWVyeQogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":314,"slug":"sql-to-limited-query","name":"sql_to_limited_query","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"sql","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"limit","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIFRyYW5zZm9ybSBhIFNRTCBxdWVyeSB0byBsaW1pdCByZXN1bHRzIHRvIGEgc3BlY2lmaWMgbnVtYmVyIG9mIHJvd3MuCiAqCiAqIEBwYXJhbSBzdHJpbmcgJHNxbCBUaGUgU1FMIHF1ZXJ5IHRvIGxpbWl0CiAqIEBwYXJhbSBpbnQgJGxpbWl0IE1heGltdW0gbnVtYmVyIG9mIHJvd3MgdG8gcmV0dXJuCiAqCiAqIEByZXR1cm4gc3RyaW5nIFRoZSBsaW1pdGVkIFNRTCBxdWVyeQogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":333,"slug":"sql-to-count-query","name":"sql_to_count_query","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"sql","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIFRyYW5zZm9ybSBhIFNRTCBxdWVyeSBpbnRvIGEgQ09VTlQgcXVlcnkgZm9yIHBhZ2luYXRpb24uCiAqCiAqIFdyYXBzIHRoZSBxdWVyeSBpbjogU0VMRUNUIENPVU5UKCopIEZST00gKC4uLikgQVMgX2NvdW50X3N1YnEKICogUmVtb3ZlcyBPUkRFUiBCWSBhbmQgTElNSVQvT0ZGU0VUIGZyb20gdGhlIGlubmVyIHF1ZXJ5LgogKgogKiBAcGFyYW0gc3RyaW5nICRzcWwgVGhlIFNRTCBxdWVyeSB0byB0cmFuc2Zvcm0KICoKICogQHJldHVybiBzdHJpbmcgVGhlIENPVU5UIHF1ZXJ5CiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":355,"slug":"sql-to-keyset-query","name":"sql_to_keyset_query","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"sql","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"limit","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"columns","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"cursor","type":[{"name":"array","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIFRyYW5zZm9ybSBhIFNRTCBxdWVyeSBpbnRvIGEga2V5c2V0IChjdXJzb3ItYmFzZWQpIHBhZ2luYXRlZCBxdWVyeS4KICoKICogTW9yZSBlZmZpY2llbnQgdGhhbiBPRkZTRVQgZm9yIGxhcmdlIGRhdGFzZXRzIC0gdXNlcyBpbmRleGVkIFdIRVJFIGNvbmRpdGlvbnMuCiAqIEF1dG9tYXRpY2FsbHkgZGV0ZWN0cyBleGlzdGluZyBxdWVyeSBwYXJhbWV0ZXJzIGFuZCBhcHBlbmRzIGtleXNldCBwbGFjZWhvbGRlcnMgYXQgdGhlIGVuZC4KICoKICogQHBhcmFtIHN0cmluZyAkc3FsIFRoZSBTUUwgcXVlcnkgdG8gcGFnaW5hdGUgKG11c3QgaGF2ZSBPUkRFUiBCWSkKICogQHBhcmFtIGludCAkbGltaXQgTWF4aW11bSBudW1iZXIgb2Ygcm93cyB0byByZXR1cm4KICogQHBhcmFtIGxpc3Q8S2V5c2V0Q29sdW1uPiAkY29sdW1ucyBDb2x1bW5zIGZvciBrZXlzZXQgcGFnaW5hdGlvbiAobXVzdCBtYXRjaCBPUkRFUiBCWSkKICogQHBhcmFtIG51bGx8bGlzdDxudWxsfGJvb2x8ZmxvYXR8aW50fHN0cmluZz4gJGN1cnNvciBWYWx1ZXMgZnJvbSBsYXN0IHJvdyBvZiBwcmV2aW91cyBwYWdlIChudWxsIGZvciBmaXJzdCBwYWdlKQogKgogKiBAcmV0dXJuIHN0cmluZyBUaGUgcGFnaW5hdGVkIFNRTCBxdWVyeQogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":370,"slug":"sql-keyset-column","name":"sql_keyset_column","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"column","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"order","type":[{"name":"SortOrder","namespace":"Flow\\PostgreSql\\AST\\Transformers","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\PostgreSql\\AST\\Transformers\\SortOrder::..."}],"return_type":[{"name":"KeysetColumn","namespace":"Flow\\PostgreSql\\AST\\Transformers","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIEtleXNldENvbHVtbiBmb3Iga2V5c2V0IHBhZ2luYXRpb24uCiAqCiAqIEBwYXJhbSBzdHJpbmcgJGNvbHVtbiBDb2x1bW4gbmFtZSAoY2FuIGluY2x1ZGUgdGFibGUgYWxpYXMgbGlrZSAidS5pZCIpCiAqIEBwYXJhbSBTb3J0T3JkZXIgJG9yZGVyIFNvcnQgb3JkZXIgKEFTQyBvciBERVNDKQogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":379,"slug":"sql-query-columns","name":"sql_query_columns","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"query","type":[{"name":"ParsedQuery","namespace":"Flow\\PostgreSql","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Columns","namespace":"Flow\\PostgreSql\\Extractors","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEV4dHJhY3QgY29sdW1ucyBmcm9tIGEgcGFyc2VkIFNRTCBxdWVyeS4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":388,"slug":"sql-query-tables","name":"sql_query_tables","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"query","type":[{"name":"ParsedQuery","namespace":"Flow\\PostgreSql","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Tables","namespace":"Flow\\PostgreSql\\Extractors","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEV4dHJhY3QgdGFibGVzIGZyb20gYSBwYXJzZWQgU1FMIHF1ZXJ5LgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":397,"slug":"sql-query-functions","name":"sql_query_functions","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"query","type":[{"name":"ParsedQuery","namespace":"Flow\\PostgreSql","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Functions","namespace":"Flow\\PostgreSql\\Extractors","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEV4dHJhY3QgZnVuY3Rpb25zIGZyb20gYSBwYXJzZWQgU1FMIHF1ZXJ5LgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":406,"slug":"sql-query-order-by","name":"sql_query_order_by","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"query","type":[{"name":"ParsedQuery","namespace":"Flow\\PostgreSql","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"OrderBy","namespace":"Flow\\PostgreSql\\Extractors","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEV4dHJhY3QgT1JERVIgQlkgY2xhdXNlcyBmcm9tIGEgcGFyc2VkIFNRTCBxdWVyeS4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":420,"slug":"sql-query-depth","name":"sql_query_depth","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"sql","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEdldCB0aGUgbWF4aW11bSBuZXN0aW5nIGRlcHRoIG9mIGEgU1FMIHF1ZXJ5LgogKgogKiBFeGFtcGxlOgogKiAtICJTRUxFQ1QgKiBGUk9NIHQiID0+IDEKICogLSAiU0VMRUNUICogRlJPTSAoU0VMRUNUICogRlJPTSB0KSIgPT4gMgogKiAtICJTRUxFQ1QgKiBGUk9NIChTRUxFQ1QgKiBGUk9NIChTRUxFQ1QgKiBGUk9NIHQpKSIgPT4gMwogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":437,"slug":"sql-to-explain","name":"sql_to_explain","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"sql","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"config","type":[{"name":"ExplainConfig","namespace":"Flow\\PostgreSql\\AST\\Transformers","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIFRyYW5zZm9ybSBhIFNRTCBxdWVyeSBpbnRvIGFuIEVYUExBSU4gcXVlcnkuCiAqCiAqIFJldHVybnMgdGhlIG1vZGlmaWVkIFNRTCB3aXRoIEVYUExBSU4gd3JhcHBlZCBhcm91bmQgaXQuCiAqIERlZmF1bHRzIHRvIEVYUExBSU4gQU5BTFlaRSB3aXRoIEpTT04gZm9ybWF0IGZvciBlYXN5IHBhcnNpbmcuCiAqCiAqIEBwYXJhbSBzdHJpbmcgJHNxbCBUaGUgU1FMIHF1ZXJ5IHRvIGV4cGxhaW4KICogQHBhcmFtIG51bGx8RXhwbGFpbkNvbmZpZyAkY29uZmlnIEVYUExBSU4gY29uZmlndXJhdGlvbiAoZGVmYXVsdHMgdG8gZm9yQW5hbHlzaXMoKSkKICoKICogQHJldHVybiBzdHJpbmcgVGhlIEVYUExBSU4gcXVlcnkKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":457,"slug":"sql-explain-config","name":"sql_explain_config","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"analyze","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"true"},{"name":"verbose","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"costs","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"true"},{"name":"buffers","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"true"},{"name":"timing","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"true"},{"name":"format","type":[{"name":"ExplainFormat","namespace":"Flow\\PostgreSql\\QueryBuilder\\Utility","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\PostgreSql\\QueryBuilder\\Utility\\ExplainFormat::..."}],"return_type":[{"name":"ExplainConfig","namespace":"Flow\\PostgreSql\\AST\\Transformers","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBFeHBsYWluQ29uZmlnIGZvciBjdXN0b21pemluZyBFWFBMQUlOIG9wdGlvbnMuCiAqCiAqIEBwYXJhbSBib29sICRhbmFseXplIFdoZXRoZXIgdG8gYWN0dWFsbHkgZXhlY3V0ZSB0aGUgcXVlcnkgKEFOQUxZWkUpCiAqIEBwYXJhbSBib29sICR2ZXJib3NlIEluY2x1ZGUgdmVyYm9zZSBvdXRwdXQKICogQHBhcmFtIGJvb2wgJGNvc3RzIEluY2x1ZGUgY29zdCBlc3RpbWF0ZXMgKGRlZmF1bHQgdHJ1ZSkKICogQHBhcmFtIGJvb2wgJGJ1ZmZlcnMgSW5jbHVkZSBidWZmZXIgdXNhZ2Ugc3RhdGlzdGljcyAocmVxdWlyZXMgYW5hbHl6ZSkKICogQHBhcmFtIGJvb2wgJHRpbWluZyBJbmNsdWRlIHRpbWluZyBpbmZvcm1hdGlvbiAocmVxdWlyZXMgYW5hbHl6ZSkKICogQHBhcmFtIEV4cGxhaW5Gb3JtYXQgJGZvcm1hdCBPdXRwdXQgZm9ybWF0IChKU09OIHJlY29tbWVuZGVkIGZvciBwYXJzaW5nKQogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":479,"slug":"sql-explain-modifier","name":"sql_explain_modifier","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"config","type":[{"name":"ExplainConfig","namespace":"Flow\\PostgreSql\\AST\\Transformers","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ExplainModifier","namespace":"Flow\\PostgreSql\\AST\\Transformers","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBFeHBsYWluTW9kaWZpZXIgZm9yIHRyYW5zZm9ybWluZyBxdWVyaWVzIGludG8gRVhQTEFJTiBxdWVyaWVzLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":492,"slug":"sql-explain-parse","name":"sql_explain_parse","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"jsonOutput","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Plan","namespace":"Flow\\PostgreSql\\Explain\\Plan","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIFBhcnNlIEVYUExBSU4gSlNPTiBvdXRwdXQgaW50byBhIFBsYW4gb2JqZWN0LgogKgogKiBAcGFyYW0gc3RyaW5nICRqc29uT3V0cHV0IFRoZSBKU09OIG91dHB1dCBmcm9tIEVYUExBSU4gKEZPUk1BVCBKU09OKQogKgogKiBAcmV0dXJuIFBsYW4gVGhlIHBhcnNlZCBleGVjdXRpb24gcGxhbgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":505,"slug":"sql-analyze","name":"sql_analyze","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"plan","type":[{"name":"Plan","namespace":"Flow\\PostgreSql\\Explain\\Plan","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"PlanAnalyzer","namespace":"Flow\\PostgreSql\\Explain\\Analyzer","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIHBsYW4gYW5hbHl6ZXIgZm9yIGFuYWx5emluZyBFWFBMQUlOIHBsYW5zLgogKgogKiBAcGFyYW0gUGxhbiAkcGxhbiBUaGUgZXhlY3V0aW9uIHBsYW4gdG8gYW5hbHl6ZQogKgogKiBAcmV0dXJuIFBsYW5BbmFseXplciBUaGUgYW5hbHl6ZXIgZm9yIGV4dHJhY3RpbmcgaW5zaWdodHMKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":516,"slug":"select","name":"select","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expressions","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"SelectBuilder","namespace":"Flow\\PostgreSql\\QueryBuilder\\Select","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIG5ldyBTRUxFQ1QgcXVlcnkgYnVpbGRlci4KICoKICogQHBhcmFtIEV4cHJlc3Npb24gLi4uJGV4cHJlc3Npb25zIENvbHVtbnMgdG8gc2VsZWN0LiBJZiBlbXB0eSwgcmV0dXJucyBTZWxlY3RTZWxlY3RTdGVwLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":532,"slug":"with","name":"with","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"ctes","type":[{"name":"CTE","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"WithBuilder","namespace":"Flow\\PostgreSql\\QueryBuilder\\With","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFdJVEggY2xhdXNlIGJ1aWxkZXIgZm9yIENURXMuCiAqCiAqIEV4YW1wbGU6IHdpdGgoY3RlKCd1c2VycycsICRzdWJxdWVyeSkpLT5zZWxlY3Qoc3RhcigpKS0+ZnJvbSh0YWJsZSgndXNlcnMnKSkKICogRXhhbXBsZTogd2l0aChjdGUoJ2EnLCAkcTEpLCBjdGUoJ2InLCAkcTIpKS0+cmVjdXJzaXZlKCktPnNlbGVjdCguLi4pLT5mcm9tKHRhYmxlKCdhJykpCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":545,"slug":"insert","name":"insert","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"InsertIntoStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Insert","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIG5ldyBJTlNFUlQgcXVlcnkgYnVpbGRlci4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":561,"slug":"bulk-insert","name":"bulk_insert","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"table","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"columns","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"rowCount","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"BulkInsert","namespace":"Flow\\PostgreSql\\QueryBuilder\\Insert","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBvcHRpbWl6ZWQgYnVsayBJTlNFUlQgcXVlcnkgZm9yIGhpZ2gtcGVyZm9ybWFuY2UgbXVsdGktcm93IGluc2VydHMuCiAqCiAqIFVubGlrZSBpbnNlcnQoKSB3aGljaCB1c2VzIGltbXV0YWJsZSBidWlsZGVyIHBhdHRlcm5zIChPKG7CsikgZm9yIG4gcm93cyksCiAqIHRoaXMgZnVuY3Rpb24gZ2VuZXJhdGVzIFNRTCBkaXJlY3RseSB1c2luZyBzdHJpbmcgb3BlcmF0aW9ucyAoTyhuKSBjb21wbGV4aXR5KS4KICoKICogQHBhcmFtIHN0cmluZyAkdGFibGUgVGFibGUgbmFtZQogKiBAcGFyYW0gbGlzdDxzdHJpbmc+ICRjb2x1bW5zIENvbHVtbiBuYW1lcwogKiBAcGFyYW0gaW50ICRyb3dDb3VudCBOdW1iZXIgb2Ygcm93cyB0byBpbnNlcnQKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":570,"slug":"update","name":"update","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"UpdateTableStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Update","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIG5ldyBVUERBVEUgcXVlcnkgYnVpbGRlci4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":579,"slug":"delete","name":"delete","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"DeleteFromStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Delete","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIG5ldyBERUxFVEUgcXVlcnkgYnVpbGRlci4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":591,"slug":"merge","name":"merge","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"table","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"alias","type":[{"name":"string","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"MergeUsingStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Merge","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIG5ldyBNRVJHRSBxdWVyeSBidWlsZGVyLgogKgogKiBAcGFyYW0gc3RyaW5nICR0YWJsZSBUYXJnZXQgdGFibGUgbmFtZQogKiBAcGFyYW0gbnVsbHxzdHJpbmcgJGFsaWFzIE9wdGlvbmFsIHRhYmxlIGFsaWFzCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":605,"slug":"copy","name":"copy","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"CopyFactory","namespace":"Flow\\PostgreSql\\QueryBuilder\\Factory","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIG5ldyBDT1BZIHF1ZXJ5IGJ1aWxkZXIgZm9yIGRhdGEgaW1wb3J0L2V4cG9ydC4KICoKICogVXNhZ2U6CiAqICAgY29weSgpLT5mcm9tKCd1c2VycycpLT5maWxlKCcvdG1wL3VzZXJzLmNzdicpLT5mb3JtYXQoQ29weUZvcm1hdDo6Q1NWKQogKiAgIGNvcHkoKS0+dG8oJ3VzZXJzJyktPmZpbGUoJy90bXAvdXNlcnMuY3N2JyktPmZvcm1hdChDb3B5Rm9ybWF0OjpDU1YpCiAqICAgY29weSgpLT50b1F1ZXJ5KHNlbGVjdCguLi4pKS0+ZmlsZSgnL3RtcC9kYXRhLmNzdicpCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":626,"slug":"col","name":"col","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"column","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"table","type":[{"name":"string","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"schema","type":[{"name":"string","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Column","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGNvbHVtbiByZWZlcmVuY2UgZXhwcmVzc2lvbi4KICoKICogQ2FuIGJlIHVzZWQgaW4gdHdvIG1vZGVzOgogKiAtIFBhcnNlIG1vZGU6IGNvbCgndXNlcnMuaWQnKSBvciBjb2woJ3NjaGVtYS50YWJsZS5jb2x1bW4nKSAtIHBhcnNlcyBkb3Qtc2VwYXJhdGVkIHN0cmluZwogKiAtIEV4cGxpY2l0IG1vZGU6IGNvbCgnaWQnLCAndXNlcnMnKSBvciBjb2woJ2lkJywgJ3VzZXJzJywgJ3NjaGVtYScpIC0gc2VwYXJhdGUgYXJndW1lbnRzCiAqCiAqIFdoZW4gJHRhYmxlIG9yICRzY2hlbWEgaXMgcHJvdmlkZWQsICRjb2x1bW4gbXVzdCBiZSBhIHBsYWluIGNvbHVtbiBuYW1lIChubyBkb3RzKS4KICoKICogQHBhcmFtIHN0cmluZyAkY29sdW1uIENvbHVtbiBuYW1lLCBvciBkb3Qtc2VwYXJhdGVkIHBhdGggbGlrZSAidGFibGUuY29sdW1uIiBvciAic2NoZW1hLnRhYmxlLmNvbHVtbiIKICogQHBhcmFtIG51bGx8c3RyaW5nICR0YWJsZSBUYWJsZSBuYW1lIChvcHRpb25hbCwgdHJpZ2dlcnMgZXhwbGljaXQgbW9kZSkKICogQHBhcmFtIG51bGx8c3RyaW5nICRzY2hlbWEgU2NoZW1hIG5hbWUgKG9wdGlvbmFsLCByZXF1aXJlcyAkdGFibGUpCiAqCiAqIEB0aHJvd3MgSW52YWxpZEV4cHJlc3Npb25FeGNlcHRpb24gd2hlbiAkc2NoZW1hIGlzIHByb3ZpZGVkIHdpdGhvdXQgJHRhYmxlLCBvciB3aGVuICRjb2x1bW4gY29udGFpbnMgZG90cyBpbiBleHBsaWNpdCBtb2RlCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":655,"slug":"star","name":"star","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"table","type":[{"name":"string","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Star","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFNFTEVDVCAqIGV4cHJlc3Npb24uCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":671,"slug":"literal","name":"literal","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"value","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"float","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false},{"name":"null","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Literal","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGxpdGVyYWwgdmFsdWUgZm9yIHVzZSBpbiBxdWVyaWVzLgogKgogKiBBdXRvbWF0aWNhbGx5IGRldGVjdHMgdGhlIHR5cGUgYW5kIGNyZWF0ZXMgdGhlIGFwcHJvcHJpYXRlIGxpdGVyYWw6CiAqIC0gbGl0ZXJhbCgnaGVsbG8nKSBjcmVhdGVzIGEgc3RyaW5nIGxpdGVyYWwKICogLSBsaXRlcmFsKDQyKSBjcmVhdGVzIGFuIGludGVnZXIgbGl0ZXJhbAogKiAtIGxpdGVyYWwoMy4xNCkgY3JlYXRlcyBhIGZsb2F0IGxpdGVyYWwKICogLSBsaXRlcmFsKHRydWUpIGNyZWF0ZXMgYSBib29sZWFuIGxpdGVyYWwKICogLSBsaXRlcmFsKG51bGwpIGNyZWF0ZXMgYSBOVUxMIGxpdGVyYWwKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":686,"slug":"param","name":"param","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"position","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Parameter","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIHBvc2l0aW9uYWwgcGFyYW1ldGVyICgkMSwgJDIsIGV0Yy4pLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":698,"slug":"func","name":"func","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"args","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"FunctionCall","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGZ1bmN0aW9uIGNhbGwgZXhwcmVzc2lvbi4KICoKICogQHBhcmFtIHN0cmluZyAkbmFtZSBGdW5jdGlvbiBuYW1lIChjYW4gaW5jbHVkZSBzY2hlbWEgbGlrZSAicGdfY2F0YWxvZy5ub3ciKQogKiBAcGFyYW0gbGlzdDxFeHByZXNzaW9uPiAkYXJncyBGdW5jdGlvbiBhcmd1bWVudHMKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":711,"slug":"agg","name":"agg","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"args","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"},{"name":"distinct","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"AggregateCall","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBhZ2dyZWdhdGUgZnVuY3Rpb24gY2FsbCAoQ09VTlQsIFNVTSwgQVZHLCBldGMuKS4KICoKICogQHBhcmFtIHN0cmluZyAkbmFtZSBBZ2dyZWdhdGUgZnVuY3Rpb24gbmFtZQogKiBAcGFyYW0gbGlzdDxFeHByZXNzaW9uPiAkYXJncyBGdW5jdGlvbiBhcmd1bWVudHMKICogQHBhcmFtIGJvb2wgJGRpc3RpbmN0IFVzZSBESVNUSU5DVCBtb2RpZmllcgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":720,"slug":"agg-count","name":"agg_count","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expr","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"distinct","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"AggregateCall","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBDT1VOVCgqKSBhZ2dyZWdhdGUuCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":733,"slug":"agg-sum","name":"agg_sum","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expr","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"distinct","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"AggregateCall","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBTVU0gYWdncmVnYXRlLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":742,"slug":"agg-avg","name":"agg_avg","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expr","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"distinct","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"AggregateCall","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBBVkcgYWdncmVnYXRlLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":751,"slug":"agg-min","name":"agg_min","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expr","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"AggregateCall","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBNSU4gYWdncmVnYXRlLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":760,"slug":"agg-max","name":"agg_max","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expr","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"AggregateCall","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBNQVggYWdncmVnYXRlLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":771,"slug":"coalesce","name":"coalesce","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expressions","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"Coalesce","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIENPQUxFU0NFIGV4cHJlc3Npb24uCiAqCiAqIEBwYXJhbSBFeHByZXNzaW9uIC4uLiRleHByZXNzaW9ucyBFeHByZXNzaW9ucyB0byBjb2FsZXNjZQogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":780,"slug":"nullif","name":"nullif","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expr1","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"expr2","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"NullIf","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIE5VTExJRiBleHByZXNzaW9uLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":791,"slug":"greatest","name":"greatest","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expressions","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"Greatest","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIEdSRUFURVNUIGV4cHJlc3Npb24uCiAqCiAqIEBwYXJhbSBFeHByZXNzaW9uIC4uLiRleHByZXNzaW9ucyBFeHByZXNzaW9ucyB0byBjb21wYXJlCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":802,"slug":"least","name":"least","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expressions","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"Least","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIExFQVNUIGV4cHJlc3Npb24uCiAqCiAqIEBwYXJhbSBFeHByZXNzaW9uIC4uLiRleHByZXNzaW9ucyBFeHByZXNzaW9ucyB0byBjb21wYXJlCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":814,"slug":"cast","name":"cast","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expr","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"dataType","type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"TypeCast","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIHR5cGUgY2FzdCBleHByZXNzaW9uLgogKgogKiBAcGFyYW0gRXhwcmVzc2lvbiAkZXhwciBFeHByZXNzaW9uIHRvIGNhc3QKICogQHBhcmFtIERhdGFUeXBlICRkYXRhVHlwZSBUYXJnZXQgZGF0YSB0eXBlICh1c2UgZGF0YV90eXBlXyogZnVuY3Rpb25zKQogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":823,"slug":"data-type-integer","name":"data_type_integer","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBpbnRlZ2VyIGRhdGEgdHlwZSAoUG9zdGdyZVNRTCBpbnQ0KS4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":832,"slug":"data-type-smallint","name":"data_type_smallint","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIHNtYWxsaW50IGRhdGEgdHlwZSAoUG9zdGdyZVNRTCBpbnQyKS4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":841,"slug":"data-type-bigint","name":"data_type_bigint","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGJpZ2ludCBkYXRhIHR5cGUgKFBvc3RncmVTUUwgaW50OCkuCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":850,"slug":"data-type-boolean","name":"data_type_boolean","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGJvb2xlYW4gZGF0YSB0eXBlLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":859,"slug":"data-type-text","name":"data_type_text","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIHRleHQgZGF0YSB0eXBlLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":868,"slug":"data-type-varchar","name":"data_type_varchar","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"length","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIHZhcmNoYXIgZGF0YSB0eXBlIHdpdGggbGVuZ3RoIGNvbnN0cmFpbnQuCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":877,"slug":"data-type-char","name":"data_type_char","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"length","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGNoYXIgZGF0YSB0eXBlIHdpdGggbGVuZ3RoIGNvbnN0cmFpbnQuCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":886,"slug":"data-type-numeric","name":"data_type_numeric","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"precision","type":[{"name":"int","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"scale","type":[{"name":"int","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIG51bWVyaWMgZGF0YSB0eXBlIHdpdGggb3B0aW9uYWwgcHJlY2lzaW9uIGFuZCBzY2FsZS4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":895,"slug":"data-type-decimal","name":"data_type_decimal","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"precision","type":[{"name":"int","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"scale","type":[{"name":"int","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGRlY2ltYWwgZGF0YSB0eXBlIHdpdGggb3B0aW9uYWwgcHJlY2lzaW9uIGFuZCBzY2FsZS4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":904,"slug":"data-type-real","name":"data_type_real","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIHJlYWwgZGF0YSB0eXBlIChQb3N0Z3JlU1FMIGZsb2F0NCkuCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":913,"slug":"data-type-double-precision","name":"data_type_double_precision","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGRvdWJsZSBwcmVjaXNpb24gZGF0YSB0eXBlIChQb3N0Z3JlU1FMIGZsb2F0OCkuCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":922,"slug":"data-type-date","name":"data_type_date","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGRhdGUgZGF0YSB0eXBlLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":931,"slug":"data-type-time","name":"data_type_time","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"precision","type":[{"name":"int","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIHRpbWUgZGF0YSB0eXBlIHdpdGggb3B0aW9uYWwgcHJlY2lzaW9uLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":940,"slug":"data-type-timestamp","name":"data_type_timestamp","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"precision","type":[{"name":"int","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIHRpbWVzdGFtcCBkYXRhIHR5cGUgd2l0aCBvcHRpb25hbCBwcmVjaXNpb24uCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":949,"slug":"data-type-timestamptz","name":"data_type_timestamptz","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"precision","type":[{"name":"int","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIHRpbWVzdGFtcCB3aXRoIHRpbWUgem9uZSBkYXRhIHR5cGUgd2l0aCBvcHRpb25hbCBwcmVjaXNpb24uCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":958,"slug":"data-type-interval","name":"data_type_interval","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBpbnRlcnZhbCBkYXRhIHR5cGUuCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":973,"slug":"current-timestamp","name":"current_timestamp","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"SQLValueFunctionExpression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIFNRTCBzdGFuZGFyZCBDVVJSRU5UX1RJTUVTVEFNUCBmdW5jdGlvbi4KICoKICogUmV0dXJucyB0aGUgY3VycmVudCBkYXRlIGFuZCB0aW1lIChhdCB0aGUgc3RhcnQgb2YgdGhlIHRyYW5zYWN0aW9uKS4KICogVXNlZnVsIGFzIGEgY29sdW1uIGRlZmF1bHQgdmFsdWUgb3IgaW4gU0VMRUNUIHF1ZXJpZXMuCiAqCiAqIEV4YW1wbGU6IGNvbHVtbignY3JlYXRlZF9hdCcsIGRhdGFfdHlwZV90aW1lc3RhbXAoKSktPmRlZmF1bHQoY3VycmVudF90aW1lc3RhbXAoKSkKICogRXhhbXBsZTogc2VsZWN0KCktPnNlbGVjdChjdXJyZW50X3RpbWVzdGFtcCgpLT5hcygnbm93JykpCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":988,"slug":"current-date","name":"current_date","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"SQLValueFunctionExpression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIFNRTCBzdGFuZGFyZCBDVVJSRU5UX0RBVEUgZnVuY3Rpb24uCiAqCiAqIFJldHVybnMgdGhlIGN1cnJlbnQgZGF0ZSAoYXQgdGhlIHN0YXJ0IG9mIHRoZSB0cmFuc2FjdGlvbikuCiAqIFVzZWZ1bCBhcyBhIGNvbHVtbiBkZWZhdWx0IHZhbHVlIG9yIGluIFNFTEVDVCBxdWVyaWVzLgogKgogKiBFeGFtcGxlOiBjb2x1bW4oJ2JpcnRoX2RhdGUnLCBkYXRhX3R5cGVfZGF0ZSgpKS0+ZGVmYXVsdChjdXJyZW50X2RhdGUoKSkKICogRXhhbXBsZTogc2VsZWN0KCktPnNlbGVjdChjdXJyZW50X2RhdGUoKS0+YXMoJ3RvZGF5JykpCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1003,"slug":"current-time","name":"current_time","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"SQLValueFunctionExpression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIFNRTCBzdGFuZGFyZCBDVVJSRU5UX1RJTUUgZnVuY3Rpb24uCiAqCiAqIFJldHVybnMgdGhlIGN1cnJlbnQgdGltZSAoYXQgdGhlIHN0YXJ0IG9mIHRoZSB0cmFuc2FjdGlvbikuCiAqIFVzZWZ1bCBhcyBhIGNvbHVtbiBkZWZhdWx0IHZhbHVlIG9yIGluIFNFTEVDVCBxdWVyaWVzLgogKgogKiBFeGFtcGxlOiBjb2x1bW4oJ3N0YXJ0X3RpbWUnLCBkYXRhX3R5cGVfdGltZSgpKS0+ZGVmYXVsdChjdXJyZW50X3RpbWUoKSkKICogRXhhbXBsZTogc2VsZWN0KCktPnNlbGVjdChjdXJyZW50X3RpbWUoKS0+YXMoJ25vd190aW1lJykpCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1012,"slug":"data-type-uuid","name":"data_type_uuid","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFVVSUQgZGF0YSB0eXBlLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1021,"slug":"data-type-json","name":"data_type_json","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIEpTT04gZGF0YSB0eXBlLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1030,"slug":"data-type-jsonb","name":"data_type_jsonb","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIEpTT05CIGRhdGEgdHlwZS4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1039,"slug":"data-type-bytea","name":"data_type_bytea","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGJ5dGVhIGRhdGEgdHlwZS4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1048,"slug":"data-type-inet","name":"data_type_inet","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBpbmV0IGRhdGEgdHlwZS4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1057,"slug":"data-type-cidr","name":"data_type_cidr","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGNpZHIgZGF0YSB0eXBlLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1066,"slug":"data-type-macaddr","name":"data_type_macaddr","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIG1hY2FkZHIgZGF0YSB0eXBlLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1075,"slug":"data-type-serial","name":"data_type_serial","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIHNlcmlhbCBkYXRhIHR5cGUuCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1084,"slug":"data-type-smallserial","name":"data_type_smallserial","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIHNtYWxsc2VyaWFsIGRhdGEgdHlwZS4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1093,"slug":"data-type-bigserial","name":"data_type_bigserial","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGJpZ3NlcmlhbCBkYXRhIHR5cGUuCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1102,"slug":"data-type-array","name":"data_type_array","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"elementType","type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBhcnJheSBkYXRhIHR5cGUgZnJvbSBhbiBlbGVtZW50IHR5cGUuCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1114,"slug":"data-type-custom","name":"data_type_custom","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"typeName","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"schema","type":[{"name":"string","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGN1c3RvbSBkYXRhIHR5cGUuCiAqCiAqIEBwYXJhbSBzdHJpbmcgJHR5cGVOYW1lIFR5cGUgbmFtZQogKiBAcGFyYW0gbnVsbHxzdHJpbmcgJHNjaGVtYSBPcHRpb25hbCBzY2hlbWEgbmFtZQogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1127,"slug":"case-when","name":"case_when","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"whenClauses","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"elseResult","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"operand","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"CaseExpression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIENBU0UgZXhwcmVzc2lvbi4KICoKICogQHBhcmFtIG5vbi1lbXB0eS1saXN0PFdoZW5DbGF1c2U+ICR3aGVuQ2xhdXNlcyBXSEVOIGNsYXVzZXMKICogQHBhcmFtIG51bGx8RXhwcmVzc2lvbiAkZWxzZVJlc3VsdCBFTFNFIHJlc3VsdCAob3B0aW9uYWwpCiAqIEBwYXJhbSBudWxsfEV4cHJlc3Npb24gJG9wZXJhbmQgQ0FTRSBvcGVyYW5kIGZvciBzaW1wbGUgQ0FTRSAob3B0aW9uYWwpCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1136,"slug":"when","name":"when","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"condition","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"result","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"WhenClause","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFdIRU4gY2xhdXNlIGZvciBDQVNFIGV4cHJlc3Npb24uCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1145,"slug":"sub-select","name":"sub_select","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"query","type":[{"name":"SelectFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Select","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Subquery","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIHN1YnF1ZXJ5IGV4cHJlc3Npb24uCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1159,"slug":"array-expr","name":"array_expr","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"elements","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ArrayExpression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBhcnJheSBleHByZXNzaW9uLgogKgogKiBAcGFyYW0gbGlzdDxFeHByZXNzaW9uPiAkZWxlbWVudHMgQXJyYXkgZWxlbWVudHMKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1170,"slug":"row-expr","name":"row_expr","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"elements","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"RowExpression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIHJvdyBleHByZXNzaW9uLgogKgogKiBAcGFyYW0gbGlzdDxFeHByZXNzaW9uPiAkZWxlbWVudHMgUm93IGVsZW1lbnRzCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1192,"slug":"raw-expr","name":"raw_expr","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"sql","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"RawExpression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIHJhdyBTUUwgZXhwcmVzc2lvbiAodXNlIHdpdGggY2F1dGlvbikuCiAqCiAqIFNFQ1VSSVRZIFdBUk5JTkc6IFRoaXMgZnVuY3Rpb24gYWNjZXB0cyByYXcgU1FMIHdpdGhvdXQgcGFyYW1ldGVyaXphdGlvbi4KICogU1FMIGluamVjdGlvbiBpcyBwb3NzaWJsZSBpZiB1c2VkIHdpdGggdW50cnVzdGVkIHVzZXIgaW5wdXQuCiAqIE9ubHkgdXNlIHdpdGggdHJ1c3RlZCwgdmFsaWRhdGVkIGlucHV0LgogKgogKiBGb3IgdXNlci1wcm92aWRlZCB2YWx1ZXMsIHVzZSBwYXJhbSgpIGluc3RlYWQ6CiAqIGBgYHBocAogKiAvLyBVTlNBRkUgLSBTUUwgaW5qZWN0aW9uIHBvc3NpYmxlOgogKiByYXdfZXhwcigiY3VzdG9tX2Z1bmMoJyIgLiAkdXNlcklucHV0IC4gIicpIikKICoKICogLy8gU0FGRSAtIHVzZSBwYXJhbWV0ZXJzOgogKiBmdW5jKCdjdXN0b21fZnVuYycsIHBhcmFtKDEpKQogKiBgYGAKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1201,"slug":"binary-expr","name":"binary_expr","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"left","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"operator","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"right","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"BinaryExpression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGJpbmFyeSBleHByZXNzaW9uIChsZWZ0IG9wIHJpZ2h0KS4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1215,"slug":"window-func","name":"window_func","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"args","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"},{"name":"partitionBy","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"},{"name":"orderBy","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"WindowFunction","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIHdpbmRvdyBmdW5jdGlvbi4KICoKICogQHBhcmFtIHN0cmluZyAkbmFtZSBGdW5jdGlvbiBuYW1lCiAqIEBwYXJhbSBsaXN0PEV4cHJlc3Npb24+ICRhcmdzIEZ1bmN0aW9uIGFyZ3VtZW50cwogKiBAcGFyYW0gbGlzdDxFeHByZXNzaW9uPiAkcGFydGl0aW9uQnkgUEFSVElUSU9OIEJZIGV4cHJlc3Npb25zCiAqIEBwYXJhbSBsaXN0PE9yZGVyQnk+ICRvcmRlckJ5IE9SREVSIEJZIGl0ZW1zCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1228,"slug":"eq","name":"eq","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"left","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"right","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Comparison","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBlcXVhbGl0eSBjb21wYXJpc29uIChjb2x1bW4gPSB2YWx1ZSkuCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1237,"slug":"neq","name":"neq","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"left","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"right","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Comparison","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIG5vdC1lcXVhbCBjb21wYXJpc29uIChjb2x1bW4gIT0gdmFsdWUpLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1246,"slug":"lt","name":"lt","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"left","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"right","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Comparison","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGxlc3MtdGhhbiBjb21wYXJpc29uIChjb2x1bW4gPCB2YWx1ZSkuCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1255,"slug":"lte","name":"lte","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"left","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"right","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Comparison","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGxlc3MtdGhhbi1vci1lcXVhbCBjb21wYXJpc29uIChjb2x1bW4gPD0gdmFsdWUpLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1264,"slug":"gt","name":"gt","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"left","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"right","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Comparison","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGdyZWF0ZXItdGhhbiBjb21wYXJpc29uIChjb2x1bW4gPiB2YWx1ZSkuCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1273,"slug":"gte","name":"gte","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"left","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"right","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Comparison","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGdyZWF0ZXItdGhhbi1vci1lcXVhbCBjb21wYXJpc29uIChjb2x1bW4gPj0gdmFsdWUpLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1282,"slug":"between","name":"between","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expr","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"low","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"high","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"not","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"Between","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIEJFVFdFRU4gY29uZGl0aW9uLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1294,"slug":"is-in","name":"is_in","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expr","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"values","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"In","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBJTiBjb25kaXRpb24uCiAqCiAqIEBwYXJhbSBFeHByZXNzaW9uICRleHByIEV4cHJlc3Npb24gdG8gY2hlY2sKICogQHBhcmFtIGxpc3Q8RXhwcmVzc2lvbj4gJHZhbHVlcyBMaXN0IG9mIHZhbHVlcwogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1303,"slug":"is-null","name":"is_null","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expr","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"not","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"IsNull","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBJUyBOVUxMIGNvbmRpdGlvbi4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1312,"slug":"like","name":"like","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expr","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"pattern","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"caseInsensitive","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"Like","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIExJS0UgY29uZGl0aW9uLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1321,"slug":"similar-to","name":"similar_to","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expr","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"pattern","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"SimilarTo","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFNJTUlMQVIgVE8gY29uZGl0aW9uLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1330,"slug":"is-distinct-from","name":"is_distinct_from","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"left","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"right","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"not","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"IsDistinctFrom","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBJUyBESVNUSU5DVCBGUk9NIGNvbmRpdGlvbi4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1339,"slug":"exists","name":"exists","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"subquery","type":[{"name":"SelectFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Select","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Exists","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBFWElTVFMgY29uZGl0aW9uLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1351,"slug":"any-sub-select","name":"any_sub_select","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"left","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"operator","type":[{"name":"ComparisonOperator","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"subquery","type":[{"name":"SelectFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Select","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Any","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBBTlkgY29uZGl0aW9uLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1363,"slug":"all-sub-select","name":"all_sub_select","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"left","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"operator","type":[{"name":"ComparisonOperator","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"subquery","type":[{"name":"SelectFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Select","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"All","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBBTEwgY29uZGl0aW9uLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1389,"slug":"conditions","name":"conditions","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"ConditionBuilder","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGNvbmRpdGlvbiBidWlsZGVyIGZvciBmbHVlbnQgY29uZGl0aW9uIGNvbXBvc2l0aW9uLgogKgogKiBUaGlzIGJ1aWxkZXIgYWxsb3dzIGluY3JlbWVudGFsIGNvbmRpdGlvbiBidWlsZGluZyB3aXRoIGEgZmx1ZW50IEFQSToKICoKICogYGBgcGhwCiAqICRidWlsZGVyID0gY29uZGl0aW9ucygpOwogKgogKiBpZiAoJGhhc0ZpbHRlcikgewogKiAgICAgJGJ1aWxkZXIgPSAkYnVpbGRlci0+YW5kKGVxKGNvbCgnc3RhdHVzJyksIGxpdGVyYWwoJ2FjdGl2ZScpKSk7CiAqIH0KICoKICogaWYgKCEkYnVpbGRlci0+aXNFbXB0eSgpKSB7CiAqICAgICAkcXVlcnkgPSBzZWxlY3QoKS0+ZnJvbSh0YWJsZSgndXNlcnMnKSktPndoZXJlKCRidWlsZGVyKTsKICogfQogKiBgYGAKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1400,"slug":"cond-and","name":"cond_and","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"conditions","type":[{"name":"Condition","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"AndCondition","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENvbWJpbmUgY29uZGl0aW9ucyB3aXRoIEFORC4KICoKICogQHBhcmFtIENvbmRpdGlvbiAuLi4kY29uZGl0aW9ucyBDb25kaXRpb25zIHRvIGNvbWJpbmUKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1411,"slug":"cond-or","name":"cond_or","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"conditions","type":[{"name":"Condition","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"OrCondition","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENvbWJpbmUgY29uZGl0aW9ucyB3aXRoIE9SLgogKgogKiBAcGFyYW0gQ29uZGl0aW9uIC4uLiRjb25kaXRpb25zIENvbmRpdGlvbnMgdG8gY29tYmluZQogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1420,"slug":"cond-not","name":"cond_not","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"condition","type":[{"name":"Condition","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"NotCondition","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIE5lZ2F0ZSBhIGNvbmRpdGlvbiB3aXRoIE5PVC4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1442,"slug":"raw-cond","name":"raw_cond","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"sql","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"RawCondition","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIHJhdyBTUUwgY29uZGl0aW9uICh1c2Ugd2l0aCBjYXV0aW9uKS4KICoKICogU0VDVVJJVFkgV0FSTklORzogVGhpcyBmdW5jdGlvbiBhY2NlcHRzIHJhdyBTUUwgd2l0aG91dCBwYXJhbWV0ZXJpemF0aW9uLgogKiBTUUwgaW5qZWN0aW9uIGlzIHBvc3NpYmxlIGlmIHVzZWQgd2l0aCB1bnRydXN0ZWQgdXNlciBpbnB1dC4KICogT25seSB1c2Ugd2l0aCB0cnVzdGVkLCB2YWxpZGF0ZWQgaW5wdXQuCiAqCiAqIEZvciB1c2VyLXByb3ZpZGVkIHZhbHVlcywgdXNlIHN0YW5kYXJkIGNvbmRpdGlvbiBmdW5jdGlvbnMgd2l0aCBwYXJhbSgpOgogKiBgYGBwaHAKICogLy8gVU5TQUZFIC0gU1FMIGluamVjdGlvbiBwb3NzaWJsZToKICogcmF3X2NvbmQoInN0YXR1cyA9ICciIC4gJHVzZXJJbnB1dCAuICInIikKICoKICogLy8gU0FGRSAtIHVzZSB0eXBlZCBjb25kaXRpb25zOgogKiBlcShjb2woJ3N0YXR1cycpLCBwYXJhbSgxKSkKICogYGBgCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1455,"slug":"cond-true","name":"cond_true","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"RawCondition","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFRSVUUgY29uZGl0aW9uIGZvciBXSEVSRSBjbGF1c2VzLgogKgogKiBVc2VmdWwgd2hlbiB5b3UgbmVlZCBhIGNvbmRpdGlvbiB0aGF0IGFsd2F5cyBldmFsdWF0ZXMgdG8gdHJ1ZS4KICoKICogRXhhbXBsZTogc2VsZWN0KGxpdGVyYWwoMSkpLT53aGVyZShjb25kX3RydWUoKSkgLy8gU0VMRUNUIDEgV0hFUkUgdHJ1ZQogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1469,"slug":"cond-false","name":"cond_false","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"RawCondition","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIEZBTFNFIGNvbmRpdGlvbiBmb3IgV0hFUkUgY2xhdXNlcy4KICoKICogVXNlZnVsIHdoZW4geW91IG5lZWQgYSBjb25kaXRpb24gdGhhdCBhbHdheXMgZXZhbHVhdGVzIHRvIGZhbHNlLAogKiB0eXBpY2FsbHkgZm9yIHRlc3Rpbmcgb3IgdG8gcmV0dXJuIGFuIGVtcHR5IHJlc3VsdCBzZXQuCiAqCiAqIEV4YW1wbGU6IHNlbGVjdChsaXRlcmFsKDEpKS0+d2hlcmUoY29uZF9mYWxzZSgpKSAvLyBTRUxFQ1QgMSBXSEVSRSBmYWxzZQogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1481,"slug":"json-contains","name":"json_contains","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"left","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"right","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"OperatorCondition","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIEpTT05CIGNvbnRhaW5zIGNvbmRpdGlvbiAoQD4pLgogKgogKiBFeGFtcGxlOiBqc29uX2NvbnRhaW5zKGNvbCgnbWV0YWRhdGEnKSwgbGl0ZXJhbF9qc29uKCd7ImNhdGVnb3J5IjogImVsZWN0cm9uaWNzIn0nKSkKICogUHJvZHVjZXM6IG1ldGFkYXRhIEA+ICd7ImNhdGVnb3J5IjogImVsZWN0cm9uaWNzIn0nCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1493,"slug":"json-contained-by","name":"json_contained_by","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"left","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"right","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"OperatorCondition","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIEpTT05CIGlzIGNvbnRhaW5lZCBieSBjb25kaXRpb24gKDxAKS4KICoKICogRXhhbXBsZToganNvbl9jb250YWluZWRfYnkoY29sKCdtZXRhZGF0YScpLCBsaXRlcmFsX2pzb24oJ3siY2F0ZWdvcnkiOiAiZWxlY3Ryb25pY3MiLCAicHJpY2UiOiAxMDB9JykpCiAqIFByb2R1Y2VzOiBtZXRhZGF0YSA8QCAneyJjYXRlZ29yeSI6ICJlbGVjdHJvbmljcyIsICJwcmljZSI6IDEwMH0nCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1506,"slug":"json-get","name":"json_get","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expr","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"key","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"BinaryExpression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIEpTT04gZmllbGQgYWNjZXNzIGV4cHJlc3Npb24gKC0+KS4KICogUmV0dXJucyBKU09OLgogKgogKiBFeGFtcGxlOiBqc29uX2dldChjb2woJ21ldGFkYXRhJyksIGxpdGVyYWxfc3RyaW5nKCdjYXRlZ29yeScpKQogKiBQcm9kdWNlczogbWV0YWRhdGEgLT4gJ2NhdGVnb3J5JwogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1519,"slug":"json-get-text","name":"json_get_text","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expr","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"key","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"BinaryExpression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIEpTT04gZmllbGQgYWNjZXNzIGV4cHJlc3Npb24gKC0+PikuCiAqIFJldHVybnMgdGV4dC4KICoKICogRXhhbXBsZToganNvbl9nZXRfdGV4dChjb2woJ21ldGFkYXRhJyksIGxpdGVyYWxfc3RyaW5nKCduYW1lJykpCiAqIFByb2R1Y2VzOiBtZXRhZGF0YSAtPj4gJ25hbWUnCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1532,"slug":"json-path","name":"json_path","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expr","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"path","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"BinaryExpression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIEpTT04gcGF0aCBhY2Nlc3MgZXhwcmVzc2lvbiAoIz4pLgogKiBSZXR1cm5zIEpTT04uCiAqCiAqIEV4YW1wbGU6IGpzb25fcGF0aChjb2woJ21ldGFkYXRhJyksIGxpdGVyYWxfc3RyaW5nKCd7Y2F0ZWdvcnksbmFtZX0nKSkKICogUHJvZHVjZXM6IG1ldGFkYXRhICM+ICd7Y2F0ZWdvcnksbmFtZX0nCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1545,"slug":"json-path-text","name":"json_path_text","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expr","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"path","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"BinaryExpression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIEpTT04gcGF0aCBhY2Nlc3MgZXhwcmVzc2lvbiAoIz4+KS4KICogUmV0dXJucyB0ZXh0LgogKgogKiBFeGFtcGxlOiBqc29uX3BhdGhfdGV4dChjb2woJ21ldGFkYXRhJyksIGxpdGVyYWxfc3RyaW5nKCd7Y2F0ZWdvcnksbmFtZX0nKSkKICogUHJvZHVjZXM6IG1ldGFkYXRhICM+PiAne2NhdGVnb3J5LG5hbWV9JwogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1557,"slug":"json-exists","name":"json_exists","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expr","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"key","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"OperatorCondition","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIEpTT05CIGtleSBleGlzdHMgY29uZGl0aW9uICg\/KS4KICoKICogRXhhbXBsZToganNvbl9leGlzdHMoY29sKCdtZXRhZGF0YScpLCBsaXRlcmFsX3N0cmluZygnY2F0ZWdvcnknKSkKICogUHJvZHVjZXM6IG1ldGFkYXRhID8gJ2NhdGVnb3J5JwogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1569,"slug":"json-exists-any","name":"json_exists_any","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expr","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"keys","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"OperatorCondition","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIEpTT05CIGFueSBrZXkgZXhpc3RzIGNvbmRpdGlvbiAoP3wpLgogKgogKiBFeGFtcGxlOiBqc29uX2V4aXN0c19hbnkoY29sKCdtZXRhZGF0YScpLCByYXdfZXhwcigiYXJyYXlbJ2NhdGVnb3J5JywgJ25hbWUnXSIpKQogKiBQcm9kdWNlczogbWV0YWRhdGEgP3wgYXJyYXlbJ2NhdGVnb3J5JywgJ25hbWUnXQogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1581,"slug":"json-exists-all","name":"json_exists_all","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expr","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"keys","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"OperatorCondition","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIEpTT05CIGFsbCBrZXlzIGV4aXN0IGNvbmRpdGlvbiAoPyYpLgogKgogKiBFeGFtcGxlOiBqc29uX2V4aXN0c19hbGwoY29sKCdtZXRhZGF0YScpLCByYXdfZXhwcigiYXJyYXlbJ2NhdGVnb3J5JywgJ25hbWUnXSIpKQogKiBQcm9kdWNlczogbWV0YWRhdGEgPyYgYXJyYXlbJ2NhdGVnb3J5JywgJ25hbWUnXQogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1593,"slug":"array-contains","name":"array_contains","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"left","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"right","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"OperatorCondition","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBhcnJheSBjb250YWlucyBjb25kaXRpb24gKEA+KS4KICoKICogRXhhbXBsZTogYXJyYXlfY29udGFpbnMoY29sKCd0YWdzJyksIHJhd19leHByKCJBUlJBWVsnc2FsZSddIikpCiAqIFByb2R1Y2VzOiB0YWdzIEA+IEFSUkFZWydzYWxlJ10KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1605,"slug":"array-contained-by","name":"array_contained_by","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"left","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"right","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"OperatorCondition","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBhcnJheSBpcyBjb250YWluZWQgYnkgY29uZGl0aW9uICg8QCkuCiAqCiAqIEV4YW1wbGU6IGFycmF5X2NvbnRhaW5lZF9ieShjb2woJ3RhZ3MnKSwgcmF3X2V4cHIoIkFSUkFZWydzYWxlJywgJ2ZlYXR1cmVkJywgJ25ldyddIikpCiAqIFByb2R1Y2VzOiB0YWdzIDxAIEFSUkFZWydzYWxlJywgJ2ZlYXR1cmVkJywgJ25ldyddCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1617,"slug":"array-overlap","name":"array_overlap","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"left","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"right","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"OperatorCondition","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBhcnJheSBvdmVybGFwIGNvbmRpdGlvbiAoJiYpLgogKgogKiBFeGFtcGxlOiBhcnJheV9vdmVybGFwKGNvbCgndGFncycpLCByYXdfZXhwcigiQVJSQVlbJ3NhbGUnLCAnZmVhdHVyZWQnXSIpKQogKiBQcm9kdWNlczogdGFncyAmJiBBUlJBWVsnc2FsZScsICdmZWF0dXJlZCddCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1631,"slug":"regex-match","name":"regex_match","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expr","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"pattern","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"OperatorCondition","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFBPU0lYIHJlZ2V4IG1hdGNoIGNvbmRpdGlvbiAofikuCiAqIENhc2Utc2Vuc2l0aXZlLgogKgogKiBFeGFtcGxlOiByZWdleF9tYXRjaChjb2woJ2VtYWlsJyksIGxpdGVyYWxfc3RyaW5nKCcuKkBnbWFpbFxcLmNvbScpKQogKgogKiBQcm9kdWNlczogZW1haWwgfiAnLipAZ21haWxcLmNvbScKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1645,"slug":"regex-imatch","name":"regex_imatch","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expr","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"pattern","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"OperatorCondition","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFBPU0lYIHJlZ2V4IG1hdGNoIGNvbmRpdGlvbiAofiopLgogKiBDYXNlLWluc2Vuc2l0aXZlLgogKgogKiBFeGFtcGxlOiByZWdleF9pbWF0Y2goY29sKCdlbWFpbCcpLCBsaXRlcmFsX3N0cmluZygnLipAZ21haWxcXC5jb20nKSkKICoKICogUHJvZHVjZXM6IGVtYWlsIH4qICcuKkBnbWFpbFwuY29tJwogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1659,"slug":"not-regex-match","name":"not_regex_match","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expr","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"pattern","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"OperatorCondition","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFBPU0lYIHJlZ2V4IG5vdCBtYXRjaCBjb25kaXRpb24gKCF+KS4KICogQ2FzZS1zZW5zaXRpdmUuCiAqCiAqIEV4YW1wbGU6IG5vdF9yZWdleF9tYXRjaChjb2woJ2VtYWlsJyksIGxpdGVyYWxfc3RyaW5nKCcuKkBzcGFtXFwuY29tJykpCiAqCiAqIFByb2R1Y2VzOiBlbWFpbCAhfiAnLipAc3BhbVwuY29tJwogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1673,"slug":"not-regex-imatch","name":"not_regex_imatch","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expr","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"pattern","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"OperatorCondition","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFBPU0lYIHJlZ2V4IG5vdCBtYXRjaCBjb25kaXRpb24gKCF+KikuCiAqIENhc2UtaW5zZW5zaXRpdmUuCiAqCiAqIEV4YW1wbGU6IG5vdF9yZWdleF9pbWF0Y2goY29sKCdlbWFpbCcpLCBsaXRlcmFsX3N0cmluZygnLipAc3BhbVxcLmNvbScpKQogKgogKiBQcm9kdWNlczogZW1haWwgIX4qICcuKkBzcGFtXC5jb20nCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1685,"slug":"text-search-match","name":"text_search_match","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"document","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"query","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"OperatorCondition","namespace":"Flow\\PostgreSql\\QueryBuilder\\Condition","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGZ1bGwtdGV4dCBzZWFyY2ggbWF0Y2ggY29uZGl0aW9uIChAQCkuCiAqCiAqIEV4YW1wbGU6IHRleHRfc2VhcmNoX21hdGNoKGNvbCgnZG9jdW1lbnQnKSwgcmF3X2V4cHIoInRvX3RzcXVlcnkoJ2VuZ2xpc2gnLCAnaGVsbG8gJiB3b3JsZCcpIikpCiAqIFByb2R1Y2VzOiBkb2N1bWVudCBAQCB0b190c3F1ZXJ5KCdlbmdsaXNoJywgJ2hlbGxvICYgd29ybGQnKQogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1700,"slug":"table","name":"table","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"schema","type":[{"name":"string","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Table","namespace":"Flow\\PostgreSql\\QueryBuilder\\Table","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIHRhYmxlIHJlZmVyZW5jZS4KICoKICogU3VwcG9ydHMgZG90IG5vdGF0aW9uIGZvciBzY2hlbWEtcXVhbGlmaWVkIG5hbWVzOiAicHVibGljLnVzZXJzIiBvciBleHBsaWNpdCBzY2hlbWEgcGFyYW1ldGVyLgogKiBEb3VibGUtcXVvdGVkIGlkZW50aWZpZXJzIHByZXNlcnZlIGRvdHM6ICcibXkudGFibGUiJyBjcmVhdGVzIGEgc2luZ2xlIGlkZW50aWZpZXIuCiAqCiAqIEBwYXJhbSBzdHJpbmcgJG5hbWUgVGFibGUgbmFtZSAobWF5IGluY2x1ZGUgc2NoZW1hIGFzICJzY2hlbWEudGFibGUiKQogKiBAcGFyYW0gbnVsbHxzdHJpbmcgJHNjaGVtYSBTY2hlbWEgbmFtZSAob3B0aW9uYWwsIG92ZXJyaWRlcyBwYXJzZWQgc2NoZW1hKQogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1715,"slug":"derived","name":"derived","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"query","type":[{"name":"SelectFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Select","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"alias","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"DerivedTable","namespace":"Flow\\PostgreSql\\QueryBuilder\\Table","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGRlcml2ZWQgdGFibGUgKHN1YnF1ZXJ5IGluIEZST00gY2xhdXNlKS4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1729,"slug":"lateral","name":"lateral","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"reference","type":[{"name":"TableReference","namespace":"Flow\\PostgreSql\\QueryBuilder\\Table","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Lateral","namespace":"Flow\\PostgreSql\\QueryBuilder\\Table","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIExBVEVSQUwgc3VicXVlcnkuCiAqCiAqIEBwYXJhbSBUYWJsZVJlZmVyZW5jZSAkcmVmZXJlbmNlIFRoZSBzdWJxdWVyeSBvciB0YWJsZSBmdW5jdGlvbiByZWZlcmVuY2UKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1741,"slug":"table-func","name":"table_func","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"function","type":[{"name":"FunctionCall","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"withOrdinality","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"TableFunction","namespace":"Flow\\PostgreSql\\QueryBuilder\\Table","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIHRhYmxlIGZ1bmN0aW9uIHJlZmVyZW5jZS4KICoKICogQHBhcmFtIEZ1bmN0aW9uQ2FsbCAkZnVuY3Rpb24gVGhlIHRhYmxlLXZhbHVlZCBmdW5jdGlvbgogKiBAcGFyYW0gYm9vbCAkd2l0aE9yZGluYWxpdHkgV2hldGhlciB0byBhZGQgV0lUSCBPUkRJTkFMSVRZCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1760,"slug":"values-table","name":"values_table","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"rows","type":[{"name":"RowExpression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"ValuesTable","namespace":"Flow\\PostgreSql\\QueryBuilder\\Table","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFZBTFVFUyBjbGF1c2UgYXMgYSB0YWJsZSByZWZlcmVuY2UuCiAqCiAqIFVzYWdlOgogKiAgIHNlbGVjdCgpLT5mcm9tKAogKiAgICAgICB2YWx1ZXNfdGFibGUoCiAqICAgICAgICAgICByb3dfZXhwcihbbGl0ZXJhbCgxKSwgbGl0ZXJhbCgnQWxpY2UnKV0pLAogKiAgICAgICAgICAgcm93X2V4cHIoW2xpdGVyYWwoMiksIGxpdGVyYWwoJ0JvYicpXSkKICogICAgICAgKS0+YXMoJ3QnLCBbJ2lkJywgJ25hbWUnXSkKICogICApCiAqCiAqIEdlbmVyYXRlczogU0VMRUNUICogRlJPTSAoVkFMVUVTICgxLCAnQWxpY2UnKSwgKDIsICdCb2InKSkgQVMgdChpZCwgbmFtZSkKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1769,"slug":"order-by","name":"order_by","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expr","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"direction","type":[{"name":"SortDirection","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\PostgreSql\\QueryBuilder\\Clause\\SortDirection::..."},{"name":"nulls","type":[{"name":"NullsPosition","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\PostgreSql\\QueryBuilder\\Clause\\NullsPosition::..."}],"return_type":[{"name":"OrderBy","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBPUkRFUiBCWSBpdGVtLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1781,"slug":"asc","name":"asc","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expr","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"nulls","type":[{"name":"NullsPosition","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\PostgreSql\\QueryBuilder\\Clause\\NullsPosition::..."}],"return_type":[{"name":"OrderBy","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBPUkRFUiBCWSBpdGVtIHdpdGggQVNDIGRpcmVjdGlvbi4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1790,"slug":"desc","name":"desc","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expr","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"nulls","type":[{"name":"NullsPosition","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\PostgreSql\\QueryBuilder\\Clause\\NullsPosition::..."}],"return_type":[{"name":"OrderBy","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBPUkRFUiBCWSBpdGVtIHdpdGggREVTQyBkaXJlY3Rpb24uCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1804,"slug":"cte","name":"cte","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"query","type":[{"name":"SelectFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Select","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"columnNames","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"},{"name":"materialization","type":[{"name":"CTEMaterialization","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\PostgreSql\\QueryBuilder\\Clause\\CTEMaterialization::..."},{"name":"recursive","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"CTE","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIENURSAoQ29tbW9uIFRhYmxlIEV4cHJlc3Npb24pLgogKgogKiBAcGFyYW0gc3RyaW5nICRuYW1lIENURSBuYW1lCiAqIEBwYXJhbSBTZWxlY3RGaW5hbFN0ZXAgJHF1ZXJ5IENURSBxdWVyeQogKiBAcGFyYW0gYXJyYXk8c3RyaW5nPiAkY29sdW1uTmFtZXMgQ29sdW1uIGFsaWFzZXMgKG9wdGlvbmFsKQogKiBAcGFyYW0gQ1RFTWF0ZXJpYWxpemF0aW9uICRtYXRlcmlhbGl6YXRpb24gTWF0ZXJpYWxpemF0aW9uIGhpbnQKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1826,"slug":"window-def","name":"window_def","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"partitionBy","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"},{"name":"orderBy","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"},{"name":"frame","type":[{"name":"WindowFrame","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"WindowDefinition","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIHdpbmRvdyBkZWZpbml0aW9uIGZvciBXSU5ET1cgY2xhdXNlLgogKgogKiBAcGFyYW0gc3RyaW5nICRuYW1lIFdpbmRvdyBuYW1lCiAqIEBwYXJhbSBsaXN0PEV4cHJlc3Npb24+ICRwYXJ0aXRpb25CeSBQQVJUSVRJT04gQlkgZXhwcmVzc2lvbnMKICogQHBhcmFtIGxpc3Q8T3JkZXJCeT4gJG9yZGVyQnkgT1JERVIgQlkgaXRlbXMKICogQHBhcmFtIG51bGx8V2luZG93RnJhbWUgJGZyYW1lIFdpbmRvdyBmcmFtZSBzcGVjaWZpY2F0aW9uCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1839,"slug":"window-frame","name":"window_frame","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"mode","type":[{"name":"FrameMode","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"start","type":[{"name":"FrameBound","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"end","type":[{"name":"FrameBound","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"exclusion","type":[{"name":"FrameExclusion","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\PostgreSql\\QueryBuilder\\Clause\\FrameExclusion::..."}],"return_type":[{"name":"WindowFrame","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIHdpbmRvdyBmcmFtZSBzcGVjaWZpY2F0aW9uLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1852,"slug":"frame-current-row","name":"frame_current_row","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"FrameBound","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGZyYW1lIGJvdW5kIGZvciBDVVJSRU5UIFJPVy4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1861,"slug":"frame-unbounded-preceding","name":"frame_unbounded_preceding","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"FrameBound","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGZyYW1lIGJvdW5kIGZvciBVTkJPVU5ERUQgUFJFQ0VESU5HLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1870,"slug":"frame-unbounded-following","name":"frame_unbounded_following","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"FrameBound","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGZyYW1lIGJvdW5kIGZvciBVTkJPVU5ERUQgRk9MTE9XSU5HLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1879,"slug":"frame-preceding","name":"frame_preceding","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"offset","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"FrameBound","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGZyYW1lIGJvdW5kIGZvciBOIFBSRUNFRElORy4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1888,"slug":"frame-following","name":"frame_following","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"offset","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"FrameBound","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGZyYW1lIGJvdW5kIGZvciBOIEZPTExPV0lORy4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1901,"slug":"lock-for","name":"lock_for","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"strength","type":[{"name":"LockStrength","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"tables","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"},{"name":"waitPolicy","type":[{"name":"LockWaitPolicy","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\PostgreSql\\QueryBuilder\\Clause\\LockWaitPolicy::..."}],"return_type":[{"name":"LockingClause","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGxvY2tpbmcgY2xhdXNlIChGT1IgVVBEQVRFLCBGT1IgU0hBUkUsIGV0Yy4pLgogKgogKiBAcGFyYW0gTG9ja1N0cmVuZ3RoICRzdHJlbmd0aCBMb2NrIHN0cmVuZ3RoCiAqIEBwYXJhbSBsaXN0PHN0cmluZz4gJHRhYmxlcyBUYWJsZXMgdG8gbG9jayAoZW1wdHkgZm9yIGFsbCkKICogQHBhcmFtIExvY2tXYWl0UG9saWN5ICR3YWl0UG9saWN5IFdhaXQgcG9saWN5CiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1915,"slug":"for-update","name":"for_update","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"tables","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"LockingClause","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIEZPUiBVUERBVEUgbG9ja2luZyBjbGF1c2UuCiAqCiAqIEBwYXJhbSBsaXN0PHN0cmluZz4gJHRhYmxlcyBUYWJsZXMgdG8gbG9jayAoZW1wdHkgZm9yIGFsbCkKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1926,"slug":"for-share","name":"for_share","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"tables","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"LockingClause","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIEZPUiBTSEFSRSBsb2NraW5nIGNsYXVzZS4KICoKICogQHBhcmFtIGxpc3Q8c3RyaW5nPiAkdGFibGVzIFRhYmxlcyB0byBsb2NrIChlbXB0eSBmb3IgYWxsKQogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1935,"slug":"on-conflict-nothing","name":"on_conflict_nothing","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"target","type":[{"name":"ConflictTarget","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"OnConflictClause","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBPTiBDT05GTElDVCBETyBOT1RISU5HIGNsYXVzZS4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1947,"slug":"on-conflict-update","name":"on_conflict_update","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"target","type":[{"name":"ConflictTarget","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"updates","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"OnConflictClause","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBPTiBDT05GTElDVCBETyBVUERBVEUgY2xhdXNlLgogKgogKiBAcGFyYW0gQ29uZmxpY3RUYXJnZXQgJHRhcmdldCBDb25mbGljdCB0YXJnZXQgKGNvbHVtbnMgb3IgY29uc3RyYWludCkKICogQHBhcmFtIGFycmF5PHN0cmluZywgRXhwcmVzc2lvbj4gJHVwZGF0ZXMgQ29sdW1uIHVwZGF0ZXMKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1958,"slug":"conflict-columns","name":"conflict_columns","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"columns","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ConflictTarget","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGNvbmZsaWN0IHRhcmdldCBmb3IgT04gQ09ORkxJQ1QgKGNvbHVtbnMpLgogKgogKiBAcGFyYW0gbGlzdDxzdHJpbmc+ICRjb2x1bW5zIENvbHVtbnMgdGhhdCBkZWZpbmUgdW5pcXVlbmVzcwogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1967,"slug":"conflict-constraint","name":"conflict_constraint","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ConflictTarget","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGNvbmZsaWN0IHRhcmdldCBmb3IgT04gQ09ORkxJQ1QgT04gQ09OU1RSQUlOVC4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1978,"slug":"returning","name":"returning","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expressions","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"ReturningClause","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFJFVFVSTklORyBjbGF1c2UuCiAqCiAqIEBwYXJhbSBFeHByZXNzaW9uIC4uLiRleHByZXNzaW9ucyBFeHByZXNzaW9ucyB0byByZXR1cm4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1987,"slug":"returning-all","name":"returning_all","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"ReturningClause","namespace":"Flow\\PostgreSql\\QueryBuilder\\Clause","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFJFVFVSTklORyAqIGNsYXVzZS4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":1999,"slug":"begin","name":"begin","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"BeginOptionsStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Transaction","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIEJFR0lOIHRyYW5zYWN0aW9uIGJ1aWxkZXIuCiAqCiAqIEV4YW1wbGU6IGJlZ2luKCktPmlzb2xhdGlvbkxldmVsKElzb2xhdGlvbkxldmVsOjpTRVJJQUxJWkFCTEUpLT5yZWFkT25seSgpCiAqIFByb2R1Y2VzOiBCRUdJTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFIFJFQUQgT05MWQogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2011,"slug":"commit","name":"commit","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"CommitOptionsStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Transaction","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIENPTU1JVCB0cmFuc2FjdGlvbiBidWlsZGVyLgogKgogKiBFeGFtcGxlOiBjb21taXQoKS0+YW5kQ2hhaW4oKQogKiBQcm9kdWNlczogQ09NTUlUIEFORCBDSEFJTgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2023,"slug":"rollback","name":"rollback","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"RollbackOptionsStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Transaction","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFJPTExCQUNLIHRyYW5zYWN0aW9uIGJ1aWxkZXIuCiAqCiAqIEV4YW1wbGU6IHJvbGxiYWNrKCktPnRvU2F2ZXBvaW50KCdteV9zYXZlcG9pbnQnKQogKiBQcm9kdWNlczogUk9MTEJBQ0sgVE8gU0FWRVBPSU5UIG15X3NhdmVwb2ludAogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2035,"slug":"savepoint","name":"savepoint","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"SavepointFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Transaction","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFNBVkVQT0lOVC4KICoKICogRXhhbXBsZTogc2F2ZXBvaW50KCdteV9zYXZlcG9pbnQnKQogKiBQcm9kdWNlczogU0FWRVBPSU5UIG15X3NhdmVwb2ludAogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2047,"slug":"release-savepoint","name":"release_savepoint","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"SavepointFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Transaction","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIFJlbGVhc2UgYSBTQVZFUE9JTlQuCiAqCiAqIEV4YW1wbGU6IHJlbGVhc2Vfc2F2ZXBvaW50KCdteV9zYXZlcG9pbnQnKQogKiBQcm9kdWNlczogUkVMRUFTRSBteV9zYXZlcG9pbnQKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2059,"slug":"set-transaction","name":"set_transaction","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"SetTransactionOptionsStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Transaction","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFNFVCBUUkFOU0FDVElPTiBidWlsZGVyLgogKgogKiBFeGFtcGxlOiBzZXRfdHJhbnNhY3Rpb24oKS0+aXNvbGF0aW9uTGV2ZWwoSXNvbGF0aW9uTGV2ZWw6OlNFUklBTElaQUJMRSktPnJlYWRPbmx5KCkKICogUHJvZHVjZXM6IFNFVCBUUkFOU0FDVElPTiBJU09MQVRJT04gTEVWRUwgU0VSSUFMSVpBQkxFLCBSRUFEIE9OTFkKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2071,"slug":"set-session-transaction","name":"set_session_transaction","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"SetTransactionOptionsStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Transaction","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFNFVCBTRVNTSU9OIENIQVJBQ1RFUklTVElDUyBBUyBUUkFOU0FDVElPTiBidWlsZGVyLgogKgogKiBFeGFtcGxlOiBzZXRfc2Vzc2lvbl90cmFuc2FjdGlvbigpLT5pc29sYXRpb25MZXZlbChJc29sYXRpb25MZXZlbDo6U0VSSUFMSVpBQkxFKQogKiBQcm9kdWNlczogU0VUIFNFU1NJT04gQ0hBUkFDVEVSSVNUSUNTIEFTIFRSQU5TQUNUSU9OIElTT0xBVElPTiBMRVZFTCBTRVJJQUxJWkFCTEUKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2083,"slug":"transaction-snapshot","name":"transaction_snapshot","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"snapshotId","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"SetTransactionFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Transaction","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFNFVCBUUkFOU0FDVElPTiBTTkFQU0hPVCBidWlsZGVyLgogKgogKiBFeGFtcGxlOiB0cmFuc2FjdGlvbl9zbmFwc2hvdCgnMDAwMDAwMDMtMDAwMDAwMUEtMScpCiAqIFByb2R1Y2VzOiBTRVQgVFJBTlNBQ1RJT04gU05BUFNIT1QgJzAwMDAwMDAzLTAwMDAwMDFBLTEnCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2095,"slug":"prepare-transaction","name":"prepare_transaction","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"transactionId","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"PreparedTransactionFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Transaction","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFBSRVBBUkUgVFJBTlNBQ1RJT04gYnVpbGRlci4KICoKICogRXhhbXBsZTogcHJlcGFyZV90cmFuc2FjdGlvbignbXlfdHJhbnNhY3Rpb24nKQogKiBQcm9kdWNlczogUFJFUEFSRSBUUkFOU0FDVElPTiAnbXlfdHJhbnNhY3Rpb24nCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2107,"slug":"commit-prepared","name":"commit_prepared","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"transactionId","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"PreparedTransactionFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Transaction","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIENPTU1JVCBQUkVQQVJFRCBidWlsZGVyLgogKgogKiBFeGFtcGxlOiBjb21taXRfcHJlcGFyZWQoJ215X3RyYW5zYWN0aW9uJykKICogUHJvZHVjZXM6IENPTU1JVCBQUkVQQVJFRCAnbXlfdHJhbnNhY3Rpb24nCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2119,"slug":"rollback-prepared","name":"rollback_prepared","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"transactionId","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"PreparedTransactionFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Transaction","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFJPTExCQUNLIFBSRVBBUkVEIGJ1aWxkZXIuCiAqCiAqIEV4YW1wbGU6IHJvbGxiYWNrX3ByZXBhcmVkKCdteV90cmFuc2FjdGlvbicpCiAqIFByb2R1Y2VzOiBST0xMQkFDSyBQUkVQQVJFRCAnbXlfdHJhbnNhY3Rpb24nCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2142,"slug":"declare-cursor","name":"declare_cursor","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"cursorName","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"query","type":[{"name":"SelectFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Select","is_nullable":false,"is_variadic":false},{"name":"SqlQuery","namespace":"Flow\\PostgreSql\\QueryBuilder","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"DeclareCursorOptionsStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Cursor","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIERlY2xhcmUgYSBzZXJ2ZXItc2lkZSBjdXJzb3IgZm9yIGEgcXVlcnkuCiAqCiAqIEN1cnNvcnMgbXVzdCBiZSBkZWNsYXJlZCB3aXRoaW4gYSB0cmFuc2FjdGlvbiBhbmQgcHJvdmlkZSBtZW1vcnktZWZmaWNpZW50CiAqIGl0ZXJhdGlvbiBvdmVyIGxhcmdlIHJlc3VsdCBzZXRzIHZpYSBGRVRDSCBjb21tYW5kcy4KICoKICogRXhhbXBsZSB3aXRoIHF1ZXJ5IGJ1aWxkZXI6CiAqICAgZGVjbGFyZV9jdXJzb3IoJ215X2N1cnNvcicsIHNlbGVjdChzdGFyKCkpLT5mcm9tKHRhYmxlKCd1c2VycycpKSktPm5vU2Nyb2xsKCkKICogICBQcm9kdWNlczogREVDTEFSRSBteV9jdXJzb3IgTk8gU0NST0xMIENVUlNPUiBGT1IgU0VMRUNUICogRlJPTSB1c2VycwogKgogKiBFeGFtcGxlIHdpdGggcmF3IFNRTDoKICogICBkZWNsYXJlX2N1cnNvcignbXlfY3Vyc29yJywgJ1NFTEVDVCAqIEZST00gdXNlcnMgV0hFUkUgYWN0aXZlID0gdHJ1ZScpLT53aXRoSG9sZCgpCiAqICAgUHJvZHVjZXM6IERFQ0xBUkUgbXlfY3Vyc29yIE5PIFNDUk9MTCBDVVJTT1IgV0lUSCBIT0xEIEZPUiBTRUxFQ1QgKiBGUk9NIHVzZXJzIFdIRVJFIGFjdGl2ZSA9IHRydWUKICoKICogQHBhcmFtIHN0cmluZyAkY3Vyc29yTmFtZSBVbmlxdWUgY3Vyc29yIG5hbWUKICogQHBhcmFtIFNlbGVjdEZpbmFsU3RlcHxTcWxRdWVyeXxzdHJpbmcgJHF1ZXJ5IFF1ZXJ5IHRvIGl0ZXJhdGUgb3ZlcgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2163,"slug":"fetch","name":"fetch","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"cursorName","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"FetchCursorBuilder","namespace":"Flow\\PostgreSql\\QueryBuilder\\Cursor","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEZldGNoIHJvd3MgZnJvbSBhIGN1cnNvci4KICoKICogRXhhbXBsZTogZmV0Y2goJ215X2N1cnNvcicpLT5mb3J3YXJkKDEwMCkKICogUHJvZHVjZXM6IEZFVENIIEZPUldBUkQgMTAwIG15X2N1cnNvcgogKgogKiBFeGFtcGxlOiBmZXRjaCgnbXlfY3Vyc29yJyktPmFsbCgpCiAqIFByb2R1Y2VzOiBGRVRDSCBBTEwgbXlfY3Vyc29yCiAqCiAqIEBwYXJhbSBzdHJpbmcgJGN1cnNvck5hbWUgQ3Vyc29yIHRvIGZldGNoIGZyb20KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2180,"slug":"close-cursor","name":"close_cursor","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"cursorName","type":[{"name":"string","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"CloseCursorFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Cursor","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENsb3NlIGEgY3Vyc29yLgogKgogKiBFeGFtcGxlOiBjbG9zZV9jdXJzb3IoJ215X2N1cnNvcicpCiAqIFByb2R1Y2VzOiBDTE9TRSBteV9jdXJzb3IKICoKICogRXhhbXBsZTogY2xvc2VfY3Vyc29yKCkgLSBjbG9zZXMgYWxsIGN1cnNvcnMKICogUHJvZHVjZXM6IENMT1NFIEFMTAogKgogKiBAcGFyYW0gbnVsbHxzdHJpbmcgJGN1cnNvck5hbWUgQ3Vyc29yIHRvIGNsb3NlLCBvciBudWxsIHRvIGNsb3NlIGFsbAogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2196,"slug":"column","name":"column","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"type","type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ColumnDefinition","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGNvbHVtbiBkZWZpbml0aW9uIGZvciBDUkVBVEUgVEFCTEUuCiAqCiAqIEBwYXJhbSBzdHJpbmcgJG5hbWUgQ29sdW1uIG5hbWUKICogQHBhcmFtIERhdGFUeXBlICR0eXBlIENvbHVtbiBkYXRhIHR5cGUKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2207,"slug":"primary-key","name":"primary_key","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"columns","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"PrimaryKeyConstraint","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Constraint","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFBSSU1BUlkgS0VZIGNvbnN0cmFpbnQuCiAqCiAqIEBwYXJhbSBzdHJpbmcgLi4uJGNvbHVtbnMgQ29sdW1ucyB0aGF0IGZvcm0gdGhlIHByaW1hcnkga2V5CiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2218,"slug":"unique-constraint","name":"unique_constraint","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"columns","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"UniqueConstraint","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Constraint","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFVOSVFVRSBjb25zdHJhaW50LgogKgogKiBAcGFyYW0gc3RyaW5nIC4uLiRjb2x1bW5zIENvbHVtbnMgdGhhdCBtdXN0IGJlIHVuaXF1ZSB0b2dldGhlcgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2231,"slug":"foreign-key","name":"foreign_key","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"columns","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"referenceTable","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"referenceColumns","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"ForeignKeyConstraint","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Constraint","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIEZPUkVJR04gS0VZIGNvbnN0cmFpbnQuCiAqCiAqIEBwYXJhbSBsaXN0PHN0cmluZz4gJGNvbHVtbnMgTG9jYWwgY29sdW1ucwogKiBAcGFyYW0gc3RyaW5nICRyZWZlcmVuY2VUYWJsZSBSZWZlcmVuY2VkIHRhYmxlCiAqIEBwYXJhbSBsaXN0PHN0cmluZz4gJHJlZmVyZW5jZUNvbHVtbnMgUmVmZXJlbmNlZCBjb2x1bW5zIChkZWZhdWx0cyB0byBzYW1lIGFzICRjb2x1bW5zIGlmIGVtcHR5KQogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2242,"slug":"check-constraint","name":"check_constraint","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expression","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"CheckConstraint","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Constraint","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIENIRUNLIGNvbnN0cmFpbnQuCiAqCiAqIEBwYXJhbSBzdHJpbmcgJGV4cHJlc3Npb24gU1FMIGV4cHJlc3Npb24gdGhhdCBtdXN0IGV2YWx1YXRlIHRvIHRydWUKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2273,"slug":"create","name":"create","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"CreateFactory","namespace":"Flow\\PostgreSql\\QueryBuilder\\Factory","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGZhY3RvcnkgZm9yIGJ1aWxkaW5nIENSRUFURSBzdGF0ZW1lbnRzLgogKgogKiBQcm92aWRlcyBhIHVuaWZpZWQgZW50cnkgcG9pbnQgZm9yIGFsbCBDUkVBVEUgb3BlcmF0aW9uczoKICogLSBjcmVhdGUoKS0+dGFibGUoKSAtIENSRUFURSBUQUJMRQogKiAtIGNyZWF0ZSgpLT50YWJsZUFzKCkgLSBDUkVBVEUgVEFCTEUgQVMKICogLSBjcmVhdGUoKS0+aW5kZXgoKSAtIENSRUFURSBJTkRFWAogKiAtIGNyZWF0ZSgpLT52aWV3KCkgLSBDUkVBVEUgVklFVwogKiAtIGNyZWF0ZSgpLT5tYXRlcmlhbGl6ZWRWaWV3KCkgLSBDUkVBVEUgTUFURVJJQUxJWkVEIFZJRVcKICogLSBjcmVhdGUoKS0+c2VxdWVuY2UoKSAtIENSRUFURSBTRVFVRU5DRQogKiAtIGNyZWF0ZSgpLT5zY2hlbWEoKSAtIENSRUFURSBTQ0hFTUEKICogLSBjcmVhdGUoKS0+cm9sZSgpIC0gQ1JFQVRFIFJPTEUKICogLSBjcmVhdGUoKS0+ZnVuY3Rpb24oKSAtIENSRUFURSBGVU5DVElPTgogKiAtIGNyZWF0ZSgpLT5wcm9jZWR1cmUoKSAtIENSRUFURSBQUk9DRURVUkUKICogLSBjcmVhdGUoKS0+dHJpZ2dlcigpIC0gQ1JFQVRFIFRSSUdHRVIKICogLSBjcmVhdGUoKS0+cnVsZSgpIC0gQ1JFQVRFIFJVTEUKICogLSBjcmVhdGUoKS0+ZXh0ZW5zaW9uKCkgLSBDUkVBVEUgRVhURU5TSU9OCiAqIC0gY3JlYXRlKCktPmNvbXBvc2l0ZVR5cGUoKSAtIENSRUFURSBUWVBFIChjb21wb3NpdGUpCiAqIC0gY3JlYXRlKCktPmVudW1UeXBlKCkgLSBDUkVBVEUgVFlQRSAoZW51bSkKICogLSBjcmVhdGUoKS0+cmFuZ2VUeXBlKCkgLSBDUkVBVEUgVFlQRSAocmFuZ2UpCiAqIC0gY3JlYXRlKCktPmRvbWFpbigpIC0gQ1JFQVRFIERPTUFJTgogKgogKiBFeGFtcGxlOiBjcmVhdGUoKS0+dGFibGUoJ3VzZXJzJyktPmNvbHVtbnMoY29sX2RlZignaWQnLCBkYXRhX3R5cGVfc2VyaWFsKCkpKQogKiBFeGFtcGxlOiBjcmVhdGUoKS0+aW5kZXgoJ2lkeF9lbWFpbCcpLT5vbigndXNlcnMnKS0+Y29sdW1ucygnZW1haWwnKQogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2302,"slug":"drop","name":"drop","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"DropFactory","namespace":"Flow\\PostgreSql\\QueryBuilder\\Factory","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGZhY3RvcnkgZm9yIGJ1aWxkaW5nIERST1Agc3RhdGVtZW50cy4KICoKICogUHJvdmlkZXMgYSB1bmlmaWVkIGVudHJ5IHBvaW50IGZvciBhbGwgRFJPUCBvcGVyYXRpb25zOgogKiAtIGRyb3AoKS0+dGFibGUoKSAtIERST1AgVEFCTEUKICogLSBkcm9wKCktPmluZGV4KCkgLSBEUk9QIElOREVYCiAqIC0gZHJvcCgpLT52aWV3KCkgLSBEUk9QIFZJRVcKICogLSBkcm9wKCktPm1hdGVyaWFsaXplZFZpZXcoKSAtIERST1AgTUFURVJJQUxJWkVEIFZJRVcKICogLSBkcm9wKCktPnNlcXVlbmNlKCkgLSBEUk9QIFNFUVVFTkNFCiAqIC0gZHJvcCgpLT5zY2hlbWEoKSAtIERST1AgU0NIRU1BCiAqIC0gZHJvcCgpLT5yb2xlKCkgLSBEUk9QIFJPTEUKICogLSBkcm9wKCktPmZ1bmN0aW9uKCkgLSBEUk9QIEZVTkNUSU9OCiAqIC0gZHJvcCgpLT5wcm9jZWR1cmUoKSAtIERST1AgUFJPQ0VEVVJFCiAqIC0gZHJvcCgpLT50cmlnZ2VyKCkgLSBEUk9QIFRSSUdHRVIKICogLSBkcm9wKCktPnJ1bGUoKSAtIERST1AgUlVMRQogKiAtIGRyb3AoKS0+ZXh0ZW5zaW9uKCkgLSBEUk9QIEVYVEVOU0lPTgogKiAtIGRyb3AoKS0+dHlwZSgpIC0gRFJPUCBUWVBFCiAqIC0gZHJvcCgpLT5kb21haW4oKSAtIERST1AgRE9NQUlOCiAqIC0gZHJvcCgpLT5vd25lZCgpIC0gRFJPUCBPV05FRAogKgogKiBFeGFtcGxlOiBkcm9wKCktPnRhYmxlKCd1c2VycycsICdvcmRlcnMnKS0+aWZFeGlzdHMoKS0+Y2FzY2FkZSgpCiAqIEV4YW1wbGU6IGRyb3AoKS0+aW5kZXgoJ2lkeF9lbWFpbCcpLT5pZkV4aXN0cygpCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2336,"slug":"alter","name":"alter","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"AlterFactory","namespace":"Flow\\PostgreSql\\QueryBuilder\\Factory","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGZhY3RvcnkgZm9yIGJ1aWxkaW5nIEFMVEVSIHN0YXRlbWVudHMuCiAqCiAqIFByb3ZpZGVzIGEgdW5pZmllZCBlbnRyeSBwb2ludCBmb3IgYWxsIEFMVEVSIG9wZXJhdGlvbnM6CiAqIC0gYWx0ZXIoKS0+dGFibGUoKSAtIEFMVEVSIFRBQkxFCiAqIC0gYWx0ZXIoKS0+aW5kZXgoKSAtIEFMVEVSIElOREVYCiAqIC0gYWx0ZXIoKS0+dmlldygpIC0gQUxURVIgVklFVwogKiAtIGFsdGVyKCktPm1hdGVyaWFsaXplZFZpZXcoKSAtIEFMVEVSIE1BVEVSSUFMSVpFRCBWSUVXCiAqIC0gYWx0ZXIoKS0+c2VxdWVuY2UoKSAtIEFMVEVSIFNFUVVFTkNFCiAqIC0gYWx0ZXIoKS0+c2NoZW1hKCkgLSBBTFRFUiBTQ0hFTUEKICogLSBhbHRlcigpLT5yb2xlKCkgLSBBTFRFUiBST0xFCiAqIC0gYWx0ZXIoKS0+ZnVuY3Rpb24oKSAtIEFMVEVSIEZVTkNUSU9OCiAqIC0gYWx0ZXIoKS0+cHJvY2VkdXJlKCkgLSBBTFRFUiBQUk9DRURVUkUKICogLSBhbHRlcigpLT50cmlnZ2VyKCkgLSBBTFRFUiBUUklHR0VSCiAqIC0gYWx0ZXIoKS0+ZXh0ZW5zaW9uKCkgLSBBTFRFUiBFWFRFTlNJT04KICogLSBhbHRlcigpLT5lbnVtVHlwZSgpIC0gQUxURVIgVFlQRSAoZW51bSkKICogLSBhbHRlcigpLT5kb21haW4oKSAtIEFMVEVSIERPTUFJTgogKgogKiBSZW5hbWUgb3BlcmF0aW9ucyBhcmUgYWxzbyB1bmRlciBhbHRlcigpOgogKiAtIGFsdGVyKCktPmluZGV4KCdvbGQnKS0+cmVuYW1lVG8oJ25ldycpCiAqIC0gYWx0ZXIoKS0+dmlldygnb2xkJyktPnJlbmFtZVRvKCduZXcnKQogKiAtIGFsdGVyKCktPnNjaGVtYSgnb2xkJyktPnJlbmFtZVRvKCduZXcnKQogKiAtIGFsdGVyKCktPnJvbGUoJ29sZCcpLT5yZW5hbWVUbygnbmV3JykKICogLSBhbHRlcigpLT50cmlnZ2VyKCdvbGQnKS0+b24oJ3RhYmxlJyktPnJlbmFtZVRvKCduZXcnKQogKgogKiBFeGFtcGxlOiBhbHRlcigpLT50YWJsZSgndXNlcnMnKS0+YWRkQ29sdW1uKGNvbF9kZWYoJ2VtYWlsJywgZGF0YV90eXBlX3RleHQoKSkpCiAqIEV4YW1wbGU6IGFsdGVyKCktPnNlcXVlbmNlKCd1c2VyX2lkX3NlcScpLT5yZXN0YXJ0KDEwMDApCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2347,"slug":"truncate-table","name":"truncate_table","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"tables","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"TruncateFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Truncate","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFRSVU5DQVRFIFRBQkxFIGJ1aWxkZXIuCiAqCiAqIEBwYXJhbSBzdHJpbmcgLi4uJHRhYmxlcyBUYWJsZSBuYW1lcyB0byB0cnVuY2F0ZQogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2365,"slug":"refresh-materialized-view","name":"refresh_materialized_view","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"schema","type":[{"name":"string","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"RefreshMatViewOptionsStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\View\\RefreshMaterializedView","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFJFRlJFU0ggTUFURVJJQUxJWkVEIFZJRVcgYnVpbGRlci4KICoKICogRXhhbXBsZTogcmVmcmVzaF9tYXRlcmlhbGl6ZWRfdmlldygndXNlcl9zdGF0cycpCiAqIFByb2R1Y2VzOiBSRUZSRVNIIE1BVEVSSUFMSVpFRCBWSUVXIHVzZXJfc3RhdHMKICoKICogRXhhbXBsZTogcmVmcmVzaF9tYXRlcmlhbGl6ZWRfdmlldygndXNlcl9zdGF0cycpLT5jb25jdXJyZW50bHkoKS0+d2l0aERhdGEoKQogKiBQcm9kdWNlczogUkVGUkVTSCBNQVRFUklBTElaRUQgVklFVyBDT05DVVJSRU5UTFkgdXNlcl9zdGF0cyBXSVRIIERBVEEKICoKICogQHBhcmFtIHN0cmluZyAkbmFtZSBWaWV3IG5hbWUgKG1heSBpbmNsdWRlIHNjaGVtYSBhcyAic2NoZW1hLnZpZXciKQogKiBAcGFyYW0gbnVsbHxzdHJpbmcgJHNjaGVtYSBTY2hlbWEgbmFtZSAob3B0aW9uYWwsIG92ZXJyaWRlcyBwYXJzZWQgc2NoZW1hKQogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2374,"slug":"ref-action-cascade","name":"ref_action_cascade","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"ReferentialAction","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEdldCBhIENBU0NBREUgcmVmZXJlbnRpYWwgYWN0aW9uLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2383,"slug":"ref-action-restrict","name":"ref_action_restrict","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"ReferentialAction","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEdldCBhIFJFU1RSSUNUIHJlZmVyZW50aWFsIGFjdGlvbi4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2392,"slug":"ref-action-set-null","name":"ref_action_set_null","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"ReferentialAction","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEdldCBhIFNFVCBOVUxMIHJlZmVyZW50aWFsIGFjdGlvbi4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2401,"slug":"ref-action-set-default","name":"ref_action_set_default","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"ReferentialAction","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEdldCBhIFNFVCBERUZBVUxUIHJlZmVyZW50aWFsIGFjdGlvbi4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2410,"slug":"ref-action-no-action","name":"ref_action_no_action","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"ReferentialAction","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEdldCBhIE5PIEFDVElPTiByZWZlcmVudGlhbCBhY3Rpb24uCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2425,"slug":"reindex-index","name":"reindex_index","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ReindexFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Index\\Reindex","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIFN0YXJ0IGJ1aWxkaW5nIGEgUkVJTkRFWCBJTkRFWCBzdGF0ZW1lbnQuCiAqCiAqIFVzZSBjaGFpbmFibGUgbWV0aG9kczogLT5jb25jdXJyZW50bHkoKSwgLT52ZXJib3NlKCksIC0+dGFibGVzcGFjZSgpCiAqCiAqIEV4YW1wbGU6IHJlaW5kZXhfaW5kZXgoJ2lkeF91c2Vyc19lbWFpbCcpLT5jb25jdXJyZW50bHkoKQogKgogKiBAcGFyYW0gc3RyaW5nICRuYW1lIFRoZSBpbmRleCBuYW1lIChtYXkgaW5jbHVkZSBzY2hlbWE6IHNjaGVtYS5pbmRleCkKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2440,"slug":"reindex-table","name":"reindex_table","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ReindexFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Index\\Reindex","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIFN0YXJ0IGJ1aWxkaW5nIGEgUkVJTkRFWCBUQUJMRSBzdGF0ZW1lbnQuCiAqCiAqIFVzZSBjaGFpbmFibGUgbWV0aG9kczogLT5jb25jdXJyZW50bHkoKSwgLT52ZXJib3NlKCksIC0+dGFibGVzcGFjZSgpCiAqCiAqIEV4YW1wbGU6IHJlaW5kZXhfdGFibGUoJ3VzZXJzJyktPmNvbmN1cnJlbnRseSgpCiAqCiAqIEBwYXJhbSBzdHJpbmcgJG5hbWUgVGhlIHRhYmxlIG5hbWUgKG1heSBpbmNsdWRlIHNjaGVtYTogc2NoZW1hLnRhYmxlKQogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2455,"slug":"reindex-schema","name":"reindex_schema","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ReindexFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Index\\Reindex","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIFN0YXJ0IGJ1aWxkaW5nIGEgUkVJTkRFWCBTQ0hFTUEgc3RhdGVtZW50LgogKgogKiBVc2UgY2hhaW5hYmxlIG1ldGhvZHM6IC0+Y29uY3VycmVudGx5KCksIC0+dmVyYm9zZSgpLCAtPnRhYmxlc3BhY2UoKQogKgogKiBFeGFtcGxlOiByZWluZGV4X3NjaGVtYSgncHVibGljJyktPmNvbmN1cnJlbnRseSgpCiAqCiAqIEBwYXJhbSBzdHJpbmcgJG5hbWUgVGhlIHNjaGVtYSBuYW1lCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2470,"slug":"reindex-database","name":"reindex_database","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ReindexFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Index\\Reindex","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIFN0YXJ0IGJ1aWxkaW5nIGEgUkVJTkRFWCBEQVRBQkFTRSBzdGF0ZW1lbnQuCiAqCiAqIFVzZSBjaGFpbmFibGUgbWV0aG9kczogLT5jb25jdXJyZW50bHkoKSwgLT52ZXJib3NlKCksIC0+dGFibGVzcGFjZSgpCiAqCiAqIEV4YW1wbGU6IHJlaW5kZXhfZGF0YWJhc2UoJ215ZGInKS0+Y29uY3VycmVudGx5KCkKICoKICogQHBhcmFtIHN0cmluZyAkbmFtZSBUaGUgZGF0YWJhc2UgbmFtZQogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2485,"slug":"index-col","name":"index_col","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"IndexColumn","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Index","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBpbmRleCBjb2x1bW4gc3BlY2lmaWNhdGlvbi4KICoKICogVXNlIGNoYWluYWJsZSBtZXRob2RzOiAtPmFzYygpLCAtPmRlc2MoKSwgLT5udWxsc0ZpcnN0KCksIC0+bnVsbHNMYXN0KCksIC0+b3BjbGFzcygpLCAtPmNvbGxhdGUoKQogKgogKiBFeGFtcGxlOiBpbmRleF9jb2woJ2VtYWlsJyktPmRlc2MoKS0+bnVsbHNMYXN0KCkKICoKICogQHBhcmFtIHN0cmluZyAkbmFtZSBUaGUgY29sdW1uIG5hbWUKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2500,"slug":"index-expr","name":"index_expr","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"expression","type":[{"name":"Expression","namespace":"Flow\\PostgreSql\\QueryBuilder\\Expression","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"IndexColumn","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Index","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"SCHEMA"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBpbmRleCBjb2x1bW4gc3BlY2lmaWNhdGlvbiBmcm9tIGFuIGV4cHJlc3Npb24uCiAqCiAqIFVzZSBjaGFpbmFibGUgbWV0aG9kczogLT5hc2MoKSwgLT5kZXNjKCksIC0+bnVsbHNGaXJzdCgpLCAtPm51bGxzTGFzdCgpLCAtPm9wY2xhc3MoKSwgLT5jb2xsYXRlKCkKICoKICogRXhhbXBsZTogaW5kZXhfZXhwcihmbl9jYWxsKCdsb3dlcicsIGNvbCgnZW1haWwnKSkpLT5kZXNjKCkKICoKICogQHBhcmFtIEV4cHJlc3Npb24gJGV4cHJlc3Npb24gVGhlIGV4cHJlc3Npb24gdG8gaW5kZXgKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2509,"slug":"index-method-btree","name":"index_method_btree","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"IndexMethod","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Index","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEdldCB0aGUgQlRSRUUgaW5kZXggbWV0aG9kLgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2518,"slug":"index-method-hash","name":"index_method_hash","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"IndexMethod","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Index","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEdldCB0aGUgSEFTSCBpbmRleCBtZXRob2QuCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2527,"slug":"index-method-gist","name":"index_method_gist","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"IndexMethod","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Index","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEdldCB0aGUgR0lTVCBpbmRleCBtZXRob2QuCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2536,"slug":"index-method-spgist","name":"index_method_spgist","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"IndexMethod","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Index","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEdldCB0aGUgU1BHSVNUIGluZGV4IG1ldGhvZC4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2545,"slug":"index-method-gin","name":"index_method_gin","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"IndexMethod","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Index","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEdldCB0aGUgR0lOIGluZGV4IG1ldGhvZC4KICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2554,"slug":"index-method-brin","name":"index_method_brin","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"IndexMethod","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Index","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEdldCB0aGUgQlJJTiBpbmRleCBtZXRob2QuCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2566,"slug":"vacuum","name":"vacuum","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"VacuumFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Utility","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFZBQ1VVTSBidWlsZGVyLgogKgogKiBFeGFtcGxlOiB2YWN1dW0oKS0+dGFibGUoJ3VzZXJzJykKICogUHJvZHVjZXM6IFZBQ1VVTSB1c2VycwogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2578,"slug":"analyze","name":"analyze","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"AnalyzeFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Utility","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBBTkFMWVpFIGJ1aWxkZXIuCiAqCiAqIEV4YW1wbGU6IGFuYWx5emUoKS0+dGFibGUoJ3VzZXJzJykKICogUHJvZHVjZXM6IEFOQUxZWkUgdXNlcnMKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2592,"slug":"explain","name":"explain","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"query","type":[{"name":"SelectFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Select","is_nullable":false,"is_variadic":false},{"name":"InsertBuilder","namespace":"Flow\\PostgreSql\\QueryBuilder\\Insert","is_nullable":false,"is_variadic":false},{"name":"UpdateBuilder","namespace":"Flow\\PostgreSql\\QueryBuilder\\Update","is_nullable":false,"is_variadic":false},{"name":"DeleteBuilder","namespace":"Flow\\PostgreSql\\QueryBuilder\\Delete","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ExplainFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Utility","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBFWFBMQUlOIGJ1aWxkZXIgZm9yIGEgcXVlcnkuCiAqCiAqIEV4YW1wbGU6IGV4cGxhaW4oc2VsZWN0KCktPmZyb20oJ3VzZXJzJykpCiAqIFByb2R1Y2VzOiBFWFBMQUlOIFNFTEVDVCAqIEZST00gdXNlcnMKICoKICogQHBhcmFtIERlbGV0ZUJ1aWxkZXJ8SW5zZXJ0QnVpbGRlcnxTZWxlY3RGaW5hbFN0ZXB8VXBkYXRlQnVpbGRlciAkcXVlcnkgUXVlcnkgdG8gZXhwbGFpbgogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2604,"slug":"lock-table","name":"lock_table","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"tables","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"LockFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Utility","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIExPQ0sgVEFCTEUgYnVpbGRlci4KICoKICogRXhhbXBsZTogbG9ja190YWJsZSgndXNlcnMnLCAnb3JkZXJzJyktPmFjY2Vzc0V4Y2x1c2l2ZSgpCiAqIFByb2R1Y2VzOiBMT0NLIFRBQkxFIHVzZXJzLCBvcmRlcnMgSU4gQUNDRVNTIEVYQ0xVU0lWRSBNT0RFCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2619,"slug":"comment","name":"comment","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"target","type":[{"name":"CommentTarget","namespace":"Flow\\PostgreSql\\QueryBuilder\\Utility","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"CommentFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Utility","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIENPTU1FTlQgT04gYnVpbGRlci4KICoKICogRXhhbXBsZTogY29tbWVudChDb21tZW50VGFyZ2V0OjpUQUJMRSwgJ3VzZXJzJyktPmlzKCdVc2VyIGFjY291bnRzIHRhYmxlJykKICogUHJvZHVjZXM6IENPTU1FTlQgT04gVEFCTEUgdXNlcnMgSVMgJ1VzZXIgYWNjb3VudHMgdGFibGUnCiAqCiAqIEBwYXJhbSBDb21tZW50VGFyZ2V0ICR0YXJnZXQgVGFyZ2V0IHR5cGUgKFRBQkxFLCBDT0xVTU4sIElOREVYLCBldGMuKQogKiBAcGFyYW0gc3RyaW5nICRuYW1lIFRhcmdldCBuYW1lICh1c2UgJ3RhYmxlLmNvbHVtbicgZm9yIENPTFVNTiB0YXJnZXRzKQogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2631,"slug":"cluster","name":"cluster","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"ClusterFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Utility","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIENMVVNURVIgYnVpbGRlci4KICoKICogRXhhbXBsZTogY2x1c3RlcigpLT50YWJsZSgndXNlcnMnKS0+dXNpbmcoJ2lkeF91c2Vyc19wa2V5JykKICogUHJvZHVjZXM6IENMVVNURVIgdXNlcnMgVVNJTkcgaWR4X3VzZXJzX3BrZXkKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2645,"slug":"discard","name":"discard","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"type","type":[{"name":"DiscardType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Utility","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"DiscardFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Utility","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIERJU0NBUkQgYnVpbGRlci4KICoKICogRXhhbXBsZTogZGlzY2FyZChEaXNjYXJkVHlwZTo6QUxMKQogKiBQcm9kdWNlczogRElTQ0FSRCBBTEwKICoKICogQHBhcmFtIERpc2NhcmRUeXBlICR0eXBlIFR5cGUgb2YgcmVzb3VyY2VzIHRvIGRpc2NhcmQgKEFMTCwgUExBTlMsIFNFUVVFTkNFUywgVEVNUCkKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2664,"slug":"grant","name":"grant","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"privileges","type":[{"name":"TablePrivilege","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Grant","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"GrantOnStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Grant","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIEdSQU5UIHByaXZpbGVnZXMgYnVpbGRlci4KICoKICogRXhhbXBsZTogZ3JhbnQoVGFibGVQcml2aWxlZ2U6OlNFTEVDVCktPm9uVGFibGUoJ3VzZXJzJyktPnRvKCdhcHBfdXNlcicpCiAqIFByb2R1Y2VzOiBHUkFOVCBTRUxFQ1QgT04gdXNlcnMgVE8gYXBwX3VzZXIKICoKICogRXhhbXBsZTogZ3JhbnQoVGFibGVQcml2aWxlZ2U6OkFMTCktPm9uQWxsVGFibGVzSW5TY2hlbWEoJ3B1YmxpYycpLT50bygnYWRtaW4nKQogKiBQcm9kdWNlczogR1JBTlQgQUxMIE9OIEFMTCBUQUJMRVMgSU4gU0NIRU1BIHB1YmxpYyBUTyBhZG1pbgogKgogKiBAcGFyYW0gc3RyaW5nfFRhYmxlUHJpdmlsZWdlIC4uLiRwcml2aWxlZ2VzIFRoZSBwcml2aWxlZ2VzIHRvIGdyYW50CiAqCiAqIEByZXR1cm4gR3JhbnRPblN0ZXAgQnVpbGRlciBmb3IgZ3JhbnQgb3B0aW9ucwogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2683,"slug":"grant-role","name":"grant_role","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"roles","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"GrantRoleToStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Grant","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIEdSQU5UIHJvbGUgYnVpbGRlci4KICoKICogRXhhbXBsZTogZ3JhbnRfcm9sZSgnYWRtaW4nKS0+dG8oJ3VzZXIxJykKICogUHJvZHVjZXM6IEdSQU5UIGFkbWluIFRPIHVzZXIxCiAqCiAqIEV4YW1wbGU6IGdyYW50X3JvbGUoJ2FkbWluJywgJ2RldmVsb3BlcicpLT50bygndXNlcjEnKS0+d2l0aEFkbWluT3B0aW9uKCkKICogUHJvZHVjZXM6IEdSQU5UIGFkbWluLCBkZXZlbG9wZXIgVE8gdXNlcjEgV0lUSCBBRE1JTiBPUFRJT04KICoKICogQHBhcmFtIHN0cmluZyAuLi4kcm9sZXMgVGhlIHJvbGVzIHRvIGdyYW50CiAqCiAqIEByZXR1cm4gR3JhbnRSb2xlVG9TdGVwIEJ1aWxkZXIgZm9yIGdyYW50IHJvbGUgb3B0aW9ucwogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2702,"slug":"revoke","name":"revoke","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"privileges","type":[{"name":"TablePrivilege","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Grant","is_nullable":false,"is_variadic":false},{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"RevokeOnStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Grant","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFJFVk9LRSBwcml2aWxlZ2VzIGJ1aWxkZXIuCiAqCiAqIEV4YW1wbGU6IHJldm9rZShUYWJsZVByaXZpbGVnZTo6U0VMRUNUKS0+b25UYWJsZSgndXNlcnMnKS0+ZnJvbSgnYXBwX3VzZXInKQogKiBQcm9kdWNlczogUkVWT0tFIFNFTEVDVCBPTiB1c2VycyBGUk9NIGFwcF91c2VyCiAqCiAqIEV4YW1wbGU6IHJldm9rZShUYWJsZVByaXZpbGVnZTo6QUxMKS0+b25UYWJsZSgndXNlcnMnKS0+ZnJvbSgnYXBwX3VzZXInKS0+Y2FzY2FkZSgpCiAqIFByb2R1Y2VzOiBSRVZPS0UgQUxMIE9OIHVzZXJzIEZST00gYXBwX3VzZXIgQ0FTQ0FERQogKgogKiBAcGFyYW0gc3RyaW5nfFRhYmxlUHJpdmlsZWdlIC4uLiRwcml2aWxlZ2VzIFRoZSBwcml2aWxlZ2VzIHRvIHJldm9rZQogKgogKiBAcmV0dXJuIFJldm9rZU9uU3RlcCBCdWlsZGVyIGZvciByZXZva2Ugb3B0aW9ucwogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2721,"slug":"revoke-role","name":"revoke_role","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"roles","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"RevokeRoleFromStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Grant","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFJFVk9LRSByb2xlIGJ1aWxkZXIuCiAqCiAqIEV4YW1wbGU6IHJldm9rZV9yb2xlKCdhZG1pbicpLT5mcm9tKCd1c2VyMScpCiAqIFByb2R1Y2VzOiBSRVZPS0UgYWRtaW4gRlJPTSB1c2VyMQogKgogKiBFeGFtcGxlOiByZXZva2Vfcm9sZSgnYWRtaW4nKS0+ZnJvbSgndXNlcjEnKS0+Y2FzY2FkZSgpCiAqIFByb2R1Y2VzOiBSRVZPS0UgYWRtaW4gRlJPTSB1c2VyMSBDQVNDQURFCiAqCiAqIEBwYXJhbSBzdHJpbmcgLi4uJHJvbGVzIFRoZSByb2xlcyB0byByZXZva2UKICoKICogQHJldHVybiBSZXZva2VSb2xlRnJvbVN0ZXAgQnVpbGRlciBmb3IgcmV2b2tlIHJvbGUgb3B0aW9ucwogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2737,"slug":"set-role","name":"set_role","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"role","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"SetRoleFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Session","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFNFVCBST0xFIGJ1aWxkZXIuCiAqCiAqIEV4YW1wbGU6IHNldF9yb2xlKCdhZG1pbicpCiAqIFByb2R1Y2VzOiBTRVQgUk9MRSBhZG1pbgogKgogKiBAcGFyYW0gc3RyaW5nICRyb2xlIFRoZSByb2xlIHRvIHNldAogKgogKiBAcmV0dXJuIFNldFJvbGVGaW5hbFN0ZXAgQnVpbGRlciBmb3Igc2V0IHJvbGUKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2751,"slug":"reset-role","name":"reset_role","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"ResetRoleFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Session","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFJFU0VUIFJPTEUgYnVpbGRlci4KICoKICogRXhhbXBsZTogcmVzZXRfcm9sZSgpCiAqIFByb2R1Y2VzOiBSRVNFVCBST0xFCiAqCiAqIEByZXR1cm4gUmVzZXRSb2xlRmluYWxTdGVwIEJ1aWxkZXIgZm9yIHJlc2V0IHJvbGUKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2767,"slug":"reassign-owned","name":"reassign_owned","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"roles","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"ReassignOwnedToStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Ownership","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFJFQVNTSUdOIE9XTkVEIGJ1aWxkZXIuCiAqCiAqIEV4YW1wbGU6IHJlYXNzaWduX293bmVkKCdvbGRfcm9sZScpLT50bygnbmV3X3JvbGUnKQogKiBQcm9kdWNlczogUkVBU1NJR04gT1dORUQgQlkgb2xkX3JvbGUgVE8gbmV3X3JvbGUKICoKICogQHBhcmFtIHN0cmluZyAuLi4kcm9sZXMgVGhlIHJvbGVzIHdob3NlIG93bmVkIG9iamVjdHMgc2hvdWxkIGJlIHJlYXNzaWduZWQKICoKICogQHJldHVybiBSZWFzc2lnbk93bmVkVG9TdGVwIEJ1aWxkZXIgZm9yIHJlYXNzaWduIG93bmVkIG9wdGlvbnMKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2786,"slug":"drop-owned","name":"drop_owned","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"roles","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"DropOwnedFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Ownership","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIERST1AgT1dORUQgYnVpbGRlci4KICoKICogRXhhbXBsZTogZHJvcF9vd25lZCgncm9sZTEnKQogKiBQcm9kdWNlczogRFJPUCBPV05FRCBCWSByb2xlMQogKgogKiBFeGFtcGxlOiBkcm9wX293bmVkKCdyb2xlMScsICdyb2xlMicpLT5jYXNjYWRlKCkKICogUHJvZHVjZXM6IERST1AgT1dORUQgQlkgcm9sZTEsIHJvbGUyIENBU0NBREUKICoKICogQHBhcmFtIHN0cmluZyAuLi4kcm9sZXMgVGhlIHJvbGVzIHdob3NlIG93bmVkIG9iamVjdHMgc2hvdWxkIGJlIGRyb3BwZWQKICoKICogQHJldHVybiBEcm9wT3duZWRGaW5hbFN0ZXAgQnVpbGRlciBmb3IgZHJvcCBvd25lZCBvcHRpb25zCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2804,"slug":"func-arg","name":"func_arg","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"type","type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"FunctionArgument","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZXMgYSBuZXcgZnVuY3Rpb24gYXJndW1lbnQgZm9yIHVzZSBpbiBmdW5jdGlvbi9wcm9jZWR1cmUgZGVmaW5pdGlvbnMuCiAqCiAqIEV4YW1wbGU6IGZ1bmNfYXJnKGRhdGFfdHlwZV9pbnRlZ2VyKCkpCiAqIEV4YW1wbGU6IGZ1bmNfYXJnKGRhdGFfdHlwZV90ZXh0KCkpLT5uYW1lZCgndXNlcm5hbWUnKQogKiBFeGFtcGxlOiBmdW5jX2FyZyhkYXRhX3R5cGVfaW50ZWdlcigpKS0+bmFtZWQoJ2NvdW50JyktPmRlZmF1bHQoJzAnKQogKiBFeGFtcGxlOiBmdW5jX2FyZyhkYXRhX3R5cGVfdGV4dCgpKS0+b3V0KCkKICoKICogQHBhcmFtIERhdGFUeXBlICR0eXBlIFRoZSBQb3N0Z3JlU1FMIGRhdGEgdHlwZSBmb3IgdGhlIGFyZ3VtZW50CiAqCiAqIEByZXR1cm4gRnVuY3Rpb25Bcmd1bWVudCBCdWlsZGVyIGZvciBmdW5jdGlvbiBhcmd1bWVudCBvcHRpb25zCiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2823,"slug":"call","name":"call","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"procedure","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"CallFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZXMgYSBDQUxMIHN0YXRlbWVudCBidWlsZGVyIGZvciBpbnZva2luZyBhIHByb2NlZHVyZS4KICoKICogRXhhbXBsZTogY2FsbCgndXBkYXRlX3N0YXRzJyktPndpdGgoMTIzKQogKiBQcm9kdWNlczogQ0FMTCB1cGRhdGVfc3RhdHMoMTIzKQogKgogKiBFeGFtcGxlOiBjYWxsKCdwcm9jZXNzX2RhdGEnKS0+d2l0aCgndGVzdCcsIDQyLCB0cnVlKQogKiBQcm9kdWNlczogQ0FMTCBwcm9jZXNzX2RhdGEoJ3Rlc3QnLCA0MiwgdHJ1ZSkKICoKICogQHBhcmFtIHN0cmluZyAkcHJvY2VkdXJlIFRoZSBuYW1lIG9mIHRoZSBwcm9jZWR1cmUgdG8gY2FsbAogKgogKiBAcmV0dXJuIENhbGxGaW5hbFN0ZXAgQnVpbGRlciBmb3IgY2FsbCBzdGF0ZW1lbnQgb3B0aW9ucwogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2842,"slug":"do-block","name":"do_block","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"code","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"DoFinalStep","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Function","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZXMgYSBETyBzdGF0ZW1lbnQgYnVpbGRlciBmb3IgZXhlY3V0aW5nIGFuIGFub255bW91cyBjb2RlIGJsb2NrLgogKgogKiBFeGFtcGxlOiBkb19ibG9jaygnQkVHSU4gUkFJU0UgTk9USUNFICQkSGVsbG8gV29ybGQkJDsgRU5EOycpCiAqIFByb2R1Y2VzOiBETyAkJCBCRUdJTiBSQUlTRSBOT1RJQ0UgJCRIZWxsbyBXb3JsZCQkOyBFTkQ7ICQkIExBTkdVQUdFIHBscGdzcWwKICoKICogRXhhbXBsZTogZG9fYmxvY2soJ1NFTEVDVCAxJyktPmxhbmd1YWdlKCdzcWwnKQogKiBQcm9kdWNlczogRE8gJCQgU0VMRUNUIDEgJCQgTEFOR1VBR0Ugc3FsCiAqCiAqIEBwYXJhbSBzdHJpbmcgJGNvZGUgVGhlIGFub255bW91cyBjb2RlIGJsb2NrIHRvIGV4ZWN1dGUKICoKICogQHJldHVybiBEb0ZpbmFsU3RlcCBCdWlsZGVyIGZvciBETyBzdGF0ZW1lbnQgb3B0aW9ucwogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2862,"slug":"type-attr","name":"type_attr","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"type","type":[{"name":"DataType","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"TypeAttribute","namespace":"Flow\\PostgreSql\\QueryBuilder\\Schema\\Type","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZXMgYSB0eXBlIGF0dHJpYnV0ZSBmb3IgY29tcG9zaXRlIHR5cGVzLgogKgogKiBFeGFtcGxlOiB0eXBlX2F0dHIoJ25hbWUnLCBkYXRhX3R5cGVfdGV4dCgpKQogKiBQcm9kdWNlczogbmFtZSB0ZXh0CiAqCiAqIEV4YW1wbGU6IHR5cGVfYXR0cignZGVzY3JpcHRpb24nLCBkYXRhX3R5cGVfdGV4dCgpKS0+Y29sbGF0ZSgnZW5fVVMnKQogKiBQcm9kdWNlczogZGVzY3JpcHRpb24gdGV4dCBDT0xMQVRFICJlbl9VUyIKICoKICogQHBhcmFtIHN0cmluZyAkbmFtZSBUaGUgYXR0cmlidXRlIG5hbWUKICogQHBhcmFtIERhdGFUeXBlICR0eXBlIFRoZSBhdHRyaWJ1dGUgdHlwZQogKgogKiBAcmV0dXJuIFR5cGVBdHRyaWJ1dGUgVHlwZSBhdHRyaWJ1dGUgdmFsdWUgb2JqZWN0CiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2879,"slug":"pgsql-connection","name":"pgsql_connection","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"connectionString","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ConnectionParameters","namespace":"Flow\\PostgreSql\\Client","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBjb25uZWN0aW9uIHBhcmFtZXRlcnMgZnJvbSBhIGNvbm5lY3Rpb24gc3RyaW5nLgogKgogKiBBY2NlcHRzIGxpYnBxLXN0eWxlIGNvbm5lY3Rpb24gc3RyaW5nczoKICogLSBLZXktdmFsdWUgZm9ybWF0OiAiaG9zdD1sb2NhbGhvc3QgcG9ydD01NDMyIGRibmFtZT1teWRiIHVzZXI9bXl1c2VyIHBhc3N3b3JkPXNlY3JldCIKICogLSBVUkkgZm9ybWF0OiAicG9zdGdyZXNxbDovL3VzZXI6cGFzc3dvcmRAbG9jYWxob3N0OjU0MzIvZGJuYW1lIgogKgogKiBAZXhhbXBsZQogKiAkcGFyYW1zID0gcGdzcWxfY29ubmVjdGlvbignaG9zdD1sb2NhbGhvc3QgZGJuYW1lPW15ZGInKTsKICogJHBhcmFtcyA9IHBnc3FsX2Nvbm5lY3Rpb24oJ3Bvc3RncmVzcWw6Ly91c2VyOnBhc3NAbG9jYWxob3N0L215ZGInKTsKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2901,"slug":"pgsql-connection-dsn","name":"pgsql_connection_dsn","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"dsn","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ConnectionParameters","namespace":"Flow\\PostgreSql\\Client","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBjb25uZWN0aW9uIHBhcmFtZXRlcnMgZnJvbSBhIERTTiBzdHJpbmcuCiAqCiAqIFBhcnNlcyBzdGFuZGFyZCBQb3N0Z3JlU1FMIERTTiBmb3JtYXQgY29tbW9ubHkgdXNlZCBpbiBlbnZpcm9ubWVudCB2YXJpYWJsZXMKICogKGUuZy4sIERBVEFCQVNFX1VSTCkuIFN1cHBvcnRzIHBvc3RncmVzOi8vLCBwb3N0Z3Jlc3FsOi8vLCBhbmQgcGdzcWw6Ly8gc2NoZW1lcy4KICoKICogQHBhcmFtIHN0cmluZyAkZHNuIERTTiBzdHJpbmcgaW4gZm9ybWF0OiBwb3N0Z3JlczovL3VzZXI6cGFzc3dvcmRAaG9zdDpwb3J0L2RhdGFiYXNlP29wdGlvbnMKICoKICogQHRocm93cyBDbGllbnRcRHNuUGFyc2VyRXhjZXB0aW9uIElmIHRoZSBEU04gY2Fubm90IGJlIHBhcnNlZAogKgogKiBAZXhhbXBsZQogKiAkcGFyYW1zID0gcGdzcWxfY29ubmVjdGlvbl9kc24oJ3Bvc3RncmVzOi8vbXl1c2VyOnNlY3JldEBsb2NhbGhvc3Q6NTQzMi9teWRiJyk7CiAqICRwYXJhbXMgPSBwZ3NxbF9jb25uZWN0aW9uX2RzbigncG9zdGdyZXNxbDovL3VzZXI6cGFzc0BkYi5leGFtcGxlLmNvbS9hcHA\/c3NsbW9kZT1yZXF1aXJlJyk7CiAqICRwYXJhbXMgPSBwZ3NxbF9jb25uZWN0aW9uX2RzbigncGdzcWw6Ly91c2VyOnBhc3NAbG9jYWxob3N0L215ZGInKTsgLy8gU3ltZm9ueS9Eb2N0cmluZSBmb3JtYXQKICogJHBhcmFtcyA9IHBnc3FsX2Nvbm5lY3Rpb25fZHNuKGdldGVudignREFUQUJBU0VfVVJMJykpOwogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2928,"slug":"pgsql-connection-params","name":"pgsql_connection_params","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"database","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"host","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'localhost'"},{"name":"port","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"5432"},{"name":"user","type":[{"name":"string","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"password","type":[{"name":"string","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"options","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"ConnectionParameters","namespace":"Flow\\PostgreSql\\Client","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBjb25uZWN0aW9uIHBhcmFtZXRlcnMgZnJvbSBpbmRpdmlkdWFsIHZhbHVlcy4KICoKICogQWxsb3dzIHNwZWNpZnlpbmcgY29ubmVjdGlvbiBwYXJhbWV0ZXJzIGluZGl2aWR1YWxseSBmb3IgYmV0dGVyIHR5cGUgc2FmZXR5CiAqIGFuZCBJREUgc3VwcG9ydC4KICoKICogQHBhcmFtIHN0cmluZyAkZGF0YWJhc2UgRGF0YWJhc2UgbmFtZSAocmVxdWlyZWQpCiAqIEBwYXJhbSBzdHJpbmcgJGhvc3QgSG9zdG5hbWUgKGRlZmF1bHQ6IGxvY2FsaG9zdCkKICogQHBhcmFtIGludCAkcG9ydCBQb3J0IG51bWJlciAoZGVmYXVsdDogNTQzMikKICogQHBhcmFtIG51bGx8c3RyaW5nICR1c2VyIFVzZXJuYW1lIChvcHRpb25hbCkKICogQHBhcmFtIG51bGx8c3RyaW5nICRwYXNzd29yZCBQYXNzd29yZCAob3B0aW9uYWwpCiAqIEBwYXJhbSBhcnJheTxzdHJpbmcsIHN0cmluZz4gJG9wdGlvbnMgQWRkaXRpb25hbCBsaWJwcSBvcHRpb25zCiAqCiAqIEBleGFtcGxlCiAqICRwYXJhbXMgPSBwZ3NxbF9jb25uZWN0aW9uX3BhcmFtcygKICogICAgIGRhdGFiYXNlOiAnbXlkYicsCiAqICAgICBob3N0OiAnbG9jYWxob3N0JywKICogICAgIHVzZXI6ICdteXVzZXInLAogKiAgICAgcGFzc3dvcmQ6ICdzZWNyZXQnLAogKiApOwogKi8="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":2969,"slug":"pgsql-client","name":"pgsql_client","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"params","type":[{"name":"ConnectionParameters","namespace":"Flow\\PostgreSql\\Client","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"valueConverters","type":[{"name":"ValueConverters","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"mapper","type":[{"name":"RowMapper","namespace":"Flow\\PostgreSql\\Client","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Client","namespace":"Flow\\PostgreSql\\Client","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFBvc3RncmVTUUwgY2xpZW50IHVzaW5nIGV4dC1wZ3NxbC4KICoKICogVGhlIGNsaWVudCBjb25uZWN0cyBpbW1lZGlhdGVseSBhbmQgaXMgcmVhZHkgdG8gZXhlY3V0ZSBxdWVyaWVzLgogKiBGb3Igb2JqZWN0IG1hcHBpbmcsIHByb3ZpZGUgYSBSb3dNYXBwZXIgKHVzZSBwZ3NxbF9tYXBwZXIoKSBmb3IgdGhlIGRlZmF1bHQpLgogKgogKiBAcGFyYW0gQ2xpZW50XENvbm5lY3Rpb25QYXJhbWV0ZXJzICRwYXJhbXMgQ29ubmVjdGlvbiBwYXJhbWV0ZXJzCiAqIEBwYXJhbSBudWxsfFZhbHVlQ29udmVydGVycyAkdmFsdWVDb252ZXJ0ZXJzIEN1c3RvbSB0eXBlIGNvbnZlcnRlcnMgKG9wdGlvbmFsKQogKiBAcGFyYW0gbnVsbHxDbGllbnRcUm93TWFwcGVyICRtYXBwZXIgUm93IG1hcHBlciBmb3Igb2JqZWN0IGh5ZHJhdGlvbiAob3B0aW9uYWwpCiAqCiAqIEB0aHJvd3MgQ29ubmVjdGlvbkV4Y2VwdGlvbiBJZiBjb25uZWN0aW9uIGZhaWxzCiAqCiAqIEBleGFtcGxlCiAqIC8vIEJhc2ljIGNsaWVudAogKiAkY2xpZW50ID0gcGdzcWxfY2xpZW50KHBnc3FsX2Nvbm5lY3Rpb24oJ2hvc3Q9bG9jYWxob3N0IGRibmFtZT1teWRiJykpOwogKgogKiAvLyBXaXRoIG9iamVjdCBtYXBwaW5nCiAqICRjbGllbnQgPSBwZ3NxbF9jbGllbnQoCiAqICAgICBwZ3NxbF9jb25uZWN0aW9uKCdob3N0PWxvY2FsaG9zdCBkYm5hbWU9bXlkYicpLAogKiAgICAgbWFwcGVyOiBwZ3NxbF9tYXBwZXIoKSwKICogKTsKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3005,"slug":"postgresql-telemetry-options","name":"postgresql_telemetry_options","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"traceQueries","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"true"},{"name":"traceTransactions","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"true"},{"name":"collectMetrics","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"true"},{"name":"logQueries","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"maxQueryLength","type":[{"name":"int","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"1000"},{"name":"includeParameters","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"},{"name":"maxParameters","type":[{"name":"int","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"10"},{"name":"maxParameterLength","type":[{"name":"int","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"100"}],"return_type":[{"name":"PostgreSqlTelemetryOptions","namespace":"Flow\\PostgreSql\\Client\\Telemetry","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSB0ZWxlbWV0cnkgb3B0aW9ucyBmb3IgUG9zdGdyZVNRTCBjbGllbnQgaW5zdHJ1bWVudGF0aW9uLgogKgogKiBDb250cm9scyB3aGljaCB0ZWxlbWV0cnkgc2lnbmFscyAodHJhY2VzLCBtZXRyaWNzLCBsb2dzKSBhcmUgZW5hYmxlZAogKiBhbmQgaG93IHF1ZXJ5IGluZm9ybWF0aW9uIGlzIGNhcHR1cmVkLgogKgogKiBAcGFyYW0gYm9vbCAkdHJhY2VRdWVyaWVzIENyZWF0ZSBzcGFucyBmb3IgcXVlcnkgZXhlY3V0aW9uIChkZWZhdWx0OiB0cnVlKQogKiBAcGFyYW0gYm9vbCAkdHJhY2VUcmFuc2FjdGlvbnMgQ3JlYXRlIHNwYW5zIGZvciB0cmFuc2FjdGlvbnMgKGRlZmF1bHQ6IHRydWUpCiAqIEBwYXJhbSBib29sICRjb2xsZWN0TWV0cmljcyBDb2xsZWN0IGR1cmF0aW9uIGFuZCByb3cgY291bnQgbWV0cmljcyAoZGVmYXVsdDogdHJ1ZSkKICogQHBhcmFtIGJvb2wgJGxvZ1F1ZXJpZXMgTG9nIGV4ZWN1dGVkIHF1ZXJpZXMgKGRlZmF1bHQ6IGZhbHNlKQogKiBAcGFyYW0gbnVsbHxpbnQgJG1heFF1ZXJ5TGVuZ3RoIE1heGltdW0gcXVlcnkgdGV4dCBsZW5ndGggaW4gdGVsZW1ldHJ5IChkZWZhdWx0OiAxMDAwLCBudWxsID0gdW5saW1pdGVkKQogKiBAcGFyYW0gYm9vbCAkaW5jbHVkZVBhcmFtZXRlcnMgSW5jbHVkZSBxdWVyeSBwYXJhbWV0ZXJzIGluIHRlbGVtZXRyeSAoZGVmYXVsdDogZmFsc2UsIHNlY3VyaXR5IGNvbnNpZGVyYXRpb24pCiAqCiAqIEBleGFtcGxlCiAqIC8vIERlZmF1bHQgb3B0aW9ucyAodHJhY2VzIGFuZCBtZXRyaWNzIGVuYWJsZWQpCiAqICRvcHRpb25zID0gcG9zdGdyZXNxbF90ZWxlbWV0cnlfb3B0aW9ucygpOwogKgogKiAvLyBFbmFibGUgcXVlcnkgbG9nZ2luZwogKiAkb3B0aW9ucyA9IHBvc3RncmVzcWxfdGVsZW1ldHJ5X29wdGlvbnMobG9nUXVlcmllczogdHJ1ZSk7CiAqCiAqIC8vIERpc2FibGUgYWxsIGJ1dCBtZXRyaWNzCiAqICRvcHRpb25zID0gcG9zdGdyZXNxbF90ZWxlbWV0cnlfb3B0aW9ucygKICogICAgIHRyYWNlUXVlcmllczogZmFsc2UsCiAqICAgICB0cmFjZVRyYW5zYWN0aW9uczogZmFsc2UsCiAqICAgICBjb2xsZWN0TWV0cmljczogdHJ1ZSwKICogKTsKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3043,"slug":"postgresql-telemetry-config","name":"postgresql_telemetry_config","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"telemetry","type":[{"name":"Telemetry","namespace":"Flow\\Telemetry","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"clock","type":[{"name":"ClockInterface","namespace":"Psr\\Clock","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"options","type":[{"name":"PostgreSqlTelemetryOptions","namespace":"Flow\\PostgreSql\\Client\\Telemetry","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"PostgreSqlTelemetryConfig","namespace":"Flow\\PostgreSql\\Client\\Telemetry","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSB0ZWxlbWV0cnkgY29uZmlndXJhdGlvbiBmb3IgUG9zdGdyZVNRTCBjbGllbnQuCiAqCiAqIEJ1bmRsZXMgdGVsZW1ldHJ5IGluc3RhbmNlLCBjbG9jaywgYW5kIG9wdGlvbnMgbmVlZGVkIHRvIGluc3RydW1lbnQgYSBQb3N0Z3JlU1FMIGNsaWVudC4KICoKICogQHBhcmFtIFRlbGVtZXRyeSAkdGVsZW1ldHJ5IFRoZSB0ZWxlbWV0cnkgaW5zdGFuY2UKICogQHBhcmFtIENsb2NrSW50ZXJmYWNlICRjbG9jayBDbG9jayBmb3IgdGltZXN0YW1wcwogKiBAcGFyYW0gbnVsbHxQb3N0Z3JlU3FsVGVsZW1ldHJ5T3B0aW9ucyAkb3B0aW9ucyBUZWxlbWV0cnkgb3B0aW9ucyAoZGVmYXVsdDogYWxsIGVuYWJsZWQpCiAqCiAqIEBleGFtcGxlCiAqICRjb25maWcgPSBwb3N0Z3Jlc3FsX3RlbGVtZXRyeV9jb25maWcoCiAqICAgICB0ZWxlbWV0cnkocmVzb3VyY2UoWydzZXJ2aWNlLm5hbWUnID0+ICdteS1hcHAnXSkpLAogKiAgICAgbmV3IFN5c3RlbUNsb2NrKCksCiAqICk7CiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3089,"slug":"traceable-postgresql-client","name":"traceable_postgresql_client","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"client","type":[{"name":"Client","namespace":"Flow\\PostgreSql\\Client","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"telemetryConfig","type":[{"name":"PostgreSqlTelemetryConfig","namespace":"Flow\\PostgreSql\\Client\\Telemetry","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"TraceableClient","namespace":"Flow\\PostgreSql\\Client\\Telemetry","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIFdyYXAgYSBQb3N0Z3JlU1FMIGNsaWVudCB3aXRoIHRlbGVtZXRyeSBpbnN0cnVtZW50YXRpb24uCiAqCiAqIFJldHVybnMgYSBkZWNvcmF0b3IgdGhhdCBhZGRzIHNwYW5zLCBtZXRyaWNzLCBhbmQgbG9ncyB0byBhbGwKICogcXVlcnkgYW5kIHRyYW5zYWN0aW9uIG9wZXJhdGlvbnMgZm9sbG93aW5nIE9wZW5UZWxlbWV0cnkgY29udmVudGlvbnMuCiAqCiAqIEBwYXJhbSBDbGllbnRcQ2xpZW50ICRjbGllbnQgVGhlIFBvc3RncmVTUUwgY2xpZW50IHRvIGluc3RydW1lbnQKICogQHBhcmFtIFBvc3RncmVTcWxUZWxlbWV0cnlDb25maWcgJHRlbGVtZXRyeUNvbmZpZyBUZWxlbWV0cnkgY29uZmlndXJhdGlvbgogKgogKiBAZXhhbXBsZQogKiAkY2xpZW50ID0gcGdzcWxfY2xpZW50KHBnc3FsX2Nvbm5lY3Rpb24oJ2hvc3Q9bG9jYWxob3N0IGRibmFtZT1teWRiJykpOwogKgogKiAkdHJhY2VhYmxlQ2xpZW50ID0gdHJhY2VhYmxlX3Bvc3RncmVzcWxfY2xpZW50KAogKiAgICAgJGNsaWVudCwKICogICAgIHBvc3RncmVzcWxfdGVsZW1ldHJ5X2NvbmZpZygKICogICAgICAgICB0ZWxlbWV0cnkocmVzb3VyY2UoWydzZXJ2aWNlLm5hbWUnID0+ICdteS1hcHAnXSkpLAogKiAgICAgICAgIG5ldyBTeXN0ZW1DbG9jaygpLAogKiAgICAgICAgIHBvc3RncmVzcWxfdGVsZW1ldHJ5X29wdGlvbnMoCiAqICAgICAgICAgICAgIHRyYWNlUXVlcmllczogdHJ1ZSwKICogICAgICAgICAgICAgdHJhY2VUcmFuc2FjdGlvbnM6IHRydWUsCiAqICAgICAgICAgICAgIGNvbGxlY3RNZXRyaWNzOiB0cnVlLAogKiAgICAgICAgICAgICBsb2dRdWVyaWVzOiB0cnVlLAogKiAgICAgICAgICAgICBtYXhRdWVyeUxlbmd0aDogNTAwLAogKiAgICAgICAgICksCiAqICAgICApLAogKiApOwogKgogKiAvLyBBbGwgb3BlcmF0aW9ucyBub3cgdHJhY2VkCiAqICR0cmFjZWFibGVDbGllbnQtPnRyYW5zYWN0aW9uKGZ1bmN0aW9uIChDbGllbnQgJGNsaWVudCkgewogKiAgICAgJHVzZXIgPSAkY2xpZW50LT5mZXRjaE9uZSgnU0VMRUNUICogRlJPTSB1c2VycyBXSEVSRSBpZCA9ICQxJywgWzEyM10pOwogKiAgICAgJGNsaWVudC0+ZXhlY3V0ZSgnVVBEQVRFIHVzZXJzIFNFVCBsYXN0X2xvZ2luID0gTk9XKCkgV0hFUkUgaWQgPSAkMScsIFsxMjNdKTsKICogfSk7CiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3124,"slug":"pgsql-mapper","name":"pgsql_mapper","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"ConstructorMapper","namespace":"Flow\\PostgreSql\\Client\\RowMapper","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGRlZmF1bHQgY29uc3RydWN0b3ItYmFzZWQgcm93IG1hcHBlci4KICoKICogTWFwcyBkYXRhYmFzZSByb3dzIGRpcmVjdGx5IHRvIGNvbnN0cnVjdG9yIHBhcmFtZXRlcnMuCiAqIENvbHVtbiBuYW1lcyBtdXN0IG1hdGNoIHBhcmFtZXRlciBuYW1lcyBleGFjdGx5ICgxOjEpLgogKiBVc2UgU1FMIGFsaWFzZXMgaWYgY29sdW1uIG5hbWVzIGRpZmZlciBmcm9tIHBhcmFtZXRlciBuYW1lcy4KICoKICogQGV4YW1wbGUKICogLy8gRFRPIHdoZXJlIGNvbHVtbiBuYW1lcyBtYXRjaCBwYXJhbWV0ZXIgbmFtZXMKICogcmVhZG9ubHkgY2xhc3MgVXNlciB7CiAqICAgICBwdWJsaWMgZnVuY3Rpb24gX19jb25zdHJ1Y3QoCiAqICAgICAgICAgcHVibGljIGludCAkaWQsCiAqICAgICAgICAgcHVibGljIHN0cmluZyAkbmFtZSwKICogICAgICAgICBwdWJsaWMgc3RyaW5nICRlbWFpbCwKICogICAgICkge30KICogfQogKgogKiAvLyBVc2FnZQogKiAkY2xpZW50ID0gcGdzcWxfY2xpZW50KHBnc3FsX2Nvbm5lY3Rpb24oJy4uLicpLCBtYXBwZXI6IHBnc3FsX21hcHBlcigpKTsKICoKICogLy8gRm9yIHNuYWtlX2Nhc2UgY29sdW1ucywgdXNlIFNRTCBhbGlhc2VzCiAqICR1c2VyID0gJGNsaWVudC0+ZmV0Y2hJbnRvKAogKiAgICAgVXNlcjo6Y2xhc3MsCiAqICAgICAnU0VMRUNUIGlkLCB1c2VyX25hbWUgQVMgbmFtZSwgdXNlcl9lbWFpbCBBUyBlbWFpbCBGUk9NIHVzZXJzIFdIRVJFIGlkID0gJDEnLAogKiAgICAgWzFdCiAqICk7CiAqLw=="},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3153,"slug":"typed","name":"typed","namespace":"Flow\\PostgreSql\\DSL","parameters":[{"name":"value","type":[{"name":"mixed","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":false,"is_nullable":true,"is_variadic":false,"default_value":null},{"name":"targetType","type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"TypedValue","namespace":"Flow\\PostgreSql\\Client","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIFdyYXAgYSB2YWx1ZSB3aXRoIGV4cGxpY2l0IFBvc3RncmVTUUwgdHlwZSBpbmZvcm1hdGlvbiBmb3IgcGFyYW1ldGVyIGJpbmRpbmcuCiAqCiAqIFVzZSB3aGVuIGF1dG8tZGV0ZWN0aW9uIGlzbid0IHN1ZmZpY2llbnQgb3Igd2hlbiB5b3UgbmVlZCB0byBzcGVjaWZ5CiAqIHRoZSBleGFjdCBQb3N0Z3JlU1FMIHR5cGUgKHNpbmNlIG9uZSBQSFAgdHlwZSBjYW4gbWFwIHRvIG11bHRpcGxlIFBvc3RncmVTUUwgdHlwZXMpOgogKiAtIGludCBjb3VsZCBiZSBJTlQyLCBJTlQ0LCBvciBJTlQ4CiAqIC0gc3RyaW5nIGNvdWxkIGJlIFRFWFQsIFZBUkNIQVIsIG9yIENIQVIKICogLSBhcnJheSBtdXN0IGFsd2F5cyB1c2UgdHlwZWQoKSBzaW5jZSBhdXRvLWRldGVjdGlvbiBjYW5ub3QgZGV0ZXJtaW5lIGVsZW1lbnQgdHlwZQogKiAtIERhdGVUaW1lSW50ZXJmYWNlIGNvdWxkIGJlIFRJTUVTVEFNUCBvciBUSU1FU1RBTVBUWgogKiAtIEpzb24gY291bGQgYmUgSlNPTiBvciBKU09OQgogKgogKiBAcGFyYW0gbWl4ZWQgJHZhbHVlIFRoZSB2YWx1ZSB0byBiaW5kCiAqIEBwYXJhbSBQb3N0Z3JlU3FsVHlwZSAkdGFyZ2V0VHlwZSBUaGUgUG9zdGdyZVNRTCB0eXBlIHRvIGNvbnZlcnQgdGhlIHZhbHVlIHRvCiAqCiAqIEBleGFtcGxlCiAqICRjbGllbnQtPmZldGNoKAogKiAgICAgJ1NFTEVDVCAqIEZST00gdXNlcnMgV0hFUkUgaWQgPSAkMSBBTkQgdGFncyA9ICQyJywKICogICAgIFsKICogICAgICAgICB0eXBlZCgnNTUwZTg0MDAtZTI5Yi00MWQ0LWE3MTYtNDQ2NjU1NDQwMDAwJywgUG9zdGdyZVNxbFR5cGU6OlVVSUQpLAogKiAgICAgICAgIHR5cGVkKFsndGFnMScsICd0YWcyJ10sIFBvc3RncmVTcWxUeXBlOjpURVhUX0FSUkFZKSwKICogICAgIF0KICogKTsKICov"},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3161,"slug":"pgsql-type-text","name":"pgsql_type_text","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3167,"slug":"pgsql-type-varchar","name":"pgsql_type_varchar","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3173,"slug":"pgsql-type-char","name":"pgsql_type_char","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3179,"slug":"pgsql-type-bpchar","name":"pgsql_type_bpchar","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3185,"slug":"pgsql-type-int2","name":"pgsql_type_int2","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3191,"slug":"pgsql-type-smallint","name":"pgsql_type_smallint","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3197,"slug":"pgsql-type-int4","name":"pgsql_type_int4","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3203,"slug":"pgsql-type-integer","name":"pgsql_type_integer","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3209,"slug":"pgsql-type-int8","name":"pgsql_type_int8","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3215,"slug":"pgsql-type-bigint","name":"pgsql_type_bigint","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3221,"slug":"pgsql-type-float4","name":"pgsql_type_float4","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3227,"slug":"pgsql-type-real","name":"pgsql_type_real","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3233,"slug":"pgsql-type-float8","name":"pgsql_type_float8","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3239,"slug":"pgsql-type-double","name":"pgsql_type_double","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3245,"slug":"pgsql-type-numeric","name":"pgsql_type_numeric","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3251,"slug":"pgsql-type-money","name":"pgsql_type_money","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3257,"slug":"pgsql-type-bool","name":"pgsql_type_bool","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3263,"slug":"pgsql-type-boolean","name":"pgsql_type_boolean","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3269,"slug":"pgsql-type-bytea","name":"pgsql_type_bytea","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3275,"slug":"pgsql-type-bit","name":"pgsql_type_bit","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3281,"slug":"pgsql-type-varbit","name":"pgsql_type_varbit","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3287,"slug":"pgsql-type-date","name":"pgsql_type_date","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3293,"slug":"pgsql-type-time","name":"pgsql_type_time","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3299,"slug":"pgsql-type-timetz","name":"pgsql_type_timetz","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3305,"slug":"pgsql-type-timestamp","name":"pgsql_type_timestamp","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3311,"slug":"pgsql-type-timestamptz","name":"pgsql_type_timestamptz","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3317,"slug":"pgsql-type-interval","name":"pgsql_type_interval","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3323,"slug":"pgsql-type-json","name":"pgsql_type_json","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3329,"slug":"pgsql-type-jsonb","name":"pgsql_type_jsonb","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3335,"slug":"pgsql-type-uuid","name":"pgsql_type_uuid","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3341,"slug":"pgsql-type-inet","name":"pgsql_type_inet","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3347,"slug":"pgsql-type-cidr","name":"pgsql_type_cidr","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3353,"slug":"pgsql-type-macaddr","name":"pgsql_type_macaddr","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3359,"slug":"pgsql-type-macaddr8","name":"pgsql_type_macaddr8","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3365,"slug":"pgsql-type-xml","name":"pgsql_type_xml","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3371,"slug":"pgsql-type-oid","name":"pgsql_type_oid","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3377,"slug":"pgsql-type-text-array","name":"pgsql_type_text_array","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3383,"slug":"pgsql-type-varchar-array","name":"pgsql_type_varchar_array","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3389,"slug":"pgsql-type-int2-array","name":"pgsql_type_int2_array","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3395,"slug":"pgsql-type-int4-array","name":"pgsql_type_int4_array","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3401,"slug":"pgsql-type-int8-array","name":"pgsql_type_int8_array","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3407,"slug":"pgsql-type-float4-array","name":"pgsql_type_float4_array","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3413,"slug":"pgsql-type-float8-array","name":"pgsql_type_float8_array","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3419,"slug":"pgsql-type-bool-array","name":"pgsql_type_bool_array","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3425,"slug":"pgsql-type-uuid-array","name":"pgsql_type_uuid_array","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3431,"slug":"pgsql-type-json-array","name":"pgsql_type_json_array","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/postgresql\/src\/Flow\/PostgreSql\/DSL\/functions.php","start_line_in_file":3437,"slug":"pgsql-type-jsonb-array","name":"pgsql_type_jsonb_array","namespace":"Flow\\PostgreSql\\DSL","parameters":[],"return_type":[{"name":"PostgreSqlType","namespace":"Flow\\PostgreSql\\Client\\Types","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PG_QUERY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":39,"slug":"trace-id","name":"trace_id","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"hex","type":[{"name":"string","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"TraceId","namespace":"Flow\\Telemetry\\Context","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFRyYWNlSWQuCiAqCiAqIElmIGEgaGV4IHN0cmluZyBpcyBwcm92aWRlZCwgY3JlYXRlcyBhIFRyYWNlSWQgZnJvbSBpdC4KICogT3RoZXJ3aXNlLCBnZW5lcmF0ZXMgYSBuZXcgcmFuZG9tIFRyYWNlSWQuCiAqCiAqIEBwYXJhbSBudWxsfHN0cmluZyAkaGV4IE9wdGlvbmFsIDMyLWNoYXJhY3RlciBoZXhhZGVjaW1hbCBzdHJpbmcKICoKICogQHRocm93cyBcSW52YWxpZEFyZ3VtZW50RXhjZXB0aW9uIGlmIHRoZSBoZXggc3RyaW5nIGlzIGludmFsaWQKICov"},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":59,"slug":"span-id","name":"span_id","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"hex","type":[{"name":"string","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"SpanId","namespace":"Flow\\Telemetry\\Context","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFNwYW5JZC4KICoKICogSWYgYSBoZXggc3RyaW5nIGlzIHByb3ZpZGVkLCBjcmVhdGVzIGEgU3BhbklkIGZyb20gaXQuCiAqIE90aGVyd2lzZSwgZ2VuZXJhdGVzIGEgbmV3IHJhbmRvbSBTcGFuSWQuCiAqCiAqIEBwYXJhbSBudWxsfHN0cmluZyAkaGV4IE9wdGlvbmFsIDE2LWNoYXJhY3RlciBoZXhhZGVjaW1hbCBzdHJpbmcKICoKICogQHRocm93cyBcSW52YWxpZEFyZ3VtZW50RXhjZXB0aW9uIGlmIHRoZSBoZXggc3RyaW5nIGlzIGludmFsaWQKICov"},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":74,"slug":"baggage","name":"baggage","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"entries","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"Baggage","namespace":"Flow\\Telemetry\\Context","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIEJhZ2dhZ2UuCiAqCiAqIEBwYXJhbSBhcnJheTxzdHJpbmcsIHN0cmluZz4gJGVudHJpZXMgSW5pdGlhbCBrZXktdmFsdWUgZW50cmllcwogKi8="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":89,"slug":"context","name":"context","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"traceId","type":[{"name":"TraceId","namespace":"Flow\\Telemetry\\Context","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"baggage","type":[{"name":"Baggage","namespace":"Flow\\Telemetry\\Context","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Context","namespace":"Flow\\Telemetry\\Context","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIENvbnRleHQuCiAqCiAqIElmIG5vIFRyYWNlSWQgaXMgcHJvdmlkZWQsIGdlbmVyYXRlcyBhIG5ldyBvbmUuCiAqIElmIG5vIEJhZ2dhZ2UgaXMgcHJvdmlkZWQsIGNyZWF0ZXMgYW4gZW1wdHkgb25lLgogKgogKiBAcGFyYW0gbnVsbHxUcmFjZUlkICR0cmFjZUlkIE9wdGlvbmFsIFRyYWNlSWQgdG8gdXNlCiAqIEBwYXJhbSBudWxsfEJhZ2dhZ2UgJGJhZ2dhZ2UgT3B0aW9uYWwgQmFnZ2FnZSB0byB1c2UKICov"},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":106,"slug":"memory-context-storage","name":"memory_context_storage","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"context","type":[{"name":"Context","namespace":"Flow\\Telemetry\\Context","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"MemoryContextStorage","namespace":"Flow\\Telemetry\\Context","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIE1lbW9yeUNvbnRleHRTdG9yYWdlLgogKgogKiBJbi1tZW1vcnkgY29udGV4dCBzdG9yYWdlIGZvciBzdG9yaW5nIGFuZCByZXRyaWV2aW5nIHRoZSBjdXJyZW50IGNvbnRleHQuCiAqIEEgc2luZ2xlIGluc3RhbmNlIHNob3VsZCBiZSBzaGFyZWQgYWNyb3NzIGFsbCBwcm92aWRlcnMgd2l0aGluIGEgcmVxdWVzdCBsaWZlY3ljbGUuCiAqCiAqIEBwYXJhbSBudWxsfENvbnRleHQgJGNvbnRleHQgT3B0aW9uYWwgaW5pdGlhbCBjb250ZXh0CiAqLw=="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":117,"slug":"resource","name":"resource","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"attributes","type":[{"name":"Attributes","namespace":"Flow\\Telemetry","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"Resource","namespace":"Flow\\Telemetry","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFJlc291cmNlLgogKgogKiBAcGFyYW0gYXJyYXk8c3RyaW5nLCBhcnJheTxib29sfGZsb2F0fGludHxzdHJpbmc+fGJvb2x8ZmxvYXR8aW50fHN0cmluZz58QXR0cmlidXRlcyAkYXR0cmlidXRlcyBSZXNvdXJjZSBhdHRyaWJ1dGVzCiAqLw=="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":130,"slug":"span-context","name":"span_context","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"traceId","type":[{"name":"TraceId","namespace":"Flow\\Telemetry\\Context","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"spanId","type":[{"name":"SpanId","namespace":"Flow\\Telemetry\\Context","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"parentSpanId","type":[{"name":"SpanId","namespace":"Flow\\Telemetry\\Context","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"SpanContext","namespace":"Flow\\Telemetry\\Tracer","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFNwYW5Db250ZXh0LgogKgogKiBAcGFyYW0gVHJhY2VJZCAkdHJhY2VJZCBUaGUgdHJhY2UgSUQKICogQHBhcmFtIFNwYW5JZCAkc3BhbklkIFRoZSBzcGFuIElECiAqIEBwYXJhbSBudWxsfFNwYW5JZCAkcGFyZW50U3BhbklkIE9wdGlvbmFsIHBhcmVudCBzcGFuIElECiAqLw=="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":143,"slug":"span-event","name":"span_event","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"timestamp","type":[{"name":"DateTimeImmutable","namespace":"","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"attributes","type":[{"name":"Attributes","namespace":"Flow\\Telemetry","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"GenericEvent","namespace":"Flow\\Telemetry\\Tracer","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFNwYW5FdmVudCAoR2VuZXJpY0V2ZW50KSB3aXRoIGFuIGV4cGxpY2l0IHRpbWVzdGFtcC4KICoKICogQHBhcmFtIHN0cmluZyAkbmFtZSBFdmVudCBuYW1lCiAqIEBwYXJhbSBcRGF0ZVRpbWVJbW11dGFibGUgJHRpbWVzdGFtcCBFdmVudCB0aW1lc3RhbXAKICogQHBhcmFtIGFycmF5PHN0cmluZywgYXJyYXk8Ym9vbHxmbG9hdHxpbnR8c3RyaW5nPnxib29sfGZsb2F0fGludHxzdHJpbmc+fEF0dHJpYnV0ZXMgJGF0dHJpYnV0ZXMgRXZlbnQgYXR0cmlidXRlcwogKi8="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":155,"slug":"span-link","name":"span_link","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"context","type":[{"name":"SpanContext","namespace":"Flow\\Telemetry\\Tracer","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"attributes","type":[{"name":"Attributes","namespace":"Flow\\Telemetry","is_nullable":false,"is_variadic":false},{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"SpanLink","namespace":"Flow\\Telemetry\\Tracer","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFNwYW5MaW5rLgogKgogKiBAcGFyYW0gU3BhbkNvbnRleHQgJGNvbnRleHQgVGhlIGxpbmtlZCBzcGFuIGNvbnRleHQKICogQHBhcmFtIGFycmF5PHN0cmluZywgYXJyYXk8Ym9vbHxmbG9hdHxpbnR8c3RyaW5nPnxib29sfGZsb2F0fGludHxzdHJpbmc+fEF0dHJpYnV0ZXMgJGF0dHJpYnV0ZXMgTGluayBhdHRyaWJ1dGVzCiAqLw=="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":174,"slug":"span-limits","name":"span_limits","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"attributeCountLimit","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"128"},{"name":"eventCountLimit","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"128"},{"name":"linkCountLimit","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"128"},{"name":"attributePerEventCountLimit","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"128"},{"name":"attributePerLinkCountLimit","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"128"},{"name":"attributeValueLengthLimit","type":[{"name":"int","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"SpanLimits","namespace":"Flow\\Telemetry\\Tracer","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBTcGFuTGltaXRzIGNvbmZpZ3VyYXRpb24uCiAqCiAqIFNwYW5MaW1pdHMgY29udHJvbHMgdGhlIG1heGltdW0gYW1vdW50IG9mIGRhdGEgYSBzcGFuIGNhbiBjb2xsZWN0LAogKiBwcmV2ZW50aW5nIHVuYm91bmRlZCBtZW1vcnkgZ3Jvd3RoIGFuZCBlbnN1cmluZyByZWFzb25hYmxlIHNwYW4gc2l6ZXMuCiAqCiAqIEBwYXJhbSBpbnQgJGF0dHJpYnV0ZUNvdW50TGltaXQgTWF4aW11bSBudW1iZXIgb2YgYXR0cmlidXRlcyBwZXIgc3BhbgogKiBAcGFyYW0gaW50ICRldmVudENvdW50TGltaXQgTWF4aW11bSBudW1iZXIgb2YgZXZlbnRzIHBlciBzcGFuCiAqIEBwYXJhbSBpbnQgJGxpbmtDb3VudExpbWl0IE1heGltdW0gbnVtYmVyIG9mIGxpbmtzIHBlciBzcGFuCiAqIEBwYXJhbSBpbnQgJGF0dHJpYnV0ZVBlckV2ZW50Q291bnRMaW1pdCBNYXhpbXVtIG51bWJlciBvZiBhdHRyaWJ1dGVzIHBlciBldmVudAogKiBAcGFyYW0gaW50ICRhdHRyaWJ1dGVQZXJMaW5rQ291bnRMaW1pdCBNYXhpbXVtIG51bWJlciBvZiBhdHRyaWJ1dGVzIHBlciBsaW5rCiAqIEBwYXJhbSBudWxsfGludCAkYXR0cmlidXRlVmFsdWVMZW5ndGhMaW1pdCBNYXhpbXVtIGxlbmd0aCBmb3Igc3RyaW5nIGF0dHJpYnV0ZSB2YWx1ZXMgKG51bGwgPSB1bmxpbWl0ZWQpCiAqLw=="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":202,"slug":"log-record-limits","name":"log_record_limits","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"attributeCountLimit","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"128"},{"name":"attributeValueLengthLimit","type":[{"name":"int","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"LogRecordLimits","namespace":"Flow\\Telemetry\\Logger","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBMb2dSZWNvcmRMaW1pdHMgY29uZmlndXJhdGlvbi4KICoKICogTG9nUmVjb3JkTGltaXRzIGNvbnRyb2xzIHRoZSBtYXhpbXVtIGFtb3VudCBvZiBkYXRhIGEgbG9nIHJlY29yZCBjYW4gY29sbGVjdCwKICogcHJldmVudGluZyB1bmJvdW5kZWQgbWVtb3J5IGdyb3d0aCBhbmQgZW5zdXJpbmcgcmVhc29uYWJsZSBsb2cgcmVjb3JkIHNpemVzLgogKgogKiBAcGFyYW0gaW50ICRhdHRyaWJ1dGVDb3VudExpbWl0IE1heGltdW0gbnVtYmVyIG9mIGF0dHJpYnV0ZXMgcGVyIGxvZyByZWNvcmQKICogQHBhcmFtIG51bGx8aW50ICRhdHRyaWJ1dGVWYWx1ZUxlbmd0aExpbWl0IE1heGltdW0gbGVuZ3RoIGZvciBzdHJpbmcgYXR0cmlidXRlIHZhbHVlcyAobnVsbCA9IHVubGltaXRlZCkKICov"},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":227,"slug":"metric-limits","name":"metric_limits","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"cardinalityLimit","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"2000"}],"return_type":[{"name":"MetricLimits","namespace":"Flow\\Telemetry\\Meter","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBNZXRyaWNMaW1pdHMgY29uZmlndXJhdGlvbi4KICoKICogTWV0cmljTGltaXRzIGNvbnRyb2xzIHRoZSBtYXhpbXVtIGNhcmRpbmFsaXR5ICh1bmlxdWUgYXR0cmlidXRlIGNvbWJpbmF0aW9ucykKICogcGVyIG1ldHJpYyBpbnN0cnVtZW50LCBwcmV2ZW50aW5nIG1lbW9yeSBleGhhdXN0aW9uIGZyb20gaGlnaC1jYXJkaW5hbGl0eSBhdHRyaWJ1dGVzLgogKgogKiBXaGVuIHRoZSBjYXJkaW5hbGl0eSBsaW1pdCBpcyBleGNlZWRlZCwgbmV3IGF0dHJpYnV0ZSBjb21iaW5hdGlvbnMgYXJlIGFnZ3JlZ2F0ZWQKICogaW50byBhbiBvdmVyZmxvdyBkYXRhIHBvaW50IHdpdGggYG90ZWwubWV0cmljLm92ZXJmbG93OiB0cnVlYCBhdHRyaWJ1dGUuCiAqCiAqIE5vdGU6IFVubGlrZSBzcGFucyBhbmQgbG9ncywgbWV0cmljcyBhcmUgRVhFTVBUIGZyb20gYXR0cmlidXRlIGNvdW50IGFuZCB2YWx1ZQogKiBsZW5ndGggbGltaXRzIHBlciB0aGUgT3BlblRlbGVtZXRyeSBzcGVjaWZpY2F0aW9uLiBPbmx5IGNhcmRpbmFsaXR5IGlzIGxpbWl0ZWQuCiAqCiAqIEBwYXJhbSBpbnQgJGNhcmRpbmFsaXR5TGltaXQgTWF4aW11bSBudW1iZXIgb2YgdW5pcXVlIGF0dHJpYnV0ZSBjb21iaW5hdGlvbnMgcGVyIGluc3RydW1lbnQKICov"},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":242,"slug":"void-span-processor","name":"void_span_processor","namespace":"Flow\\Telemetry\\DSL","parameters":[],"return_type":[{"name":"VoidSpanProcessor","namespace":"Flow\\Telemetry\\Provider\\Void","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFZvaWRTcGFuUHJvY2Vzc29yLgogKgogKiBOby1vcCBzcGFuIHByb2Nlc3NvciB0aGF0IGRpc2NhcmRzIGFsbCBkYXRhLgogKiBVc2UgdGhpcyB3aGVuIHRyYWNpbmcgaXMgZGlzYWJsZWQgdG8gbWluaW1pemUgb3ZlcmhlYWQuCiAqLw=="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":254,"slug":"void-metric-processor","name":"void_metric_processor","namespace":"Flow\\Telemetry\\DSL","parameters":[],"return_type":[{"name":"VoidMetricProcessor","namespace":"Flow\\Telemetry\\Provider\\Void","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFZvaWRNZXRyaWNQcm9jZXNzb3IuCiAqCiAqIE5vLW9wIG1ldHJpYyBwcm9jZXNzb3IgdGhhdCBkaXNjYXJkcyBhbGwgZGF0YS4KICogVXNlIHRoaXMgd2hlbiBtZXRyaWNzIGNvbGxlY3Rpb24gaXMgZGlzYWJsZWQgdG8gbWluaW1pemUgb3ZlcmhlYWQuCiAqLw=="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":266,"slug":"void-log-processor","name":"void_log_processor","namespace":"Flow\\Telemetry\\DSL","parameters":[],"return_type":[{"name":"VoidLogProcessor","namespace":"Flow\\Telemetry\\Provider\\Void","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFZvaWRMb2dQcm9jZXNzb3IuCiAqCiAqIE5vLW9wIGxvZyBwcm9jZXNzb3IgdGhhdCBkaXNjYXJkcyBhbGwgZGF0YS4KICogVXNlIHRoaXMgd2hlbiBsb2dnaW5nIGlzIGRpc2FibGVkIHRvIG1pbmltaXplIG92ZXJoZWFkLgogKi8="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":278,"slug":"void-span-exporter","name":"void_span_exporter","namespace":"Flow\\Telemetry\\DSL","parameters":[],"return_type":[{"name":"VoidSpanExporter","namespace":"Flow\\Telemetry\\Provider\\Void","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFZvaWRTcGFuRXhwb3J0ZXIuCiAqCiAqIE5vLW9wIHNwYW4gZXhwb3J0ZXIgdGhhdCBkaXNjYXJkcyBhbGwgZGF0YS4KICogVXNlIHRoaXMgd2hlbiB0ZWxlbWV0cnkgZXhwb3J0IGlzIGRpc2FibGVkIHRvIG1pbmltaXplIG92ZXJoZWFkLgogKi8="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":290,"slug":"void-metric-exporter","name":"void_metric_exporter","namespace":"Flow\\Telemetry\\DSL","parameters":[],"return_type":[{"name":"VoidMetricExporter","namespace":"Flow\\Telemetry\\Provider\\Void","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFZvaWRNZXRyaWNFeHBvcnRlci4KICoKICogTm8tb3AgbWV0cmljIGV4cG9ydGVyIHRoYXQgZGlzY2FyZHMgYWxsIGRhdGEuCiAqIFVzZSB0aGlzIHdoZW4gdGVsZW1ldHJ5IGV4cG9ydCBpcyBkaXNhYmxlZCB0byBtaW5pbWl6ZSBvdmVyaGVhZC4KICov"},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":302,"slug":"void-log-exporter","name":"void_log_exporter","namespace":"Flow\\Telemetry\\DSL","parameters":[],"return_type":[{"name":"VoidLogExporter","namespace":"Flow\\Telemetry\\Provider\\Void","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFZvaWRMb2dFeHBvcnRlci4KICoKICogTm8tb3AgbG9nIGV4cG9ydGVyIHRoYXQgZGlzY2FyZHMgYWxsIGRhdGEuCiAqIFVzZSB0aGlzIHdoZW4gdGVsZW1ldHJ5IGV4cG9ydCBpcyBkaXNhYmxlZCB0byBtaW5pbWl6ZSBvdmVyaGVhZC4KICov"},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":315,"slug":"memory-span-exporter","name":"memory_span_exporter","namespace":"Flow\\Telemetry\\DSL","parameters":[],"return_type":[{"name":"MemorySpanExporter","namespace":"Flow\\Telemetry\\Provider\\Memory","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIE1lbW9yeVNwYW5FeHBvcnRlci4KICoKICogU3BhbiBleHBvcnRlciB0aGF0IHN0b3JlcyBkYXRhIGluIG1lbW9yeS4KICogUHJvdmlkZXMgZGlyZWN0IGdldHRlciBhY2Nlc3MgdG8gZXhwb3J0ZWQgc3BhbnMuCiAqIFVzZWZ1bCBmb3IgdGVzdGluZyBhbmQgaW5zcGVjdGlvbiB3aXRob3V0IHNlcmlhbGl6YXRpb24uCiAqLw=="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":328,"slug":"memory-metric-exporter","name":"memory_metric_exporter","namespace":"Flow\\Telemetry\\DSL","parameters":[],"return_type":[{"name":"MemoryMetricExporter","namespace":"Flow\\Telemetry\\Provider\\Memory","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIE1lbW9yeU1ldHJpY0V4cG9ydGVyLgogKgogKiBNZXRyaWMgZXhwb3J0ZXIgdGhhdCBzdG9yZXMgZGF0YSBpbiBtZW1vcnkuCiAqIFByb3ZpZGVzIGRpcmVjdCBnZXR0ZXIgYWNjZXNzIHRvIGV4cG9ydGVkIG1ldHJpY3MuCiAqIFVzZWZ1bCBmb3IgdGVzdGluZyBhbmQgaW5zcGVjdGlvbiB3aXRob3V0IHNlcmlhbGl6YXRpb24uCiAqLw=="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":341,"slug":"memory-log-exporter","name":"memory_log_exporter","namespace":"Flow\\Telemetry\\DSL","parameters":[],"return_type":[{"name":"MemoryLogExporter","namespace":"Flow\\Telemetry\\Provider\\Memory","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIE1lbW9yeUxvZ0V4cG9ydGVyLgogKgogKiBMb2cgZXhwb3J0ZXIgdGhhdCBzdG9yZXMgZGF0YSBpbiBtZW1vcnkuCiAqIFByb3ZpZGVzIGRpcmVjdCBnZXR0ZXIgYWNjZXNzIHRvIGV4cG9ydGVkIGxvZyBlbnRyaWVzLgogKiBVc2VmdWwgZm9yIHRlc3RpbmcgYW5kIGluc3BlY3Rpb24gd2l0aG91dCBzZXJpYWxpemF0aW9uLgogKi8="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":355,"slug":"memory-span-processor","name":"memory_span_processor","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"exporter","type":[{"name":"SpanExporter","namespace":"Flow\\Telemetry\\Tracer","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"MemorySpanProcessor","namespace":"Flow\\Telemetry\\Provider\\Memory","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIE1lbW9yeVNwYW5Qcm9jZXNzb3IuCiAqCiAqIFNwYW4gcHJvY2Vzc29yIHRoYXQgc3RvcmVzIHNwYW5zIGluIG1lbW9yeSBhbmQgZXhwb3J0cyB2aWEgY29uZmlndXJlZCBleHBvcnRlci4KICogVXNlZnVsIGZvciB0ZXN0aW5nLgogKgogKiBAcGFyYW0gU3BhbkV4cG9ydGVyICRleHBvcnRlciBUaGUgZXhwb3J0ZXIgdG8gc2VuZCBzcGFucyB0bwogKi8="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":369,"slug":"memory-metric-processor","name":"memory_metric_processor","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"exporter","type":[{"name":"MetricExporter","namespace":"Flow\\Telemetry\\Meter","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"MemoryMetricProcessor","namespace":"Flow\\Telemetry\\Provider\\Memory","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIE1lbW9yeU1ldHJpY1Byb2Nlc3Nvci4KICoKICogTWV0cmljIHByb2Nlc3NvciB0aGF0IHN0b3JlcyBtZXRyaWNzIGluIG1lbW9yeSBhbmQgZXhwb3J0cyB2aWEgY29uZmlndXJlZCBleHBvcnRlci4KICogVXNlZnVsIGZvciB0ZXN0aW5nLgogKgogKiBAcGFyYW0gTWV0cmljRXhwb3J0ZXIgJGV4cG9ydGVyIFRoZSBleHBvcnRlciB0byBzZW5kIG1ldHJpY3MgdG8KICov"},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":383,"slug":"memory-log-processor","name":"memory_log_processor","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"exporter","type":[{"name":"LogExporter","namespace":"Flow\\Telemetry\\Logger","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"MemoryLogProcessor","namespace":"Flow\\Telemetry\\Provider\\Memory","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIE1lbW9yeUxvZ1Byb2Nlc3Nvci4KICoKICogTG9nIHByb2Nlc3NvciB0aGF0IHN0b3JlcyBsb2cgcmVjb3JkcyBpbiBtZW1vcnkgYW5kIGV4cG9ydHMgdmlhIGNvbmZpZ3VyZWQgZXhwb3J0ZXIuCiAqIFVzZWZ1bCBmb3IgdGVzdGluZy4KICoKICogQHBhcmFtIExvZ0V4cG9ydGVyICRleHBvcnRlciBUaGUgZXhwb3J0ZXIgdG8gc2VuZCBsb2dzIHRvCiAqLw=="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":402,"slug":"tracer-provider","name":"tracer_provider","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"processor","type":[{"name":"SpanProcessor","namespace":"Flow\\Telemetry\\Tracer","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"clock","type":[{"name":"ClockInterface","namespace":"Psr\\Clock","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"contextStorage","type":[{"name":"ContextStorage","namespace":"Flow\\Telemetry\\Context","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"sampler","type":[{"name":"Sampler","namespace":"Flow\\Telemetry\\Tracer\\Sampler","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\Telemetry\\Tracer\\Sampler\\AlwaysOnSampler::..."},{"name":"limits","type":[{"name":"SpanLimits","namespace":"Flow\\Telemetry\\Tracer","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\Telemetry\\Tracer\\SpanLimits::..."}],"return_type":[{"name":"TracerProvider","namespace":"Flow\\Telemetry\\Tracer","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFRyYWNlclByb3ZpZGVyLgogKgogKiBDcmVhdGVzIGEgcHJvdmlkZXIgdGhhdCB1c2VzIGEgU3BhblByb2Nlc3NvciBmb3IgcHJvY2Vzc2luZyBzcGFucy4KICogRm9yIHZvaWQvZGlzYWJsZWQgdHJhY2luZywgcGFzcyB2b2lkX3Byb2Nlc3NvcigpLgogKiBGb3IgbWVtb3J5LWJhc2VkIHRlc3RpbmcsIHBhc3MgbWVtb3J5X3Byb2Nlc3NvcigpIHdpdGggZXhwb3J0ZXJzLgogKgogKiBAcGFyYW0gU3BhblByb2Nlc3NvciAkcHJvY2Vzc29yIFRoZSBwcm9jZXNzb3IgZm9yIHNwYW5zCiAqIEBwYXJhbSBDbG9ja0ludGVyZmFjZSAkY2xvY2sgVGhlIGNsb2NrIGZvciB0aW1lc3RhbXBzCiAqIEBwYXJhbSBDb250ZXh0U3RvcmFnZSAkY29udGV4dFN0b3JhZ2UgU3RvcmFnZSBmb3IgY29udGV4dCBwcm9wYWdhdGlvbgogKiBAcGFyYW0gU2FtcGxlciAkc2FtcGxlciBTYW1wbGluZyBzdHJhdGVneSBmb3Igc3BhbnMKICogQHBhcmFtIFNwYW5MaW1pdHMgJGxpbWl0cyBMaW1pdHMgZm9yIHNwYW4gYXR0cmlidXRlcywgZXZlbnRzLCBhbmQgbGlua3MKICov"},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":431,"slug":"logger-provider","name":"logger_provider","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"processor","type":[{"name":"LogProcessor","namespace":"Flow\\Telemetry\\Logger","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"clock","type":[{"name":"ClockInterface","namespace":"Psr\\Clock","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"contextStorage","type":[{"name":"ContextStorage","namespace":"Flow\\Telemetry\\Context","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"limits","type":[{"name":"LogRecordLimits","namespace":"Flow\\Telemetry\\Logger","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\Telemetry\\Logger\\LogRecordLimits::..."}],"return_type":[{"name":"LoggerProvider","namespace":"Flow\\Telemetry\\Logger","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIExvZ2dlclByb3ZpZGVyLgogKgogKiBDcmVhdGVzIGEgcHJvdmlkZXIgdGhhdCB1c2VzIGEgTG9nUHJvY2Vzc29yIGZvciBwcm9jZXNzaW5nIGxvZ3MuCiAqIEZvciB2b2lkL2Rpc2FibGVkIGxvZ2dpbmcsIHBhc3Mgdm9pZF9wcm9jZXNzb3IoKS4KICogRm9yIG1lbW9yeS1iYXNlZCB0ZXN0aW5nLCBwYXNzIG1lbW9yeV9wcm9jZXNzb3IoKSB3aXRoIGV4cG9ydGVycy4KICoKICogQHBhcmFtIExvZ1Byb2Nlc3NvciAkcHJvY2Vzc29yIFRoZSBwcm9jZXNzb3IgZm9yIGxvZ3MKICogQHBhcmFtIENsb2NrSW50ZXJmYWNlICRjbG9jayBUaGUgY2xvY2sgZm9yIHRpbWVzdGFtcHMKICogQHBhcmFtIENvbnRleHRTdG9yYWdlICRjb250ZXh0U3RvcmFnZSBTdG9yYWdlIGZvciBzcGFuIGNvcnJlbGF0aW9uCiAqIEBwYXJhbSBMb2dSZWNvcmRMaW1pdHMgJGxpbWl0cyBMaW1pdHMgZm9yIGxvZyByZWNvcmQgYXR0cmlidXRlcwogKi8="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":459,"slug":"meter-provider","name":"meter_provider","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"processor","type":[{"name":"MetricProcessor","namespace":"Flow\\Telemetry\\Meter","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"clock","type":[{"name":"ClockInterface","namespace":"Psr\\Clock","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"temporality","type":[{"name":"AggregationTemporality","namespace":"Flow\\Telemetry\\Meter","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\Telemetry\\Meter\\AggregationTemporality::..."},{"name":"exemplarFilter","type":[{"name":"ExemplarFilter","namespace":"Flow\\Telemetry\\Meter\\Exemplar","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\Telemetry\\Meter\\Exemplar\\TraceBasedExemplarFilter::..."},{"name":"limits","type":[{"name":"MetricLimits","namespace":"Flow\\Telemetry\\Meter","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\Telemetry\\Meter\\MetricLimits::..."}],"return_type":[{"name":"MeterProvider","namespace":"Flow\\Telemetry\\Meter","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIE1ldGVyUHJvdmlkZXIuCiAqCiAqIENyZWF0ZXMgYSBwcm92aWRlciB0aGF0IHVzZXMgYSBNZXRyaWNQcm9jZXNzb3IgZm9yIHByb2Nlc3NpbmcgbWV0cmljcy4KICogRm9yIHZvaWQvZGlzYWJsZWQgbWV0cmljcywgcGFzcyB2b2lkX3Byb2Nlc3NvcigpLgogKiBGb3IgbWVtb3J5LWJhc2VkIHRlc3RpbmcsIHBhc3MgbWVtb3J5X3Byb2Nlc3NvcigpIHdpdGggZXhwb3J0ZXJzLgogKgogKiBAcGFyYW0gTWV0cmljUHJvY2Vzc29yICRwcm9jZXNzb3IgVGhlIHByb2Nlc3NvciBmb3IgbWV0cmljcwogKiBAcGFyYW0gQ2xvY2tJbnRlcmZhY2UgJGNsb2NrIFRoZSBjbG9jayBmb3IgdGltZXN0YW1wcwogKiBAcGFyYW0gQWdncmVnYXRpb25UZW1wb3JhbGl0eSAkdGVtcG9yYWxpdHkgQWdncmVnYXRpb24gdGVtcG9yYWxpdHkgZm9yIG1ldHJpY3MKICogQHBhcmFtIEV4ZW1wbGFyRmlsdGVyICRleGVtcGxhckZpbHRlciBGaWx0ZXIgZm9yIGV4ZW1wbGFyIHNhbXBsaW5nIChkZWZhdWx0OiBUcmFjZUJhc2VkRXhlbXBsYXJGaWx0ZXIpCiAqIEBwYXJhbSBNZXRyaWNMaW1pdHMgJGxpbWl0cyBDYXJkaW5hbGl0eSBsaW1pdHMgZm9yIG1ldHJpYyBpbnN0cnVtZW50cwogKi8="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":486,"slug":"telemetry","name":"telemetry","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"resource","type":[{"name":"Resource","namespace":"Flow\\Telemetry","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"tracerProvider","type":[{"name":"TracerProvider","namespace":"Flow\\Telemetry\\Tracer","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"meterProvider","type":[{"name":"MeterProvider","namespace":"Flow\\Telemetry\\Meter","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"loggerProvider","type":[{"name":"LoggerProvider","namespace":"Flow\\Telemetry\\Logger","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"Telemetry","namespace":"Flow\\Telemetry","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIG5ldyBUZWxlbWV0cnkgaW5zdGFuY2Ugd2l0aCB0aGUgZ2l2ZW4gcHJvdmlkZXJzLgogKgogKiBJZiBwcm92aWRlcnMgYXJlIG5vdCBzcGVjaWZpZWQsIHZvaWQgcHJvdmlkZXJzIChuby1vcCkgYXJlIHVzZWQuCiAqCiAqIEBwYXJhbSByZXNvdXJjZSAkcmVzb3VyY2UgVGhlIHJlc291cmNlIGRlc2NyaWJpbmcgdGhlIGVudGl0eSBwcm9kdWNpbmcgdGVsZW1ldHJ5CiAqIEBwYXJhbSBudWxsfFRyYWNlclByb3ZpZGVyICR0cmFjZXJQcm92aWRlciBUaGUgdHJhY2VyIHByb3ZpZGVyIChudWxsIGZvciB2b2lkL2Rpc2FibGVkKQogKiBAcGFyYW0gbnVsbHxNZXRlclByb3ZpZGVyICRtZXRlclByb3ZpZGVyIFRoZSBtZXRlciBwcm92aWRlciAobnVsbCBmb3Igdm9pZC9kaXNhYmxlZCkKICogQHBhcmFtIG51bGx8TG9nZ2VyUHJvdmlkZXIgJGxvZ2dlclByb3ZpZGVyIFRoZSBsb2dnZXIgcHJvdmlkZXIgKG51bGwgZm9yIHZvaWQvZGlzYWJsZWQpCiAqLw=="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":511,"slug":"instrumentation-scope","name":"instrumentation_scope","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"name","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"version","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'unknown'"},{"name":"schemaUrl","type":[{"name":"string","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"attributes","type":[{"name":"Attributes","namespace":"Flow\\Telemetry","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\Telemetry\\Attributes::..."}],"return_type":[{"name":"InstrumentationScope","namespace":"Flow\\Telemetry","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBJbnN0cnVtZW50YXRpb25TY29wZS4KICoKICogQHBhcmFtIHN0cmluZyAkbmFtZSBUaGUgaW5zdHJ1bWVudGF0aW9uIHNjb3BlIG5hbWUKICogQHBhcmFtIHN0cmluZyAkdmVyc2lvbiBUaGUgaW5zdHJ1bWVudGF0aW9uIHNjb3BlIHZlcnNpb24KICogQHBhcmFtIG51bGx8c3RyaW5nICRzY2hlbWFVcmwgT3B0aW9uYWwgc2NoZW1hIFVSTAogKi8="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":530,"slug":"batching-span-processor","name":"batching_span_processor","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"exporter","type":[{"name":"SpanExporter","namespace":"Flow\\Telemetry\\Tracer","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"batchSize","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"512"}],"return_type":[{"name":"BatchingSpanProcessor","namespace":"Flow\\Telemetry\\Tracer\\Processor","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIEJhdGNoaW5nU3BhblByb2Nlc3Nvci4KICoKICogQ29sbGVjdHMgc3BhbnMgaW4gbWVtb3J5IGFuZCBleHBvcnRzIHRoZW0gaW4gYmF0Y2hlcyBmb3IgZWZmaWNpZW5jeS4KICogU3BhbnMgYXJlIGV4cG9ydGVkIHdoZW4gYmF0Y2ggc2l6ZSBpcyByZWFjaGVkLCBmbHVzaCgpIGlzIGNhbGxlZCwgb3Igc2h1dGRvd24oKS4KICoKICogQHBhcmFtIFNwYW5FeHBvcnRlciAkZXhwb3J0ZXIgVGhlIGV4cG9ydGVyIHRvIHNlbmQgc3BhbnMgdG8KICogQHBhcmFtIGludCAkYmF0Y2hTaXplIE51bWJlciBvZiBzcGFucyB0byBjb2xsZWN0IGJlZm9yZSBleHBvcnRpbmcgKGRlZmF1bHQgNTEyKQogKi8="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":544,"slug":"pass-through-span-processor","name":"pass_through_span_processor","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"exporter","type":[{"name":"SpanExporter","namespace":"Flow\\Telemetry\\Tracer","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"PassThroughSpanProcessor","namespace":"Flow\\Telemetry\\Tracer\\Processor","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFBhc3NUaHJvdWdoU3BhblByb2Nlc3Nvci4KICoKICogRXhwb3J0cyBlYWNoIHNwYW4gaW1tZWRpYXRlbHkgd2hlbiBpdCBlbmRzLgogKiBVc2VmdWwgZm9yIGRlYnVnZ2luZyB3aGVyZSBpbW1lZGlhdGUgdmlzaWJpbGl0eSBpcyBtb3JlIGltcG9ydGFudCB0aGFuIHBlcmZvcm1hbmNlLgogKgogKiBAcGFyYW0gU3BhbkV4cG9ydGVyICRleHBvcnRlciBUaGUgZXhwb3J0ZXIgdG8gc2VuZCBzcGFucyB0bwogKi8="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":559,"slug":"batching-metric-processor","name":"batching_metric_processor","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"exporter","type":[{"name":"MetricExporter","namespace":"Flow\\Telemetry\\Meter","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"batchSize","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"512"}],"return_type":[{"name":"BatchingMetricProcessor","namespace":"Flow\\Telemetry\\Meter\\Processor","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIEJhdGNoaW5nTWV0cmljUHJvY2Vzc29yLgogKgogKiBDb2xsZWN0cyBtZXRyaWNzIGluIG1lbW9yeSBhbmQgZXhwb3J0cyB0aGVtIGluIGJhdGNoZXMgZm9yIGVmZmljaWVuY3kuCiAqIE1ldHJpY3MgYXJlIGV4cG9ydGVkIHdoZW4gYmF0Y2ggc2l6ZSBpcyByZWFjaGVkLCBmbHVzaCgpIGlzIGNhbGxlZCwgb3Igc2h1dGRvd24oKS4KICoKICogQHBhcmFtIE1ldHJpY0V4cG9ydGVyICRleHBvcnRlciBUaGUgZXhwb3J0ZXIgdG8gc2VuZCBtZXRyaWNzIHRvCiAqIEBwYXJhbSBpbnQgJGJhdGNoU2l6ZSBOdW1iZXIgb2YgbWV0cmljcyB0byBjb2xsZWN0IGJlZm9yZSBleHBvcnRpbmcgKGRlZmF1bHQgNTEyKQogKi8="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":573,"slug":"pass-through-metric-processor","name":"pass_through_metric_processor","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"exporter","type":[{"name":"MetricExporter","namespace":"Flow\\Telemetry\\Meter","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"PassThroughMetricProcessor","namespace":"Flow\\Telemetry\\Meter\\Processor","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFBhc3NUaHJvdWdoTWV0cmljUHJvY2Vzc29yLgogKgogKiBFeHBvcnRzIGVhY2ggbWV0cmljIGltbWVkaWF0ZWx5IHdoZW4gcHJvY2Vzc2VkLgogKiBVc2VmdWwgZm9yIGRlYnVnZ2luZyB3aGVyZSBpbW1lZGlhdGUgdmlzaWJpbGl0eSBpcyBtb3JlIGltcG9ydGFudCB0aGFuIHBlcmZvcm1hbmNlLgogKgogKiBAcGFyYW0gTWV0cmljRXhwb3J0ZXIgJGV4cG9ydGVyIFRoZSBleHBvcnRlciB0byBzZW5kIG1ldHJpY3MgdG8KICov"},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":588,"slug":"batching-log-processor","name":"batching_log_processor","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"exporter","type":[{"name":"LogExporter","namespace":"Flow\\Telemetry\\Logger","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"batchSize","type":[{"name":"int","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"512"}],"return_type":[{"name":"BatchingLogProcessor","namespace":"Flow\\Telemetry\\Logger\\Processor","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIEJhdGNoaW5nTG9nUHJvY2Vzc29yLgogKgogKiBDb2xsZWN0cyBsb2cgcmVjb3JkcyBpbiBtZW1vcnkgYW5kIGV4cG9ydHMgdGhlbSBpbiBiYXRjaGVzIGZvciBlZmZpY2llbmN5LgogKiBMb2dzIGFyZSBleHBvcnRlZCB3aGVuIGJhdGNoIHNpemUgaXMgcmVhY2hlZCwgZmx1c2goKSBpcyBjYWxsZWQsIG9yIHNodXRkb3duKCkuCiAqCiAqIEBwYXJhbSBMb2dFeHBvcnRlciAkZXhwb3J0ZXIgVGhlIGV4cG9ydGVyIHRvIHNlbmQgbG9ncyB0bwogKiBAcGFyYW0gaW50ICRiYXRjaFNpemUgTnVtYmVyIG9mIGxvZ3MgdG8gY29sbGVjdCBiZWZvcmUgZXhwb3J0aW5nIChkZWZhdWx0IDUxMikKICov"},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":602,"slug":"pass-through-log-processor","name":"pass_through_log_processor","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"exporter","type":[{"name":"LogExporter","namespace":"Flow\\Telemetry\\Logger","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"PassThroughLogProcessor","namespace":"Flow\\Telemetry\\Logger\\Processor","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFBhc3NUaHJvdWdoTG9nUHJvY2Vzc29yLgogKgogKiBFeHBvcnRzIGVhY2ggbG9nIHJlY29yZCBpbW1lZGlhdGVseSB3aGVuIHByb2Nlc3NlZC4KICogVXNlZnVsIGZvciBkZWJ1Z2dpbmcgd2hlcmUgaW1tZWRpYXRlIHZpc2liaWxpdHkgaXMgbW9yZSBpbXBvcnRhbnQgdGhhbiBwZXJmb3JtYW5jZS4KICoKICogQHBhcmFtIExvZ0V4cG9ydGVyICRleHBvcnRlciBUaGUgZXhwb3J0ZXIgdG8gc2VuZCBsb2dzIHRvCiAqLw=="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":617,"slug":"severity-filtering-log-processor","name":"severity_filtering_log_processor","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"processor","type":[{"name":"LogProcessor","namespace":"Flow\\Telemetry\\Logger","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"minimumSeverity","type":[{"name":"Severity","namespace":"Flow\\Telemetry\\Logger","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\Telemetry\\Logger\\Severity::..."}],"return_type":[{"name":"SeverityFilteringLogProcessor","namespace":"Flow\\Telemetry\\Logger\\Processor","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFNldmVyaXR5RmlsdGVyaW5nTG9nUHJvY2Vzc29yLgogKgogKiBGaWx0ZXJzIGxvZyBlbnRyaWVzIGJhc2VkIG9uIG1pbmltdW0gc2V2ZXJpdHkgbGV2ZWwuIE9ubHkgZW50cmllcyBhdCBvciBhYm92ZQogKiB0aGUgY29uZmlndXJlZCB0aHJlc2hvbGQgYXJlIHBhc3NlZCB0byB0aGUgd3JhcHBlZCBwcm9jZXNzb3IuCiAqCiAqIEBwYXJhbSBMb2dQcm9jZXNzb3IgJHByb2Nlc3NvciBUaGUgcHJvY2Vzc29yIHRvIHdyYXAKICogQHBhcmFtIFNldmVyaXR5ICRtaW5pbXVtU2V2ZXJpdHkgTWluaW11bSBzZXZlcml0eSBsZXZlbCAoZGVmYXVsdDogSU5GTykKICov"},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":634,"slug":"console-span-exporter","name":"console_span_exporter","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"colors","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"true"},{"name":"options","type":[{"name":"ConsoleSpanOptions","namespace":"Flow\\Telemetry\\Provider\\Console","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\Telemetry\\Provider\\Console\\ConsoleSpanOptions::..."}],"return_type":[{"name":"ConsoleSpanExporter","namespace":"Flow\\Telemetry\\Provider\\Console","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIENvbnNvbGVTcGFuRXhwb3J0ZXIuCiAqCiAqIE91dHB1dHMgc3BhbnMgdG8gdGhlIGNvbnNvbGUgd2l0aCBBU0NJSSB0YWJsZSBmb3JtYXR0aW5nLgogKiBVc2VmdWwgZm9yIGRlYnVnZ2luZyBhbmQgZGV2ZWxvcG1lbnQuCiAqCiAqIEBwYXJhbSBib29sICRjb2xvcnMgV2hldGhlciB0byB1c2UgQU5TSSBjb2xvcnMgKGRlZmF1bHQ6IHRydWUpCiAqIEBwYXJhbSBDb25zb2xlU3Bhbk9wdGlvbnMgJG9wdGlvbnMgRGlzcGxheSBvcHRpb25zIGZvciB0aGUgZXhwb3J0ZXIKICov"},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":649,"slug":"console-metric-exporter","name":"console_metric_exporter","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"colors","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"true"},{"name":"options","type":[{"name":"ConsoleMetricOptions","namespace":"Flow\\Telemetry\\Provider\\Console","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\Telemetry\\Provider\\Console\\ConsoleMetricOptions::..."}],"return_type":[{"name":"ConsoleMetricExporter","namespace":"Flow\\Telemetry\\Provider\\Console","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIENvbnNvbGVNZXRyaWNFeHBvcnRlci4KICoKICogT3V0cHV0cyBtZXRyaWNzIHRvIHRoZSBjb25zb2xlIHdpdGggQVNDSUkgdGFibGUgZm9ybWF0dGluZy4KICogVXNlZnVsIGZvciBkZWJ1Z2dpbmcgYW5kIGRldmVsb3BtZW50LgogKgogKiBAcGFyYW0gYm9vbCAkY29sb3JzIFdoZXRoZXIgdG8gdXNlIEFOU0kgY29sb3JzIChkZWZhdWx0OiB0cnVlKQogKiBAcGFyYW0gQ29uc29sZU1ldHJpY09wdGlvbnMgJG9wdGlvbnMgRGlzcGxheSBvcHRpb25zIGZvciB0aGUgZXhwb3J0ZXIKICov"},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":665,"slug":"console-log-exporter","name":"console_log_exporter","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"colors","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"true"},{"name":"maxBodyLength","type":[{"name":"int","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"100"},{"name":"options","type":[{"name":"ConsoleLogOptions","namespace":"Flow\\Telemetry\\Provider\\Console","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\Telemetry\\Provider\\Console\\ConsoleLogOptions::..."}],"return_type":[{"name":"ConsoleLogExporter","namespace":"Flow\\Telemetry\\Provider\\Console","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIENvbnNvbGVMb2dFeHBvcnRlci4KICoKICogT3V0cHV0cyBsb2cgcmVjb3JkcyB0byB0aGUgY29uc29sZSB3aXRoIHNldmVyaXR5LWJhc2VkIGNvbG9yaW5nLgogKiBVc2VmdWwgZm9yIGRlYnVnZ2luZyBhbmQgZGV2ZWxvcG1lbnQuCiAqCiAqIEBwYXJhbSBib29sICRjb2xvcnMgV2hldGhlciB0byB1c2UgQU5TSSBjb2xvcnMgKGRlZmF1bHQ6IHRydWUpCiAqIEBwYXJhbSBudWxsfGludCAkbWF4Qm9keUxlbmd0aCBNYXhpbXVtIGxlbmd0aCBmb3IgYm9keSthdHRyaWJ1dGVzIGNvbHVtbiAobnVsbCA9IG5vIGxpbWl0LCBkZWZhdWx0OiAxMDApCiAqIEBwYXJhbSBDb25zb2xlTG9nT3B0aW9ucyAkb3B0aW9ucyBEaXNwbGF5IG9wdGlvbnMgZm9yIHRoZSBleHBvcnRlcgogKi8="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":674,"slug":"console-span-options","name":"console_span_options","namespace":"Flow\\Telemetry\\DSL","parameters":[],"return_type":[{"name":"ConsoleSpanOptions","namespace":"Flow\\Telemetry\\Provider\\Console","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBDb25zb2xlU3Bhbk9wdGlvbnMgd2l0aCBhbGwgZGlzcGxheSBvcHRpb25zIGVuYWJsZWQgKGRlZmF1bHQgYmVoYXZpb3IpLgogKi8="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":683,"slug":"console-span-options-minimal","name":"console_span_options_minimal","namespace":"Flow\\Telemetry\\DSL","parameters":[],"return_type":[{"name":"ConsoleSpanOptions","namespace":"Flow\\Telemetry\\Provider\\Console","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBDb25zb2xlU3Bhbk9wdGlvbnMgd2l0aCBtaW5pbWFsIGRpc3BsYXkgKGxlZ2FjeSBjb21wYWN0IGZvcm1hdCkuCiAqLw=="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":692,"slug":"console-log-options","name":"console_log_options","namespace":"Flow\\Telemetry\\DSL","parameters":[],"return_type":[{"name":"ConsoleLogOptions","namespace":"Flow\\Telemetry\\Provider\\Console","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBDb25zb2xlTG9nT3B0aW9ucyB3aXRoIGFsbCBkaXNwbGF5IG9wdGlvbnMgZW5hYmxlZCAoZGVmYXVsdCBiZWhhdmlvcikuCiAqLw=="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":701,"slug":"console-log-options-minimal","name":"console_log_options_minimal","namespace":"Flow\\Telemetry\\DSL","parameters":[],"return_type":[{"name":"ConsoleLogOptions","namespace":"Flow\\Telemetry\\Provider\\Console","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBDb25zb2xlTG9nT3B0aW9ucyB3aXRoIG1pbmltYWwgZGlzcGxheSAobGVnYWN5IGNvbXBhY3QgZm9ybWF0KS4KICov"},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":710,"slug":"console-metric-options","name":"console_metric_options","namespace":"Flow\\Telemetry\\DSL","parameters":[],"return_type":[{"name":"ConsoleMetricOptions","namespace":"Flow\\Telemetry\\Provider\\Console","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBDb25zb2xlTWV0cmljT3B0aW9ucyB3aXRoIGFsbCBkaXNwbGF5IG9wdGlvbnMgZW5hYmxlZCAoZGVmYXVsdCBiZWhhdmlvcikuCiAqLw=="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":719,"slug":"console-metric-options-minimal","name":"console_metric_options_minimal","namespace":"Flow\\Telemetry\\DSL","parameters":[],"return_type":[{"name":"ConsoleMetricOptions","namespace":"Flow\\Telemetry\\Provider\\Console","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBDb25zb2xlTWV0cmljT3B0aW9ucyB3aXRoIG1pbmltYWwgZGlzcGxheSAobGVnYWN5IGNvbXBhY3QgZm9ybWF0KS4KICov"},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":731,"slug":"always-on-exemplar-filter","name":"always_on_exemplar_filter","namespace":"Flow\\Telemetry\\DSL","parameters":[],"return_type":[{"name":"AlwaysOnExemplarFilter","namespace":"Flow\\Telemetry\\Meter\\Exemplar","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBBbHdheXNPbkV4ZW1wbGFyRmlsdGVyLgogKgogKiBSZWNvcmRzIGV4ZW1wbGFycyB3aGVuZXZlciBhIHNwYW4gY29udGV4dCBpcyBwcmVzZW50LgogKiBVc2UgdGhpcyBmaWx0ZXIgZm9yIGRlYnVnZ2luZyBvciB3aGVuIGNvbXBsZXRlIHRyYWNlIGNvbnRleHQgaXMgaW1wb3J0YW50LgogKi8="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":743,"slug":"always-off-exemplar-filter","name":"always_off_exemplar_filter","namespace":"Flow\\Telemetry\\DSL","parameters":[],"return_type":[{"name":"AlwaysOffExemplarFilter","namespace":"Flow\\Telemetry\\Meter\\Exemplar","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBBbHdheXNPZmZFeGVtcGxhckZpbHRlci4KICoKICogTmV2ZXIgcmVjb3JkcyBleGVtcGxhcnMuIFVzZSB0aGlzIGZpbHRlciB0byBkaXNhYmxlIGV4ZW1wbGFyIGNvbGxlY3Rpb24KICogZW50aXJlbHkgZm9yIHBlcmZvcm1hbmNlIG9wdGltaXphdGlvbi4KICov"},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":755,"slug":"trace-based-exemplar-filter","name":"trace_based_exemplar_filter","namespace":"Flow\\Telemetry\\DSL","parameters":[],"return_type":[{"name":"TraceBasedExemplarFilter","namespace":"Flow\\Telemetry\\Meter\\Exemplar","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFRyYWNlQmFzZWRFeGVtcGxhckZpbHRlci4KICoKICogUmVjb3JkcyBleGVtcGxhcnMgb25seSB3aGVuIHRoZSBzcGFuIGlzIHNhbXBsZWQgKGhhcyBTQU1QTEVEIHRyYWNlIGZsYWcpLgogKiBUaGlzIGlzIHRoZSBkZWZhdWx0IGZpbHRlciwgYmFsYW5jaW5nIGV4ZW1wbGFyIGNvbGxlY3Rpb24gd2l0aCBwZXJmb3JtYW5jZS4KICov"},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":770,"slug":"propagation-context","name":"propagation_context","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"spanContext","type":[{"name":"SpanContext","namespace":"Flow\\Telemetry\\Tracer","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"baggage","type":[{"name":"Baggage","namespace":"Flow\\Telemetry\\Context","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"PropagationContext","namespace":"Flow\\Telemetry\\Propagation","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"TYPE"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFByb3BhZ2F0aW9uQ29udGV4dC4KICoKICogVmFsdWUgb2JqZWN0IGNvbnRhaW5pbmcgYm90aCB0cmFjZSBjb250ZXh0IChTcGFuQ29udGV4dCkgYW5kIGFwcGxpY2F0aW9uCiAqIGRhdGEgKEJhZ2dhZ2UpIHRoYXQgY2FuIGJlIHByb3BhZ2F0ZWQgYWNyb3NzIHByb2Nlc3MgYm91bmRhcmllcy4KICoKICogQHBhcmFtIG51bGx8U3BhbkNvbnRleHQgJHNwYW5Db250ZXh0IE9wdGlvbmFsIHNwYW4gY29udGV4dAogKiBAcGFyYW0gbnVsbHxCYWdnYWdlICRiYWdnYWdlIE9wdGlvbmFsIGJhZ2dhZ2UKICov"},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":783,"slug":"array-carrier","name":"array_carrier","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"data","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"ArrayCarrier","namespace":"Flow\\Telemetry\\Propagation","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBBcnJheUNhcnJpZXIuCiAqCiAqIENhcnJpZXIgYmFja2VkIGJ5IGFuIGFzc29jaWF0aXZlIGFycmF5IHdpdGggY2FzZS1pbnNlbnNpdGl2ZSBrZXkgbG9va3VwLgogKgogKiBAcGFyYW0gYXJyYXk8c3RyaW5nLCBzdHJpbmc+ICRkYXRhIEluaXRpYWwgY2FycmllciBkYXRhCiAqLw=="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":795,"slug":"superglobal-carrier","name":"superglobal_carrier","namespace":"Flow\\Telemetry\\DSL","parameters":[],"return_type":[{"name":"SuperglobalCarrier","namespace":"Flow\\Telemetry\\Propagation","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFN1cGVyZ2xvYmFsQ2Fycmllci4KICoKICogUmVhZC1vbmx5IGNhcnJpZXIgdGhhdCBleHRyYWN0cyBjb250ZXh0IGZyb20gUEhQIHN1cGVyZ2xvYmFscwogKiAoJF9TRVJWRVIsICRfR0VULCAkX1BPU1QsICRfQ09PS0lFKS4KICov"},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":807,"slug":"w3c-trace-context","name":"w3c_trace_context","namespace":"Flow\\Telemetry\\DSL","parameters":[],"return_type":[{"name":"W3CTraceContext","namespace":"Flow\\Telemetry\\Propagation","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFczQ1RyYWNlQ29udGV4dCBwcm9wYWdhdG9yLgogKgogKiBJbXBsZW1lbnRzIFczQyBUcmFjZSBDb250ZXh0IHNwZWNpZmljYXRpb24gZm9yIHByb3BhZ2F0aW5nIHRyYWNlIGNvbnRleHQKICogdXNpbmcgdHJhY2VwYXJlbnQgYW5kIHRyYWNlc3RhdGUgaGVhZGVycy4KICov"},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":819,"slug":"w3c-baggage","name":"w3c_baggage","namespace":"Flow\\Telemetry\\DSL","parameters":[],"return_type":[{"name":"W3CBaggage","namespace":"Flow\\Telemetry\\Propagation","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFczQ0JhZ2dhZ2UgcHJvcGFnYXRvci4KICoKICogSW1wbGVtZW50cyBXM0MgQmFnZ2FnZSBzcGVjaWZpY2F0aW9uIGZvciBwcm9wYWdhdGluZyBhcHBsaWNhdGlvbi1zcGVjaWZpYwogKiBrZXktdmFsdWUgcGFpcnMgdXNpbmcgdGhlIGJhZ2dhZ2UgaGVhZGVyLgogKi8="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":833,"slug":"composite-propagator","name":"composite_propagator","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"propagators","type":[{"name":"Propagator","namespace":"Flow\\Telemetry\\Propagation","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"CompositePropagator","namespace":"Flow\\Telemetry\\Propagation","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIENvbXBvc2l0ZVByb3BhZ2F0b3IuCiAqCiAqIENvbWJpbmVzIG11bHRpcGxlIHByb3BhZ2F0b3JzIGludG8gb25lLiBPbiBleHRyYWN0LCBhbGwgcHJvcGFnYXRvcnMgYXJlCiAqIGludm9rZWQgYW5kIHRoZWlyIGNvbnRleHRzIGFyZSBtZXJnZWQuIE9uIGluamVjdCwgYWxsIHByb3BhZ2F0b3JzIGFyZSBpbnZva2VkLgogKgogKiBAcGFyYW0gUHJvcGFnYXRvciAuLi4kcHJvcGFnYXRvcnMgVGhlIHByb3BhZ2F0b3JzIHRvIGNvbWJpbmUKICov"},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":848,"slug":"chain-detector","name":"chain_detector","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"detectors","type":[{"name":"ResourceDetector","namespace":"Flow\\Telemetry\\Resource","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":true,"default_value":null}],"return_type":[{"name":"ChainDetector","namespace":"Flow\\Telemetry\\Resource\\Detector","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIENoYWluRGV0ZWN0b3IuCiAqCiAqIENvbWJpbmVzIG11bHRpcGxlIHJlc291cmNlIGRldGVjdG9ycyBpbnRvIGEgY2hhaW4uIERldGVjdG9ycyBhcmUgZXhlY3V0ZWQKICogaW4gb3JkZXIgYW5kIHRoZWlyIHJlc3VsdHMgYXJlIG1lcmdlZC4gTGF0ZXIgZGV0ZWN0b3JzIHRha2UgcHJlY2VkZW5jZQogKiBvdmVyIGVhcmxpZXIgb25lcyB3aGVuIHRoZXJlIGFyZSBjb25mbGljdGluZyBhdHRyaWJ1dGUga2V5cy4KICoKICogQHBhcmFtIFJlc291cmNlRGV0ZWN0b3IgLi4uJGRldGVjdG9ycyBUaGUgZGV0ZWN0b3JzIHRvIGNoYWluCiAqLw=="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":860,"slug":"os-detector","name":"os_detector","namespace":"Flow\\Telemetry\\DSL","parameters":[],"return_type":[{"name":"OsDetector","namespace":"Flow\\Telemetry\\Resource\\Detector","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBPc0RldGVjdG9yLgogKgogKiBEZXRlY3RzIG9wZXJhdGluZyBzeXN0ZW0gaW5mb3JtYXRpb24gaW5jbHVkaW5nIG9zLnR5cGUsIG9zLm5hbWUsIG9zLnZlcnNpb24sCiAqIGFuZCBvcy5kZXNjcmlwdGlvbiB1c2luZyBQSFAncyBwaHBfdW5hbWUoKSBmdW5jdGlvbi4KICov"},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":872,"slug":"host-detector","name":"host_detector","namespace":"Flow\\Telemetry\\DSL","parameters":[],"return_type":[{"name":"HostDetector","namespace":"Flow\\Telemetry\\Resource\\Detector","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIEhvc3REZXRlY3Rvci4KICoKICogRGV0ZWN0cyBob3N0IGluZm9ybWF0aW9uIGluY2x1ZGluZyBob3N0Lm5hbWUsIGhvc3QuYXJjaCwgYW5kIGhvc3QuaWQKICogKGZyb20gL2V0Yy9tYWNoaW5lLWlkIG9uIExpbnV4IG9yIElPUGxhdGZvcm1VVUlEIG9uIG1hY09TKS4KICov"},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":885,"slug":"process-detector","name":"process_detector","namespace":"Flow\\Telemetry\\DSL","parameters":[],"return_type":[{"name":"ProcessDetector","namespace":"Flow\\Telemetry\\Resource\\Detector","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFByb2Nlc3NEZXRlY3Rvci4KICoKICogRGV0ZWN0cyBwcm9jZXNzIGluZm9ybWF0aW9uIGluY2x1ZGluZyBwcm9jZXNzLnBpZCwgcHJvY2Vzcy5leGVjdXRhYmxlLnBhdGgsCiAqIHByb2Nlc3MucnVudGltZS5uYW1lIChQSFApLCBwcm9jZXNzLnJ1bnRpbWUudmVyc2lvbiwgcHJvY2Vzcy5jb21tYW5kLAogKiBhbmQgcHJvY2Vzcy5vd25lciAob24gUE9TSVggc3lzdGVtcykuCiAqLw=="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":898,"slug":"environment-detector","name":"environment_detector","namespace":"Flow\\Telemetry\\DSL","parameters":[],"return_type":[{"name":"EnvironmentDetector","namespace":"Flow\\Telemetry\\Resource\\Detector","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBFbnZpcm9ubWVudERldGVjdG9yLgogKgogKiBEZXRlY3RzIHJlc291cmNlIGF0dHJpYnV0ZXMgZnJvbSBPcGVuVGVsZW1ldHJ5IHN0YW5kYXJkIGVudmlyb25tZW50IHZhcmlhYmxlczoKICogLSBPVEVMX1NFUlZJQ0VfTkFNRTogU2V0cyBzZXJ2aWNlLm5hbWUgYXR0cmlidXRlCiAqIC0gT1RFTF9SRVNPVVJDRV9BVFRSSUJVVEVTOiBTZXRzIGFkZGl0aW9uYWwgYXR0cmlidXRlcyBpbiBrZXk9dmFsdWUsa2V5Mj12YWx1ZTIgZm9ybWF0CiAqLw=="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":910,"slug":"composer-detector","name":"composer_detector","namespace":"Flow\\Telemetry\\DSL","parameters":[],"return_type":[{"name":"ComposerDetector","namespace":"Flow\\Telemetry\\Resource\\Detector","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIENvbXBvc2VyRGV0ZWN0b3IuCiAqCiAqIERldGVjdHMgc2VydmljZS5uYW1lIGFuZCBzZXJ2aWNlLnZlcnNpb24gZnJvbSBDb21wb3NlcidzIEluc3RhbGxlZFZlcnNpb25zCiAqIHVzaW5nIHRoZSByb290IHBhY2thZ2UgaW5mb3JtYXRpb24uCiAqLw=="},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":924,"slug":"manual-detector","name":"manual_detector","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"attributes","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ManualDetector","namespace":"Flow\\Telemetry\\Resource\\Detector","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIE1hbnVhbERldGVjdG9yLgogKgogKiBSZXR1cm5zIG1hbnVhbGx5IHNwZWNpZmllZCByZXNvdXJjZSBhdHRyaWJ1dGVzLiBVc2UgdGhpcyB3aGVuIHlvdSBuZWVkCiAqIHRvIHNldCBhdHRyaWJ1dGVzIGV4cGxpY2l0bHkgcmF0aGVyIHRoYW4gZGV0ZWN0aW5nIHRoZW0gYXV0b21hdGljYWxseS4KICoKICogQHBhcmFtIGFycmF5PHN0cmluZywgYXJyYXk8Ym9vbHxmbG9hdHxpbnR8c3RyaW5nPnxib29sfGZsb2F0fGludHxzdHJpbmc+ICRhdHRyaWJ1dGVzIFJlc291cmNlIGF0dHJpYnV0ZXMKICov"},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":939,"slug":"caching-detector","name":"caching_detector","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"detector","type":[{"name":"ResourceDetector","namespace":"Flow\\Telemetry\\Resource","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"cachePath","type":[{"name":"string","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"CachingDetector","namespace":"Flow\\Telemetry\\Resource\\Detector","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIENhY2hpbmdEZXRlY3Rvci4KICoKICogV3JhcHMgYW5vdGhlciBkZXRlY3RvciBhbmQgY2FjaGVzIGl0cyByZXN1bHRzIHRvIGEgZmlsZS4gT24gc3Vic2VxdWVudAogKiBjYWxscywgcmV0dXJucyB0aGUgY2FjaGVkIHJlc291cmNlIGluc3RlYWQgb2YgcnVubmluZyBkZXRlY3Rpb24gYWdhaW4uCiAqCiAqIEBwYXJhbSBSZXNvdXJjZURldGVjdG9yICRkZXRlY3RvciBUaGUgZGV0ZWN0b3IgdG8gd3JhcAogKiBAcGFyYW0gbnVsbHxzdHJpbmcgJGNhY2hlUGF0aCBDYWNoZSBmaWxlIHBhdGggKGRlZmF1bHQ6IHN5c19nZXRfdGVtcF9kaXIoKS9mbG93X3RlbGVtZXRyeV9yZXNvdXJjZS5jYWNoZSkKICov"},{"repository_path":"src\/lib\/telemetry\/src\/Flow\/Telemetry\/DSL\/functions.php","start_line_in_file":959,"slug":"resource-detector","name":"resource_detector","namespace":"Flow\\Telemetry\\DSL","parameters":[{"name":"detectors","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"ChainDetector","namespace":"Flow\\Telemetry\\Resource\\Detector","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIHJlc291cmNlIGRldGVjdG9yIGNoYWluLgogKgogKiBXaGVuIG5vIGRldGVjdG9ycyBhcmUgcHJvdmlkZWQsIHVzZXMgdGhlIGRlZmF1bHQgZGV0ZWN0b3IgY2hhaW46CiAqIDEuIE9zRGV0ZWN0b3IgLSBPcGVyYXRpbmcgc3lzdGVtIGluZm9ybWF0aW9uCiAqIDIuIEhvc3REZXRlY3RvciAtIEhvc3QgaW5mb3JtYXRpb24KICogMy4gUHJvY2Vzc0RldGVjdG9yIC0gUHJvY2VzcyBpbmZvcm1hdGlvbgogKiA0LiBDb21wb3NlckRldGVjdG9yIC0gU2VydmljZSBpbmZvcm1hdGlvbiBmcm9tIENvbXBvc2VyCiAqIDUuIEVudmlyb25tZW50RGV0ZWN0b3IgLSBFbnZpcm9ubWVudCB2YXJpYWJsZSBvdmVycmlkZXMgKGhpZ2hlc3QgcHJlY2VkZW5jZSkKICoKICogV2hlbiBkZXRlY3RvcnMgYXJlIHByb3ZpZGVkLCB1c2VzIG9ubHkgdGhvc2UgZGV0ZWN0b3JzLgogKgogKiBAcGFyYW0gYXJyYXk8UmVzb3VyY2VEZXRlY3Rvcj4gJGRldGVjdG9ycyBPcHRpb25hbCBjdXN0b20gZGV0ZWN0b3JzIChlbXB0eSA9IHVzZSBkZWZhdWx0cykKICov"},{"repository_path":"src\/lib\/azure-sdk\/src\/Flow\/Azure\/SDK\/DSL\/functions.php","start_line_in_file":18,"slug":"azurite-url-factory","name":"azurite_url_factory","namespace":"Flow\\Azure\\SDK\\DSL","parameters":[{"name":"host","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'localhost'"},{"name":"port","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'10000'"},{"name":"secure","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"false"}],"return_type":[{"name":"AzuriteURLFactory","namespace":"Flow\\Azure\\SDK\\BlobService\\URLFactory","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"AZURE_SDK","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/azure-sdk\/src\/Flow\/Azure\/SDK\/DSL\/functions.php","start_line_in_file":24,"slug":"azure-shared-key-authorization-factory","name":"azure_shared_key_authorization_factory","namespace":"Flow\\Azure\\SDK\\DSL","parameters":[{"name":"account","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"key","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"SharedKeyFactory","namespace":"Flow\\Azure\\SDK\\AuthorizationFactory","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"AZURE_SDK","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/azure-sdk\/src\/Flow\/Azure\/SDK\/DSL\/functions.php","start_line_in_file":30,"slug":"azure-blob-service-config","name":"azure_blob_service_config","namespace":"Flow\\Azure\\SDK\\DSL","parameters":[{"name":"account","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"container","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"Configuration","namespace":"Flow\\Azure\\SDK\\BlobService","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"AZURE_SDK","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/azure-sdk\/src\/Flow\/Azure\/SDK\/DSL\/functions.php","start_line_in_file":36,"slug":"azure-url-factory","name":"azure_url_factory","namespace":"Flow\\Azure\\SDK\\DSL","parameters":[{"name":"host","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"'blob.core.windows.net'"}],"return_type":[{"name":"AzureURLFactory","namespace":"Flow\\Azure\\SDK\\BlobService\\URLFactory","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"AZURE_SDK","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/azure-sdk\/src\/Flow\/Azure\/SDK\/DSL\/functions.php","start_line_in_file":42,"slug":"azure-http-factory","name":"azure_http_factory","namespace":"Flow\\Azure\\SDK\\DSL","parameters":[{"name":"request_factory","type":[{"name":"RequestFactoryInterface","namespace":"Psr\\Http\\Message","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"stream_factory","type":[{"name":"StreamFactoryInterface","namespace":"Psr\\Http\\Message","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"HttpFactory","namespace":"Flow\\Azure\\SDK","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"AZURE_SDK","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/lib\/azure-sdk\/src\/Flow\/Azure\/SDK\/DSL\/functions.php","start_line_in_file":48,"slug":"azure-blob-service","name":"azure_blob_service","namespace":"Flow\\Azure\\SDK\\DSL","parameters":[{"name":"configuration","type":[{"name":"Configuration","namespace":"Flow\\Azure\\SDK\\BlobService","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"azure_authorization_factory","type":[{"name":"AuthorizationFactory","namespace":"Flow\\Azure\\SDK","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"client","type":[{"name":"ClientInterface","namespace":"Psr\\Http\\Client","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"azure_http_factory","type":[{"name":"HttpFactory","namespace":"Flow\\Azure\\SDK","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"azure_url_factory","type":[{"name":"URLFactory","namespace":"Flow\\Azure\\SDK","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"logger","type":[{"name":"LoggerInterface","namespace":"Psr\\Log","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"BlobServiceInterface","namespace":"Flow\\Azure\\SDK","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"AZURE_SDK","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/bridge\/filesystem\/azure\/src\/Flow\/Filesystem\/Bridge\/Azure\/DSL\/functions.php","start_line_in_file":12,"slug":"azure-filesystem-options","name":"azure_filesystem_options","namespace":"Flow\\Filesystem\\Bridge\\Azure\\DSL","parameters":[],"return_type":[{"name":"Options","namespace":"Flow\\Filesystem\\Bridge\\Azure","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"AZURE_FILESYSTEM","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/bridge\/filesystem\/azure\/src\/Flow\/Filesystem\/Bridge\/Azure\/DSL\/functions.php","start_line_in_file":18,"slug":"azure-filesystem","name":"azure_filesystem","namespace":"Flow\\Filesystem\\Bridge\\Azure\\DSL","parameters":[{"name":"blob_service","type":[{"name":"BlobServiceInterface","namespace":"Flow\\Azure\\SDK","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"options","type":[{"name":"Options","namespace":"Flow\\Filesystem\\Bridge\\Azure","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\Filesystem\\Bridge\\Azure\\Options::..."}],"return_type":[{"name":"AzureBlobFilesystem","namespace":"Flow\\Filesystem\\Bridge\\Azure","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"AZURE_FILESYSTEM","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/bridge\/filesystem\/async-aws\/src\/Flow\/Filesystem\/Bridge\/AsyncAWS\/DSL\/functions.php","start_line_in_file":15,"slug":"aws-s3-client","name":"aws_s3_client","namespace":"Flow\\Filesystem\\Bridge\\AsyncAWS\\DSL","parameters":[{"name":"configuration","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"S3Client","namespace":"AsyncAws\\S3","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"S3_FILESYSTEM","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIEBwYXJhbSBhcnJheTxzdHJpbmcsIG1peGVkPiAkY29uZmlndXJhdGlvbiAtIGZvciBkZXRhaWxzIHBsZWFzZSBzZWUgaHR0cHM6Ly9hc3luYy1hd3MuY29tL2NsaWVudHMvczMuaHRtbAogKi8="},{"repository_path":"src\/bridge\/filesystem\/async-aws\/src\/Flow\/Filesystem\/Bridge\/AsyncAWS\/DSL\/functions.php","start_line_in_file":22,"slug":"aws-s3-filesystem","name":"aws_s3_filesystem","namespace":"Flow\\Filesystem\\Bridge\\AsyncAWS\\DSL","parameters":[{"name":"bucket","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"s3Client","type":[{"name":"S3Client","namespace":"AsyncAws\\S3","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"options","type":[{"name":"Options","namespace":"Flow\\Filesystem\\Bridge\\AsyncAWS","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\Filesystem\\Bridge\\AsyncAWS\\Options::..."}],"return_type":[{"name":"AsyncAWSS3Filesystem","namespace":"Flow\\Filesystem\\Bridge\\AsyncAWS","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"S3_FILESYSTEM","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/bridge\/monolog\/telemetry\/src\/Flow\/Bridge\/Monolog\/Telemetry\/DSL\/functions.php","start_line_in_file":32,"slug":"value-normalizer","name":"value_normalizer","namespace":"Flow\\Bridge\\Monolog\\Telemetry\\DSL","parameters":[],"return_type":[{"name":"ValueNormalizer","namespace":"Flow\\Bridge\\Monolog\\Telemetry","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"MONOLOG_TELEMETRY_BRIDGE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFZhbHVlTm9ybWFsaXplciBmb3IgY29udmVydGluZyBhcmJpdHJhcnkgUEhQIHZhbHVlcyB0byBUZWxlbWV0cnkgYXR0cmlidXRlIHR5cGVzLgogKgogKiBUaGUgbm9ybWFsaXplciBoYW5kbGVzOgogKiAtIG51bGwg4oaSICdudWxsJyBzdHJpbmcKICogLSBzY2FsYXJzIChzdHJpbmcsIGludCwgZmxvYXQsIGJvb2wpIOKGkiB1bmNoYW5nZWQKICogLSBEYXRlVGltZUludGVyZmFjZSDihpIgdW5jaGFuZ2VkCiAqIC0gVGhyb3dhYmxlIOKGkiB1bmNoYW5nZWQKICogLSBhcnJheXMg4oaSIHJlY3Vyc2l2ZWx5IG5vcm1hbGl6ZWQKICogLSBvYmplY3RzIHdpdGggX190b1N0cmluZygpIOKGkiBzdHJpbmcgY2FzdAogKiAtIG9iamVjdHMgd2l0aG91dCBfX3RvU3RyaW5nKCkg4oaSIGNsYXNzIG5hbWUKICogLSBvdGhlciB0eXBlcyDihpIgZ2V0X2RlYnVnX3R5cGUoKSByZXN1bHQKICoKICogRXhhbXBsZSB1c2FnZToKICogYGBgcGhwCiAqICRub3JtYWxpemVyID0gdmFsdWVfbm9ybWFsaXplcigpOwogKiAkbm9ybWFsaXplZCA9ICRub3JtYWxpemVyLT5ub3JtYWxpemUoJHZhbHVlKTsKICogYGBgCiAqLw=="},{"repository_path":"src\/bridge\/monolog\/telemetry\/src\/Flow\/Bridge\/Monolog\/Telemetry\/DSL\/functions.php","start_line_in_file":65,"slug":"severity-mapper","name":"severity_mapper","namespace":"Flow\\Bridge\\Monolog\\Telemetry\\DSL","parameters":[{"name":"customMapping","type":[{"name":"array","namespace":null,"is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"SeverityMapper","namespace":"Flow\\Bridge\\Monolog\\Telemetry","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"MONOLOG_TELEMETRY_BRIDGE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFNldmVyaXR5TWFwcGVyIGZvciBtYXBwaW5nIE1vbm9sb2cgbGV2ZWxzIHRvIFRlbGVtZXRyeSBzZXZlcml0aWVzLgogKgogKiBAcGFyYW0gbnVsbHxhcnJheTxpbnQsIFNldmVyaXR5PiAkY3VzdG9tTWFwcGluZyBPcHRpb25hbCBjdXN0b20gbWFwcGluZyAoTW9ub2xvZyBMZXZlbCB2YWx1ZSA9PiBUZWxlbWV0cnkgU2V2ZXJpdHkpCiAqCiAqIEV4YW1wbGUgd2l0aCBkZWZhdWx0IG1hcHBpbmc6CiAqIGBgYHBocAogKiAkbWFwcGVyID0gc2V2ZXJpdHlfbWFwcGVyKCk7CiAqIGBgYAogKgogKiBFeGFtcGxlIHdpdGggY3VzdG9tIG1hcHBpbmc6CiAqIGBgYHBocAogKiB1c2UgTW9ub2xvZ1xMZXZlbDsKICogdXNlIEZsb3dcVGVsZW1ldHJ5XExvZ2dlclxTZXZlcml0eTsKICoKICogJG1hcHBlciA9IHNldmVyaXR5X21hcHBlcihbCiAqICAgICBMZXZlbDo6RGVidWctPnZhbHVlID0+IFNldmVyaXR5OjpERUJVRywKICogICAgIExldmVsOjpJbmZvLT52YWx1ZSA9PiBTZXZlcml0eTo6SU5GTywKICogICAgIExldmVsOjpOb3RpY2UtPnZhbHVlID0+IFNldmVyaXR5OjpXQVJOLCAgLy8gQ3VzdG9tOiBOT1RJQ0Ug4oaSIFdBUk4gaW5zdGVhZCBvZiBJTkZPCiAqICAgICBMZXZlbDo6V2FybmluZy0+dmFsdWUgPT4gU2V2ZXJpdHk6OldBUk4sCiAqICAgICBMZXZlbDo6RXJyb3ItPnZhbHVlID0+IFNldmVyaXR5OjpFUlJPUiwKICogICAgIExldmVsOjpDcml0aWNhbC0+dmFsdWUgPT4gU2V2ZXJpdHk6OkZBVEFMLAogKiAgICAgTGV2ZWw6OkFsZXJ0LT52YWx1ZSA9PiBTZXZlcml0eTo6RkFUQUwsCiAqICAgICBMZXZlbDo6RW1lcmdlbmN5LT52YWx1ZSA9PiBTZXZlcml0eTo6RkFUQUwsCiAqIF0pOwogKiBgYGAKICov"},{"repository_path":"src\/bridge\/monolog\/telemetry\/src\/Flow\/Bridge\/Monolog\/Telemetry\/DSL\/functions.php","start_line_in_file":99,"slug":"log-record-converter","name":"log_record_converter","namespace":"Flow\\Bridge\\Monolog\\Telemetry\\DSL","parameters":[{"name":"severityMapper","type":[{"name":"SeverityMapper","namespace":"Flow\\Bridge\\Monolog\\Telemetry","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"},{"name":"valueNormalizer","type":[{"name":"ValueNormalizer","namespace":"Flow\\Bridge\\Monolog\\Telemetry","is_nullable":true,"is_variadic":false}],"has_default_value":true,"is_nullable":true,"is_variadic":false,"default_value":"null"}],"return_type":[{"name":"LogRecordConverter","namespace":"Flow\\Bridge\\Monolog\\Telemetry","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"MONOLOG_TELEMETRY_BRIDGE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIExvZ1JlY29yZENvbnZlcnRlciBmb3IgY29udmVydGluZyBNb25vbG9nIExvZ1JlY29yZCB0byBUZWxlbWV0cnkgTG9nUmVjb3JkLgogKgogKiBUaGUgY29udmVydGVyIGhhbmRsZXM6CiAqIC0gU2V2ZXJpdHkgbWFwcGluZyBmcm9tIE1vbm9sb2cgTGV2ZWwgdG8gVGVsZW1ldHJ5IFNldmVyaXR5CiAqIC0gTWVzc2FnZSBib2R5IGNvbnZlcnNpb24KICogLSBDaGFubmVsIGFuZCBsZXZlbCBuYW1lIGFzIG1vbm9sb2cuKiBhdHRyaWJ1dGVzCiAqIC0gQ29udGV4dCB2YWx1ZXMgYXMgY29udGV4dC4qIGF0dHJpYnV0ZXMgKFRocm93YWJsZXMgdXNlIHNldEV4Y2VwdGlvbigpKQogKiAtIEV4dHJhIHZhbHVlcyBhcyBleHRyYS4qIGF0dHJpYnV0ZXMKICoKICogQHBhcmFtIG51bGx8U2V2ZXJpdHlNYXBwZXIgJHNldmVyaXR5TWFwcGVyIEN1c3RvbSBzZXZlcml0eSBtYXBwZXIgKGRlZmF1bHRzIHRvIHN0YW5kYXJkIG1hcHBpbmcpCiAqIEBwYXJhbSBudWxsfFZhbHVlTm9ybWFsaXplciAkdmFsdWVOb3JtYWxpemVyIEN1c3RvbSB2YWx1ZSBub3JtYWxpemVyIChkZWZhdWx0cyB0byBzdGFuZGFyZCBub3JtYWxpemVyKQogKgogKiBFeGFtcGxlIHVzYWdlOgogKiBgYGBwaHAKICogJGNvbnZlcnRlciA9IGxvZ19yZWNvcmRfY29udmVydGVyKCk7CiAqICR0ZWxlbWV0cnlSZWNvcmQgPSAkY29udmVydGVyLT5jb252ZXJ0KCRtb25vbG9nUmVjb3JkKTsKICogYGBgCiAqCiAqIEV4YW1wbGUgd2l0aCBjdXN0b20gbWFwcGVyOgogKiBgYGBwaHAKICogJGNvbnZlcnRlciA9IGxvZ19yZWNvcmRfY29udmVydGVyKAogKiAgICAgc2V2ZXJpdHlNYXBwZXI6IHNldmVyaXR5X21hcHBlcihbCiAqICAgICAgICAgTGV2ZWw6OkRlYnVnLT52YWx1ZSA9PiBTZXZlcml0eTo6VFJBQ0UsCiAqICAgICBdKQogKiApOwogKiBgYGAKICov"},{"repository_path":"src\/bridge\/monolog\/telemetry\/src\/Flow\/Bridge\/Monolog\/Telemetry\/DSL\/functions.php","start_line_in_file":144,"slug":"telemetry-handler","name":"telemetry_handler","namespace":"Flow\\Bridge\\Monolog\\Telemetry\\DSL","parameters":[{"name":"logger","type":[{"name":"Logger","namespace":"Flow\\Telemetry\\Logger","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"converter","type":[{"name":"LogRecordConverter","namespace":"Flow\\Bridge\\Monolog\\Telemetry","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\Bridge\\Monolog\\Telemetry\\LogRecordConverter::..."},{"name":"level","type":[{"name":"Level","namespace":"Monolog","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Monolog\\Level::..."},{"name":"bubble","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"true"}],"return_type":[{"name":"TelemetryHandler","namespace":"Flow\\Bridge\\Monolog\\Telemetry","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"MONOLOG_TELEMETRY_BRIDGE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFRlbGVtZXRyeUhhbmRsZXIgZm9yIGZvcndhcmRpbmcgTW9ub2xvZyBsb2dzIHRvIEZsb3cgVGVsZW1ldHJ5LgogKgogKiBAcGFyYW0gTG9nZ2VyICRsb2dnZXIgVGhlIEZsb3cgVGVsZW1ldHJ5IGxvZ2dlciB0byBmb3J3YXJkIGxvZ3MgdG8KICogQHBhcmFtIExvZ1JlY29yZENvbnZlcnRlciAkY29udmVydGVyIENvbnZlcnRlciB0byB0cmFuc2Zvcm0gTW9ub2xvZyBMb2dSZWNvcmQgdG8gVGVsZW1ldHJ5IExvZ1JlY29yZAogKiBAcGFyYW0gTGV2ZWwgJGxldmVsIFRoZSBtaW5pbXVtIGxvZ2dpbmcgbGV2ZWwgYXQgd2hpY2ggdGhpcyBoYW5kbGVyIHdpbGwgYmUgdHJpZ2dlcmVkCiAqIEBwYXJhbSBib29sICRidWJibGUgV2hldGhlciBtZXNzYWdlcyBoYW5kbGVkIGJ5IHRoaXMgaGFuZGxlciBzaG91bGQgYnViYmxlIHVwIHRvIG90aGVyIGhhbmRsZXJzCiAqCiAqIEV4YW1wbGUgdXNhZ2U6CiAqIGBgYHBocAogKiB1c2UgTW9ub2xvZ1xMb2dnZXIgYXMgTW9ub2xvZ0xvZ2dlcjsKICogdXNlIGZ1bmN0aW9uIEZsb3dcQnJpZGdlXE1vbm9sb2dcVGVsZW1ldHJ5XERTTFx0ZWxlbWV0cnlfaGFuZGxlcjsKICogdXNlIGZ1bmN0aW9uIEZsb3dcVGVsZW1ldHJ5XERTTFx0ZWxlbWV0cnk7CiAqCiAqICR0ZWxlbWV0cnkgPSB0ZWxlbWV0cnkoKTsKICogJGxvZ2dlciA9ICR0ZWxlbWV0cnktPmxvZ2dlcignbXktYXBwJyk7CiAqCiAqICRtb25vbG9nID0gbmV3IE1vbm9sb2dMb2dnZXIoJ2NoYW5uZWwnKTsKICogJG1vbm9sb2ctPnB1c2hIYW5kbGVyKHRlbGVtZXRyeV9oYW5kbGVyKCRsb2dnZXIpKTsKICoKICogJG1vbm9sb2ctPmluZm8oJ1VzZXIgbG9nZ2VkIGluJywgWyd1c2VyX2lkJyA9PiAxMjNdKTsKICogLy8g4oaSIEZvcndhcmRlZCB0byBGbG93IFRlbGVtZXRyeSB3aXRoIElORk8gc2V2ZXJpdHkKICogYGBgCiAqCiAqIEV4YW1wbGUgd2l0aCBjdXN0b20gY29udmVydGVyOgogKiBgYGBwaHAKICogJGNvbnZlcnRlciA9IGxvZ19yZWNvcmRfY29udmVydGVyKAogKiAgICAgc2V2ZXJpdHlNYXBwZXI6IHNldmVyaXR5X21hcHBlcihbCiAqICAgICAgICAgTGV2ZWw6OkRlYnVnLT52YWx1ZSA9PiBTZXZlcml0eTo6VFJBQ0UsCiAqICAgICBdKQogKiApOwogKiAkbW9ub2xvZy0+cHVzaEhhbmRsZXIodGVsZW1ldHJ5X2hhbmRsZXIoJGxvZ2dlciwgJGNvbnZlcnRlcikpOwogKiBgYGAKICov"},{"repository_path":"src\/bridge\/symfony\/http-foundation-telemetry\/src\/Flow\/Bridge\/Symfony\/HttpFoundationTelemetry\/DSL\/functions.php","start_line_in_file":12,"slug":"symfony-request-carrier","name":"symfony_request_carrier","namespace":"Flow\\Bridge\\Symfony\\HttpFoundationTelemetry\\DSL","parameters":[{"name":"request","type":[{"name":"Request","namespace":"Symfony\\Component\\HttpFoundation","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"RequestCarrier","namespace":"Flow\\Bridge\\Symfony\\HttpFoundationTelemetry","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"SYMFONY_HTTP_FOUNDATION_TELEMETRY_BRIDGE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/bridge\/symfony\/http-foundation-telemetry\/src\/Flow\/Bridge\/Symfony\/HttpFoundationTelemetry\/DSL\/functions.php","start_line_in_file":18,"slug":"symfony-response-carrier","name":"symfony_response_carrier","namespace":"Flow\\Bridge\\Symfony\\HttpFoundationTelemetry\\DSL","parameters":[{"name":"response","type":[{"name":"Response","namespace":"Symfony\\Component\\HttpFoundation","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ResponseCarrier","namespace":"Flow\\Bridge\\Symfony\\HttpFoundationTelemetry","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"SYMFONY_HTTP_FOUNDATION_TELEMETRY_BRIDGE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/bridge\/psr7\/telemetry\/src\/Flow\/Bridge\/Psr7\/Telemetry\/DSL\/functions.php","start_line_in_file":12,"slug":"psr7-request-carrier","name":"psr7_request_carrier","namespace":"Flow\\Bridge\\Psr7\\Telemetry\\DSL","parameters":[{"name":"request","type":[{"name":"ServerRequestInterface","namespace":"Psr\\Http\\Message","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"RequestCarrier","namespace":"Flow\\Bridge\\Psr7\\Telemetry","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PSR7_TELEMETRY_BRIDGE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/bridge\/psr7\/telemetry\/src\/Flow\/Bridge\/Psr7\/Telemetry\/DSL\/functions.php","start_line_in_file":18,"slug":"psr7-response-carrier","name":"psr7_response_carrier","namespace":"Flow\\Bridge\\Psr7\\Telemetry\\DSL","parameters":[{"name":"response","type":[{"name":"ResponseInterface","namespace":"Psr\\Http\\Message","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"ResponseCarrier","namespace":"Flow\\Bridge\\Psr7\\Telemetry","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PSR7_TELEMETRY_BRIDGE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/bridge\/psr18\/telemetry\/src\/Flow\/Bridge\/Psr18\/Telemetry\/DSL\/functions.php","start_line_in_file":13,"slug":"psr18-traceable-client","name":"psr18_traceable_client","namespace":"Flow\\Bridge\\Psr18\\Telemetry\\DSL","parameters":[{"name":"client","type":[{"name":"ClientInterface","namespace":"Psr\\Http\\Client","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"telemetry","type":[{"name":"Telemetry","namespace":"Flow\\Telemetry","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"PSR18TraceableClient","namespace":"Flow\\Bridge\\Psr18\\Telemetry","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"PSR18_TELEMETRY_BRIDGE","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":null},{"repository_path":"src\/bridge\/telemetry\/otlp\/src\/Flow\/Bridge\/Telemetry\/OTLP\/DSL\/functions.php","start_line_in_file":36,"slug":"otlp-json-serializer","name":"otlp_json_serializer","namespace":"Flow\\Bridge\\Telemetry\\OTLP\\DSL","parameters":[],"return_type":[{"name":"JsonSerializer","namespace":"Flow\\Bridge\\Telemetry\\OTLP\\Serializer","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY_OTLP","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIEpTT04gc2VyaWFsaXplciBmb3IgT1RMUC4KICoKICogUmV0dXJucyBhIEpzb25TZXJpYWxpemVyIHRoYXQgY29udmVydHMgdGVsZW1ldHJ5IGRhdGEgdG8gT1RMUCBKU09OIHdpcmUgZm9ybWF0LgogKiBVc2UgdGhpcyB3aXRoIEh0dHBUcmFuc3BvcnQgZm9yIEpTT04gb3ZlciBIVFRQLgogKgogKiBFeGFtcGxlIHVzYWdlOgogKiBgYGBwaHAKICogJHNlcmlhbGl6ZXIgPSBvdGxwX2pzb25fc2VyaWFsaXplcigpOwogKiAkdHJhbnNwb3J0ID0gb3RscF9odHRwX3RyYW5zcG9ydCgkY2xpZW50LCAkcmVxRmFjdG9yeSwgJHN0cmVhbUZhY3RvcnksICRlbmRwb2ludCwgJHNlcmlhbGl6ZXIpOwogKiBgYGAKICov"},{"repository_path":"src\/bridge\/telemetry\/otlp\/src\/Flow\/Bridge\/Telemetry\/OTLP\/DSL\/functions.php","start_line_in_file":58,"slug":"otlp-protobuf-serializer","name":"otlp_protobuf_serializer","namespace":"Flow\\Bridge\\Telemetry\\OTLP\\DSL","parameters":[],"return_type":[{"name":"ProtobufSerializer","namespace":"Flow\\Bridge\\Telemetry\\OTLP\\Serializer","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY_OTLP","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIFByb3RvYnVmIHNlcmlhbGl6ZXIgZm9yIE9UTFAuCiAqCiAqIFJldHVybnMgYSBQcm90b2J1ZlNlcmlhbGl6ZXIgdGhhdCBjb252ZXJ0cyB0ZWxlbWV0cnkgZGF0YSB0byBPVExQIFByb3RvYnVmIGJpbmFyeSBmb3JtYXQuCiAqIFVzZSB0aGlzIHdpdGggSHR0cFRyYW5zcG9ydCBmb3IgUHJvdG9idWYgb3ZlciBIVFRQLCBvciB3aXRoIEdycGNUcmFuc3BvcnQuCiAqCiAqIFJlcXVpcmVzOgogKiAtIGdvb2dsZS9wcm90b2J1ZiBwYWNrYWdlCiAqIC0gb3Blbi10ZWxlbWV0cnkvZ2VuLW90bHAtcHJvdG9idWYgcGFja2FnZQogKgogKiBFeGFtcGxlIHVzYWdlOgogKiBgYGBwaHAKICogJHNlcmlhbGl6ZXIgPSBvdGxwX3Byb3RvYnVmX3NlcmlhbGl6ZXIoKTsKICogJHRyYW5zcG9ydCA9IG90bHBfaHR0cF90cmFuc3BvcnQoJGNsaWVudCwgJHJlcUZhY3RvcnksICRzdHJlYW1GYWN0b3J5LCAkZW5kcG9pbnQsICRzZXJpYWxpemVyKTsKICogYGBgCiAqLw=="},{"repository_path":"src\/bridge\/telemetry\/otlp\/src\/Flow\/Bridge\/Telemetry\/OTLP\/DSL\/functions.php","start_line_in_file":98,"slug":"otlp-http-transport","name":"otlp_http_transport","namespace":"Flow\\Bridge\\Telemetry\\OTLP\\DSL","parameters":[{"name":"client","type":[{"name":"ClientInterface","namespace":"Psr\\Http\\Client","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"requestFactory","type":[{"name":"RequestFactoryInterface","namespace":"Psr\\Http\\Message","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"streamFactory","type":[{"name":"StreamFactoryInterface","namespace":"Psr\\Http\\Message","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"endpoint","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"serializer","type":[{"name":"Serializer","namespace":"Flow\\Telemetry\\Serializer","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"headers","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"}],"return_type":[{"name":"HttpTransport","namespace":"Flow\\Bridge\\Telemetry\\OTLP\\Transport","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY_OTLP","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBIVFRQIHRyYW5zcG9ydCBmb3IgT1RMUCBlbmRwb2ludHMuCiAqCiAqIENyZWF0ZXMgYW4gSHR0cFRyYW5zcG9ydCBjb25maWd1cmVkIHRvIHNlbmQgdGVsZW1ldHJ5IGRhdGEgdG8gYW4gT1RMUC1jb21wYXRpYmxlCiAqIGVuZHBvaW50IHVzaW5nIFBTUi0xOCBIVFRQIGNsaWVudC4gU3VwcG9ydHMgYm90aCBKU09OIGFuZCBQcm90b2J1ZiBmb3JtYXRzLgogKgogKiBFeGFtcGxlIHVzYWdlOgogKiBgYGBwaHAKICogLy8gSlNPTiBvdmVyIEhUVFAKICogJHRyYW5zcG9ydCA9IG90bHBfaHR0cF90cmFuc3BvcnQoCiAqICAgICBjbGllbnQ6ICRjbGllbnQsCiAqICAgICByZXF1ZXN0RmFjdG9yeTogJHBzcjE3RmFjdG9yeSwKICogICAgIHN0cmVhbUZhY3Rvcnk6ICRwc3IxN0ZhY3RvcnksCiAqICAgICBlbmRwb2ludDogJ2h0dHA6Ly9sb2NhbGhvc3Q6NDMxOCcsCiAqICAgICBzZXJpYWxpemVyOiBvdGxwX2pzb25fc2VyaWFsaXplcigpLAogKiApOwogKgogKiAvLyBQcm90b2J1ZiBvdmVyIEhUVFAKICogJHRyYW5zcG9ydCA9IG90bHBfaHR0cF90cmFuc3BvcnQoCiAqICAgICBjbGllbnQ6ICRjbGllbnQsCiAqICAgICByZXF1ZXN0RmFjdG9yeTogJHBzcjE3RmFjdG9yeSwKICogICAgIHN0cmVhbUZhY3Rvcnk6ICRwc3IxN0ZhY3RvcnksCiAqICAgICBlbmRwb2ludDogJ2h0dHA6Ly9sb2NhbGhvc3Q6NDMxOCcsCiAqICAgICBzZXJpYWxpemVyOiBvdGxwX3Byb3RvYnVmX3NlcmlhbGl6ZXIoKSwKICogKTsKICogYGBgCiAqCiAqIEBwYXJhbSBDbGllbnRJbnRlcmZhY2UgJGNsaWVudCBQU1ItMTggSFRUUCBjbGllbnQKICogQHBhcmFtIFJlcXVlc3RGYWN0b3J5SW50ZXJmYWNlICRyZXF1ZXN0RmFjdG9yeSBQU1ItMTcgcmVxdWVzdCBmYWN0b3J5CiAqIEBwYXJhbSBTdHJlYW1GYWN0b3J5SW50ZXJmYWNlICRzdHJlYW1GYWN0b3J5IFBTUi0xNyBzdHJlYW0gZmFjdG9yeQogKiBAcGFyYW0gc3RyaW5nICRlbmRwb2ludCBPVExQIGVuZHBvaW50IFVSTCAoZS5nLiwgJ2h0dHA6Ly9sb2NhbGhvc3Q6NDMxOCcpCiAqIEBwYXJhbSBTZXJpYWxpemVyICRzZXJpYWxpemVyIFNlcmlhbGl6ZXIgZm9yIGVuY29kaW5nIHRlbGVtZXRyeSBkYXRhIChKU09OIG9yIFByb3RvYnVmKQogKiBAcGFyYW0gYXJyYXk8c3RyaW5nLCBzdHJpbmc+ICRoZWFkZXJzIEFkZGl0aW9uYWwgaGVhZGVycyB0byBpbmNsdWRlIGluIHJlcXVlc3RzCiAqLw=="},{"repository_path":"src\/bridge\/telemetry\/otlp\/src\/Flow\/Bridge\/Telemetry\/OTLP\/DSL\/functions.php","start_line_in_file":134,"slug":"otlp-grpc-transport","name":"otlp_grpc_transport","namespace":"Flow\\Bridge\\Telemetry\\OTLP\\DSL","parameters":[{"name":"endpoint","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"serializer","type":[{"name":"ProtobufSerializer","namespace":"Flow\\Bridge\\Telemetry\\OTLP\\Serializer","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"headers","type":[{"name":"array","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"[]"},{"name":"insecure","type":[{"name":"bool","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"true"}],"return_type":[{"name":"GrpcTransport","namespace":"Flow\\Bridge\\Telemetry\\OTLP\\Transport","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY_OTLP","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGdSUEMgdHJhbnNwb3J0IGZvciBPVExQIGVuZHBvaW50cy4KICoKICogQ3JlYXRlcyBhIEdycGNUcmFuc3BvcnQgY29uZmlndXJlZCB0byBzZW5kIHRlbGVtZXRyeSBkYXRhIHRvIGFuIE9UTFAtY29tcGF0aWJsZQogKiBlbmRwb2ludCB1c2luZyBnUlBDIHByb3RvY29sIHdpdGggUHJvdG9idWYgc2VyaWFsaXphdGlvbi4KICoKICogUmVxdWlyZXM6CiAqIC0gZXh0LWdycGMgUEhQIGV4dGVuc2lvbgogKiAtIGdvb2dsZS9wcm90b2J1ZiBwYWNrYWdlCiAqIC0gb3Blbi10ZWxlbWV0cnkvZ2VuLW90bHAtcHJvdG9idWYgcGFja2FnZQogKgogKiBFeGFtcGxlIHVzYWdlOgogKiBgYGBwaHAKICogJHRyYW5zcG9ydCA9IG90bHBfZ3JwY190cmFuc3BvcnQoCiAqICAgICBlbmRwb2ludDogJ2xvY2FsaG9zdDo0MzE3JywKICogICAgIHNlcmlhbGl6ZXI6IG90bHBfcHJvdG9idWZfc2VyaWFsaXplcigpLAogKiApOwogKiBgYGAKICoKICogQHBhcmFtIHN0cmluZyAkZW5kcG9pbnQgZ1JQQyBlbmRwb2ludCAoZS5nLiwgJ2xvY2FsaG9zdDo0MzE3JykKICogQHBhcmFtIFByb3RvYnVmU2VyaWFsaXplciAkc2VyaWFsaXplciBQcm90b2J1ZiBzZXJpYWxpemVyIGZvciBlbmNvZGluZyB0ZWxlbWV0cnkgZGF0YQogKiBAcGFyYW0gYXJyYXk8c3RyaW5nLCBzdHJpbmc+ICRoZWFkZXJzIEFkZGl0aW9uYWwgaGVhZGVycyAobWV0YWRhdGEpIHRvIGluY2x1ZGUgaW4gcmVxdWVzdHMKICogQHBhcmFtIGJvb2wgJGluc2VjdXJlIFdoZXRoZXIgdG8gdXNlIGluc2VjdXJlIGNoYW5uZWwgY3JlZGVudGlhbHMgKGRlZmF1bHQgdHJ1ZSBmb3IgbG9jYWwgZGV2KQogKi8="},{"repository_path":"src\/bridge\/telemetry\/otlp\/src\/Flow\/Bridge\/Telemetry\/OTLP\/DSL\/functions.php","start_line_in_file":162,"slug":"otlp-curl-options","name":"otlp_curl_options","namespace":"Flow\\Bridge\\Telemetry\\OTLP\\DSL","parameters":[],"return_type":[{"name":"CurlTransportOptions","namespace":"Flow\\Bridge\\Telemetry\\OTLP\\Transport","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY_OTLP","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBjdXJsIHRyYW5zcG9ydCBvcHRpb25zIGZvciBPVExQLgogKgogKiBSZXR1cm5zIGEgQ3VybFRyYW5zcG9ydE9wdGlvbnMgYnVpbGRlciBmb3IgY29uZmlndXJpbmcgY3VybCB0cmFuc3BvcnQgc2V0dGluZ3MKICogdXNpbmcgYSBmbHVlbnQgaW50ZXJmYWNlLgogKgogKiBFeGFtcGxlIHVzYWdlOgogKiBgYGBwaHAKICogJG9wdGlvbnMgPSBvdGxwX2N1cmxfb3B0aW9ucygpCiAqICAgICAtPndpdGhUaW1lb3V0KDYwKQogKiAgICAgLT53aXRoQ29ubmVjdFRpbWVvdXQoMTUpCiAqICAgICAtPndpdGhIZWFkZXIoJ0F1dGhvcml6YXRpb24nLCAnQmVhcmVyIHRva2VuJykKICogICAgIC0+d2l0aENvbXByZXNzaW9uKCkKICogICAgIC0+d2l0aFNzbFZlcmlmaWNhdGlvbih2ZXJpZnlQZWVyOiB0cnVlKTsKICoKICogJHRyYW5zcG9ydCA9IG90bHBfY3VybF90cmFuc3BvcnQoJGVuZHBvaW50LCAkc2VyaWFsaXplciwgJG9wdGlvbnMpOwogKiBgYGAKICov"},{"repository_path":"src\/bridge\/telemetry\/otlp\/src\/Flow\/Bridge\/Telemetry\/OTLP\/DSL\/functions.php","start_line_in_file":201,"slug":"otlp-curl-transport","name":"otlp_curl_transport","namespace":"Flow\\Bridge\\Telemetry\\OTLP\\DSL","parameters":[{"name":"endpoint","type":[{"name":"string","namespace":null,"is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"serializer","type":[{"name":"Serializer","namespace":"Flow\\Telemetry\\Serializer","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"options","type":[{"name":"CurlTransportOptions","namespace":"Flow\\Bridge\\Telemetry\\OTLP\\Transport","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\Bridge\\Telemetry\\OTLP\\Transport\\CurlTransportOptions::..."}],"return_type":[{"name":"CurlTransport","namespace":"Flow\\Bridge\\Telemetry\\OTLP\\Transport","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY_OTLP","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBhc3luYyBjdXJsIHRyYW5zcG9ydCBmb3IgT1RMUCBlbmRwb2ludHMuCiAqCiAqIENyZWF0ZXMgYSBDdXJsVHJhbnNwb3J0IHRoYXQgdXNlcyBjdXJsX211bHRpIGZvciBub24tYmxvY2tpbmcgSS9PLgogKiBVbmxpa2UgSHR0cFRyYW5zcG9ydCAoUFNSLTE4KSwgdGhpcyB0cmFuc3BvcnQgcXVldWVzIHJlcXVlc3RzIGFuZCBleGVjdXRlcwogKiB0aGVtIGFzeW5jaHJvbm91c2x5LiBDb21wbGV0ZWQgcmVxdWVzdHMgYXJlIHByb2Nlc3NlZCBvbiBzdWJzZXF1ZW50IHNlbmQoKQogKiBjYWxscyBvciBvbiBzaHV0ZG93bigpLgogKgogKiBSZXF1aXJlczogZXh0LWN1cmwgUEhQIGV4dGVuc2lvbgogKgogKiBFeGFtcGxlIHVzYWdlOgogKiBgYGBwaHAKICogLy8gSlNPTiBvdmVyIEhUVFAgKGFzeW5jKSB3aXRoIGRlZmF1bHQgb3B0aW9ucwogKiAkdHJhbnNwb3J0ID0gb3RscF9jdXJsX3RyYW5zcG9ydCgKICogICAgIGVuZHBvaW50OiAnaHR0cDovL2xvY2FsaG9zdDo0MzE4JywKICogICAgIHNlcmlhbGl6ZXI6IG90bHBfanNvbl9zZXJpYWxpemVyKCksCiAqICk7CiAqCiAqIC8vIFByb3RvYnVmIG92ZXIgSFRUUCAoYXN5bmMpIHdpdGggY3VzdG9tIG9wdGlvbnMKICogJHRyYW5zcG9ydCA9IG90bHBfY3VybF90cmFuc3BvcnQoCiAqICAgICBlbmRwb2ludDogJ2h0dHA6Ly9sb2NhbGhvc3Q6NDMxOCcsCiAqICAgICBzZXJpYWxpemVyOiBvdGxwX3Byb3RvYnVmX3NlcmlhbGl6ZXIoKSwKICogICAgIG9wdGlvbnM6IG90bHBfY3VybF9vcHRpb25zKCkKICogICAgICAgICAtPndpdGhUaW1lb3V0KDYwKQogKiAgICAgICAgIC0+d2l0aEhlYWRlcignQXV0aG9yaXphdGlvbicsICdCZWFyZXIgdG9rZW4nKQogKiAgICAgICAgIC0+d2l0aENvbXByZXNzaW9uKCksCiAqICk7CiAqIGBgYAogKgogKiBAcGFyYW0gc3RyaW5nICRlbmRwb2ludCBPVExQIGVuZHBvaW50IFVSTCAoZS5nLiwgJ2h0dHA6Ly9sb2NhbGhvc3Q6NDMxOCcpCiAqIEBwYXJhbSBTZXJpYWxpemVyICRzZXJpYWxpemVyIFNlcmlhbGl6ZXIgZm9yIGVuY29kaW5nIHRlbGVtZXRyeSBkYXRhIChKU09OIG9yIFByb3RvYnVmKQogKiBAcGFyYW0gQ3VybFRyYW5zcG9ydE9wdGlvbnMgJG9wdGlvbnMgVHJhbnNwb3J0IGNvbmZpZ3VyYXRpb24gb3B0aW9ucwogKi8="},{"repository_path":"src\/bridge\/telemetry\/otlp\/src\/Flow\/Bridge\/Telemetry\/OTLP\/DSL\/functions.php","start_line_in_file":221,"slug":"otlp-span-exporter","name":"otlp_span_exporter","namespace":"Flow\\Bridge\\Telemetry\\OTLP\\DSL","parameters":[{"name":"transport","type":[{"name":"Transport","namespace":"Flow\\Telemetry\\Transport","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"OTLPSpanExporter","namespace":"Flow\\Bridge\\Telemetry\\OTLP\\Exporter","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY_OTLP","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBPVExQIHNwYW4gZXhwb3J0ZXIuCiAqCiAqIEV4YW1wbGUgdXNhZ2U6CiAqIGBgYHBocAogKiAkZXhwb3J0ZXIgPSBvdGxwX3NwYW5fZXhwb3J0ZXIoJHRyYW5zcG9ydCk7CiAqICRwcm9jZXNzb3IgPSBiYXRjaGluZ19zcGFuX3Byb2Nlc3NvcigkZXhwb3J0ZXIpOwogKiBgYGAKICoKICogQHBhcmFtIFRyYW5zcG9ydCAkdHJhbnNwb3J0IFRoZSB0cmFuc3BvcnQgZm9yIHNlbmRpbmcgc3BhbiBkYXRhCiAqLw=="},{"repository_path":"src\/bridge\/telemetry\/otlp\/src\/Flow\/Bridge\/Telemetry\/OTLP\/DSL\/functions.php","start_line_in_file":238,"slug":"otlp-metric-exporter","name":"otlp_metric_exporter","namespace":"Flow\\Bridge\\Telemetry\\OTLP\\DSL","parameters":[{"name":"transport","type":[{"name":"Transport","namespace":"Flow\\Telemetry\\Transport","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"OTLPMetricExporter","namespace":"Flow\\Bridge\\Telemetry\\OTLP\\Exporter","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY_OTLP","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBPVExQIG1ldHJpYyBleHBvcnRlci4KICoKICogRXhhbXBsZSB1c2FnZToKICogYGBgcGhwCiAqICRleHBvcnRlciA9IG90bHBfbWV0cmljX2V4cG9ydGVyKCR0cmFuc3BvcnQpOwogKiAkcHJvY2Vzc29yID0gYmF0Y2hpbmdfbWV0cmljX3Byb2Nlc3NvcigkZXhwb3J0ZXIpOwogKiBgYGAKICoKICogQHBhcmFtIFRyYW5zcG9ydCAkdHJhbnNwb3J0IFRoZSB0cmFuc3BvcnQgZm9yIHNlbmRpbmcgbWV0cmljIGRhdGEKICov"},{"repository_path":"src\/bridge\/telemetry\/otlp\/src\/Flow\/Bridge\/Telemetry\/OTLP\/DSL\/functions.php","start_line_in_file":255,"slug":"otlp-log-exporter","name":"otlp_log_exporter","namespace":"Flow\\Bridge\\Telemetry\\OTLP\\DSL","parameters":[{"name":"transport","type":[{"name":"Transport","namespace":"Flow\\Telemetry\\Transport","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null}],"return_type":[{"name":"OTLPLogExporter","namespace":"Flow\\Bridge\\Telemetry\\OTLP\\Exporter","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY_OTLP","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhbiBPVExQIGxvZyBleHBvcnRlci4KICoKICogRXhhbXBsZSB1c2FnZToKICogYGBgcGhwCiAqICRleHBvcnRlciA9IG90bHBfbG9nX2V4cG9ydGVyKCR0cmFuc3BvcnQpOwogKiAkcHJvY2Vzc29yID0gYmF0Y2hpbmdfbG9nX3Byb2Nlc3NvcigkZXhwb3J0ZXIpOwogKiBgYGAKICoKICogQHBhcmFtIFRyYW5zcG9ydCAkdHJhbnNwb3J0IFRoZSB0cmFuc3BvcnQgZm9yIHNlbmRpbmcgbG9nIGRhdGEKICov"},{"repository_path":"src\/bridge\/telemetry\/otlp\/src\/Flow\/Bridge\/Telemetry\/OTLP\/DSL\/functions.php","start_line_in_file":276,"slug":"otlp-tracer-provider","name":"otlp_tracer_provider","namespace":"Flow\\Bridge\\Telemetry\\OTLP\\DSL","parameters":[{"name":"processor","type":[{"name":"SpanProcessor","namespace":"Flow\\Telemetry\\Tracer","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"clock","type":[{"name":"ClockInterface","namespace":"Psr\\Clock","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"sampler","type":[{"name":"Sampler","namespace":"Flow\\Telemetry\\Tracer\\Sampler","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\Telemetry\\Tracer\\Sampler\\AlwaysOnSampler::..."},{"name":"contextStorage","type":[{"name":"ContextStorage","namespace":"Flow\\Telemetry\\Context","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\Telemetry\\Context\\MemoryContextStorage::..."}],"return_type":[{"name":"TracerProvider","namespace":"Flow\\Telemetry\\Tracer","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY_OTLP","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIHRyYWNlciBwcm92aWRlciBjb25maWd1cmVkIGZvciBPVExQIGV4cG9ydC4KICoKICogRXhhbXBsZSB1c2FnZToKICogYGBgcGhwCiAqICRwcm9jZXNzb3IgPSBiYXRjaGluZ19zcGFuX3Byb2Nlc3NvcihvdGxwX3NwYW5fZXhwb3J0ZXIoJHRyYW5zcG9ydCkpOwogKiAkcHJvdmlkZXIgPSBvdGxwX3RyYWNlcl9wcm92aWRlcigkcHJvY2Vzc29yLCAkY2xvY2spOwogKiAkdHJhY2VyID0gJHByb3ZpZGVyLT50cmFjZXIoJHJlc291cmNlLCAnbXktc2VydmljZScsICcxLjAuMCcpOwogKiBgYGAKICoKICogQHBhcmFtIFNwYW5Qcm9jZXNzb3IgJHByb2Nlc3NvciBUaGUgcHJvY2Vzc29yIGZvciBoYW5kbGluZyBzcGFucwogKiBAcGFyYW0gQ2xvY2tJbnRlcmZhY2UgJGNsb2NrIFRoZSBjbG9jayBmb3IgdGltZXN0YW1wcwogKiBAcGFyYW0gU2FtcGxlciAkc2FtcGxlciBUaGUgc2FtcGxlciBmb3IgZGVjaWRpbmcgd2hldGhlciB0byByZWNvcmQgc3BhbnMKICogQHBhcmFtIENvbnRleHRTdG9yYWdlICRjb250ZXh0U3RvcmFnZSBUaGUgY29udGV4dCBzdG9yYWdlIGZvciBwcm9wYWdhdGluZyB0cmFjZSBjb250ZXh0CiAqLw=="},{"repository_path":"src\/bridge\/telemetry\/otlp\/src\/Flow\/Bridge\/Telemetry\/OTLP\/DSL\/functions.php","start_line_in_file":300,"slug":"otlp-meter-provider","name":"otlp_meter_provider","namespace":"Flow\\Bridge\\Telemetry\\OTLP\\DSL","parameters":[{"name":"processor","type":[{"name":"MetricProcessor","namespace":"Flow\\Telemetry\\Meter","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"clock","type":[{"name":"ClockInterface","namespace":"Psr\\Clock","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"temporality","type":[{"name":"AggregationTemporality","namespace":"Flow\\Telemetry\\Meter","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\Telemetry\\Meter\\AggregationTemporality::..."}],"return_type":[{"name":"MeterProvider","namespace":"Flow\\Telemetry\\Meter","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY_OTLP","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIG1ldGVyIHByb3ZpZGVyIGNvbmZpZ3VyZWQgZm9yIE9UTFAgZXhwb3J0LgogKgogKiBFeGFtcGxlIHVzYWdlOgogKiBgYGBwaHAKICogJHByb2Nlc3NvciA9IGJhdGNoaW5nX21ldHJpY19wcm9jZXNzb3Iob3RscF9tZXRyaWNfZXhwb3J0ZXIoJHRyYW5zcG9ydCkpOwogKiAkcHJvdmlkZXIgPSBvdGxwX21ldGVyX3Byb3ZpZGVyKCRwcm9jZXNzb3IsICRjbG9jayk7CiAqICRtZXRlciA9ICRwcm92aWRlci0+bWV0ZXIoJHJlc291cmNlLCAnbXktc2VydmljZScsICcxLjAuMCcpOwogKiBgYGAKICoKICogQHBhcmFtIE1ldHJpY1Byb2Nlc3NvciAkcHJvY2Vzc29yIFRoZSBwcm9jZXNzb3IgZm9yIGhhbmRsaW5nIG1ldHJpY3MKICogQHBhcmFtIENsb2NrSW50ZXJmYWNlICRjbG9jayBUaGUgY2xvY2sgZm9yIHRpbWVzdGFtcHMKICogQHBhcmFtIEFnZ3JlZ2F0aW9uVGVtcG9yYWxpdHkgJHRlbXBvcmFsaXR5IFRoZSBhZ2dyZWdhdGlvbiB0ZW1wb3JhbGl0eSBmb3IgbWV0cmljcwogKi8="},{"repository_path":"src\/bridge\/telemetry\/otlp\/src\/Flow\/Bridge\/Telemetry\/OTLP\/DSL\/functions.php","start_line_in_file":323,"slug":"otlp-logger-provider","name":"otlp_logger_provider","namespace":"Flow\\Bridge\\Telemetry\\OTLP\\DSL","parameters":[{"name":"processor","type":[{"name":"LogProcessor","namespace":"Flow\\Telemetry\\Logger","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"clock","type":[{"name":"ClockInterface","namespace":"Psr\\Clock","is_nullable":false,"is_variadic":false}],"has_default_value":false,"is_nullable":false,"is_variadic":false,"default_value":null},{"name":"contextStorage","type":[{"name":"ContextStorage","namespace":"Flow\\Telemetry\\Context","is_nullable":false,"is_variadic":false}],"has_default_value":true,"is_nullable":false,"is_variadic":false,"default_value":"Flow\\Telemetry\\Context\\MemoryContextStorage::..."}],"return_type":[{"name":"LoggerProvider","namespace":"Flow\\Telemetry\\Logger","is_nullable":false,"is_variadic":false}],"attributes":[{"name":"DocumentationDSL","namespace":"Flow\\ETL\\Attribute","arguments":{"module":"TELEMETRY_OTLP","type":"HELPER"}}],"scalar_function_chain":false,"doc_comment":"LyoqCiAqIENyZWF0ZSBhIGxvZ2dlciBwcm92aWRlciBjb25maWd1cmVkIGZvciBPVExQIGV4cG9ydC4KICoKICogRXhhbXBsZSB1c2FnZToKICogYGBgcGhwCiAqICRwcm9jZXNzb3IgPSBiYXRjaGluZ19sb2dfcHJvY2Vzc29yKG90bHBfbG9nX2V4cG9ydGVyKCR0cmFuc3BvcnQpKTsKICogJHByb3ZpZGVyID0gb3RscF9sb2dnZXJfcHJvdmlkZXIoJHByb2Nlc3NvciwgJGNsb2NrKTsKICogJGxvZ2dlciA9ICRwcm92aWRlci0+bG9nZ2VyKCRyZXNvdXJjZSwgJ215LXNlcnZpY2UnLCAnMS4wLjAnKTsKICogYGBgCiAqCiAqIEBwYXJhbSBMb2dQcm9jZXNzb3IgJHByb2Nlc3NvciBUaGUgcHJvY2Vzc29yIGZvciBoYW5kbGluZyBsb2cgcmVjb3JkcwogKiBAcGFyYW0gQ2xvY2tJbnRlcmZhY2UgJGNsb2NrIFRoZSBjbG9jayBmb3IgdGltZXN0YW1wcwogKiBAcGFyYW0gQ29udGV4dFN0b3JhZ2UgJGNvbnRleHRTdG9yYWdlIFRoZSBjb250ZXh0IHN0b3JhZ2UgZm9yIHByb3BhZ2F0aW5nIGNvbnRleHQKICov"}] \ No newline at end of file From 49c6a7fbc0f56bbb9e404c6fc9d8ebcaf745f1bb Mon Sep 17 00:00:00 2001 From: Norbert Orzechowicz Date: Sat, 7 Mar 2026 15:51:01 -0600 Subject: [PATCH 3/3] fix: fragile website tests --- .../codemirror/completions/dataframe.js | 112 +- .../assets/codemirror/completions/dsl.js | 24 +- .../completions/scalarfunctionchain.js | 2 +- .../Tests/Fixtures/Completers/dataframe.js | 1201 -- .../Website/Tests/Fixtures/Completers/dsl.js | 12083 ---------------- .../Website/Tests/Fixtures/Completers/flow.js | 188 - .../Completers/scalarfunctionchain.js | 2065 --- .../Command/CompleterCommandTestCase.php | 16 - .../GenerateDSLCompleterCommandTest.php | 25 +- .../GenerateDataFrameCompleterCommandTest.php | 25 +- .../GenerateFlowCompleterCommandTest.php | 24 +- ...calarFunctionChainCompleterCommandTest.php | 24 +- 12 files changed, 102 insertions(+), 15687 deletions(-) delete mode 100644 web/landing/tests/Flow/Website/Tests/Fixtures/Completers/dataframe.js delete mode 100644 web/landing/tests/Flow/Website/Tests/Fixtures/Completers/dsl.js delete mode 100644 web/landing/tests/Flow/Website/Tests/Fixtures/Completers/flow.js delete mode 100644 web/landing/tests/Flow/Website/Tests/Fixtures/Completers/scalarfunctionchain.js diff --git a/web/landing/assets/codemirror/completions/dataframe.js b/web/landing/assets/codemirror/completions/dataframe.js index 2cb5686d4c..afdd595b9d 100644 --- a/web/landing/assets/codemirror/completions/dataframe.js +++ b/web/landing/assets/codemirror/completions/dataframe.js @@ -1,7 +1,7 @@ /** * CodeMirror Completer for Flow PHP DataFrame Methods * - * DataFrame methods: 61 + * DataFrame methods: 55 * DataFrame-returning methods from classes: 3 * * This completer triggers after DataFrame-returning methods @@ -10,7 +10,7 @@ import { CompletionContext, snippet } from "@codemirror/autocomplete" // Map of DataFrame-returning methods grouped by class -const dataframeReturningMethods = {"flow":["extract","from","process","read"],"dataframe":["aggregate","autoCast","batchBy","batchSize","cache","collect","collectRefs","constrain","crossJoin","drop","dropDuplicates","dropPartitions","duplicateRow","filter","filterPartitions","filters","join","joinEach","limit","load","map","match","mode","offset","onError","partitionBy","pivot","rename","renameAll","renameAllLowerCase","renameAllStyle","renameAllUpperCase","renameAllUpperCaseFirst","renameAllUpperCaseWord","renameEach","reorderEntries","rows","saveMode","select","sortBy","transform","until","validate","void","with","withEntries","withEntry","write"],"groupeddataframe":["aggregate"]}; +const dataframeReturningMethods = {"flow":["extract","from","process","read"],"dataframe":["aggregate","autoCast","batchBy","batchSize","cache","collect","collectRefs","constrain","crossJoin","drop","dropDuplicates","dropPartitions","duplicateRow","filter","filterPartitions","filters","join","joinEach","limit","load","map","match","mode","offset","onError","partitionBy","pivot","rename","renameEach","reorderEntries","rows","saveMode","select","sortBy","transform","until","validate","void","with","withEntries","withEntry","write"],"groupeddataframe":["aggregate"]}; // DataFrame methods const dataframeMethods = [ @@ -704,114 +704,6 @@ const dataframeMethods = [ }, apply: snippet("rename(" + "$" + "{" + "1:from" + "}" + ", " + "$" + "{" + "2:to" + "}" + ")"), boost: 10 - }, { - label: "renameAll", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -

- renameAll(string $search, string $replace) : self -
-
- @lazy
Iterate over all entry names and replace the given search string with replace string.
@deprecated use DataFrame::renameEach() with a RenameReplaceStrategy -
- ` - return div - }, - apply: snippet("renameAll(" + "$" + "{" + "1:search" + "}" + ", " + "$" + "{" + "2:replace" + "}" + ")"), - boost: 10 - }, { - label: "renameAllLowerCase", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- renameAllLowerCase() : self -
-
- @lazy
@deprecated use DataFrame::renameEach() with a selected StringStyles -
- ` - return div - }, - apply: snippet("renameAllLowerCase()"), - boost: 10 - }, { - label: "renameAllStyle", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- renameAllStyle(StringStyles|StringStyles|string $style) : self -
-
- @lazy
Rename all entries to a given style.
Please look into \\Flow\\ETL\\Function\\StyleConverter\\StringStyles class for all available styles.
@deprecated use DataFrame::renameEach() with a selected Style -
- ` - return div - }, - apply: snippet("renameAllStyle(" + "$" + "{" + "1:style" + "}" + ")"), - boost: 10 - }, { - label: "renameAllUpperCase", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- renameAllUpperCase() : self -
-
- @lazy
@deprecated use DataFrame::renameEach() with a selected Style -
- ` - return div - }, - apply: snippet("renameAllUpperCase()"), - boost: 10 - }, { - label: "renameAllUpperCaseFirst", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- renameAllUpperCaseFirst() : self -
-
- @lazy
@deprecated use DataFrame::renameEach() with a selected Style -
- ` - return div - }, - apply: snippet("renameAllUpperCaseFirst()"), - boost: 10 - }, { - label: "renameAllUpperCaseWord", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- renameAllUpperCaseWord() : self -
-
- @lazy
@deprecated use DataFrame::renameEach() with a selected Style -
- ` - return div - }, - apply: snippet("renameAllUpperCaseWord()"), - boost: 10 }, { label: "renameEach", type: "method", diff --git a/web/landing/assets/codemirror/completions/dsl.js b/web/landing/assets/codemirror/completions/dsl.js index 3727073efd..e81e696ea8 100644 --- a/web/landing/assets/codemirror/completions/dsl.js +++ b/web/landing/assets/codemirror/completions/dsl.js @@ -1,7 +1,7 @@ /** * CodeMirror Completer for Flow PHP DSL Functions * - * Total functions: 706 + * Total functions: 707 * * This completer provides autocompletion for all Flow PHP DSL functions: * - Extractors (flow-extractors) @@ -475,7 +475,7 @@ const dslFunctions = [ const div = document.createElement("div") div.innerHTML = `
- array_keys_style_convert(ScalarFunction $ref, StringStyles|StringStyles|string $style = Flow\\ETL\\String\\StringStyles::...) : ArrayKeysStyleConvert + array_keys_style_convert(ScalarFunction $ref, StringStyles|string $style = Flow\\ETL\\String\\StringStyles::...) : ArrayKeysStyleConvert
` return div @@ -8231,6 +8231,24 @@ const dslFunctions = [ }, apply: snippet("\\Flow\\PostgreSql\\DSL\\release_savepoint(" + "$" + "{" + "1:name" + "}" + ")"), boost: 10 + }, { + label: "rename_map", + type: "function", + detail: "flow\u002Ddsl\u002Dtransformers", + info: () => { + const div = document.createElement("div") + div.innerHTML = ` +
+ rename_map(array $renames) : RenameMapEntryStrategy +
+
+ @param array $renames Map of old_name => new_name +
+ ` + return div + }, + apply: snippet("\\Flow\\ETL\\DSL\\rename_map(" + "$" + "{" + "1:renames" + "}" + ")"), + boost: 10 }, { label: "rename_replace", type: "function", @@ -8257,7 +8275,7 @@ const dslFunctions = [ const div = document.createElement("div") div.innerHTML = `
- rename_style(StringStyles|StringStyles $style) : RenameCaseEntryStrategy + rename_style(StringStyles $style) : RenameCaseEntryStrategy
` return div diff --git a/web/landing/assets/codemirror/completions/scalarfunctionchain.js b/web/landing/assets/codemirror/completions/scalarfunctionchain.js index 11e3e46b35..2c3c1c41bd 100644 --- a/web/landing/assets/codemirror/completions/scalarfunctionchain.js +++ b/web/landing/assets/codemirror/completions/scalarfunctionchain.js @@ -1700,7 +1700,7 @@ const scalarFunctionChainMethods = [ const div = document.createElement("div") div.innerHTML = `
- stringStyle(ScalarFunction|StringStyles|StringStyles|string $style) : StringStyle + stringStyle(ScalarFunction|StringStyles|string $style) : StringStyle
Covert string to a style from enum list, passed in parameter.
Can be string \"upper\" or StringStyles::UPPER for Upper (example). diff --git a/web/landing/tests/Flow/Website/Tests/Fixtures/Completers/dataframe.js b/web/landing/tests/Flow/Website/Tests/Fixtures/Completers/dataframe.js deleted file mode 100644 index 2cb5686d4c..0000000000 --- a/web/landing/tests/Flow/Website/Tests/Fixtures/Completers/dataframe.js +++ /dev/null @@ -1,1201 +0,0 @@ -/** - * CodeMirror Completer for Flow PHP DataFrame Methods - * - * DataFrame methods: 61 - * DataFrame-returning methods from classes: 3 - * - * This completer triggers after DataFrame-returning methods - */ - -import { CompletionContext, snippet } from "@codemirror/autocomplete" - -// Map of DataFrame-returning methods grouped by class -const dataframeReturningMethods = {"flow":["extract","from","process","read"],"dataframe":["aggregate","autoCast","batchBy","batchSize","cache","collect","collectRefs","constrain","crossJoin","drop","dropDuplicates","dropPartitions","duplicateRow","filter","filterPartitions","filters","join","joinEach","limit","load","map","match","mode","offset","onError","partitionBy","pivot","rename","renameAll","renameAllLowerCase","renameAllStyle","renameAllUpperCase","renameAllUpperCaseFirst","renameAllUpperCaseWord","renameEach","reorderEntries","rows","saveMode","select","sortBy","transform","until","validate","void","with","withEntries","withEntry","write"],"groupeddataframe":["aggregate"]}; - -// DataFrame methods -const dataframeMethods = [ - { - label: "aggregate", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- aggregate(AggregatingFunction $aggregations) : self -
-
- @lazy -
- ` - return div - }, - apply: snippet("aggregate(" + "$" + "{" + "1:aggregations" + "}" + ")"), - boost: 10 - }, { - label: "autoCast", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- autoCast() : self -
- ` - return div - }, - apply: snippet("autoCast()"), - boost: 10 - }, { - label: "batchBy", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- batchBy(Reference|string $column, int $minSize = null) : self -
-
- Merge/Split Rows yielded by Extractor into batches but keep those with common value in given column together.
This works properly only on sorted datasets.
When minSize is not provided, batches will be created only when there is a change in value of the column.
When minSize is provided, batches will be created only when there is a change in value of the column or
when there are at least minSize rows in the batch.
@param Reference|string $column - column to group by (all rows with same value stay together)
@param null|int<1, max> $minSize - optional minimum rows per batch for efficiency
@lazy
@throws InvalidArgumentException -
- ` - return div - }, - apply: snippet("batchBy(" + "$" + "{" + "1:column" + "}" + ", " + "$" + "{" + "2:minSize" + "}" + ")"), - boost: 10 - }, { - label: "batchSize", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- batchSize(int $size) : self -
-
- Merge/Split Rows yielded by Extractor into batches of given size.
For example, when Extractor is yielding one row at time, this method will merge them into batches of given size
before passing them to the next pipeline element.
Similarly when Extractor is yielding batches of rows, this method will split them into smaller batches of given
size.
In order to merge all Rows into a single batch use DataFrame::collect() method or set size to -1 or 0.
@param int<1, max> $size
@lazy -
- ` - return div - }, - apply: snippet("batchSize(" + "$" + "{" + "1:size" + "}" + ")"), - boost: 10 - }, { - label: "cache", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- cache(string $id = null, int $cacheBatchSize = null) : self -
-
- Start processing rows up to this moment and put each instance of Rows
into previously defined cache.
Cache type can be set through ConfigBuilder.
By default everything is cached in system tmp dir.
Important: cache batch size might significantly improve performance when processing large amount of rows.
Larger batch size will increase memory consumption but will reduce number of IO operations.
When not set, the batch size is taken from the last DataFrame::batchSize() call.
@lazy
@param null|string $id
@throws InvalidArgumentException -
- ` - return div - }, - apply: snippet("cache(" + "$" + "{" + "1:id" + "}" + ", " + "$" + "{" + "2:cacheBatchSize" + "}" + ")"), - boost: 10 - }, { - label: "collect", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- collect() : self -
-
- Before transforming rows, collect them and merge into single Rows instance.
This might lead to memory issues when processing large amount of rows, use with caution.
@lazy -
- ` - return div - }, - apply: snippet("collect()"), - boost: 10 - }, { - label: "collectRefs", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- collectRefs(References $references) : self -
-
- This method allows to collect references to all entries used in this pipeline.
\`\`\`php
(new Flow())
->read(From::chain())
->collectRefs($refs = refs())
->run();
\`\`\`
@lazy -
- ` - return div - }, - apply: snippet("collectRefs(" + "$" + "{" + "1:references" + "}" + ")"), - boost: 10 - }, { - label: "constrain", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- constrain(Constraint $constraint, Constraint $constraints) : self -
- ` - return div - }, - apply: snippet("constrain(" + "$" + "{" + "1:constraint" + "}" + ", " + "$" + "{" + "2:constraints" + "}" + ")"), - boost: 10 - }, { - label: "count", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- count() : int -
-
- @trigger
Return total count of rows processed by this pipeline. -
- ` - return div - }, - apply: snippet("count()"), - boost: 10 - }, { - label: "crossJoin", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- crossJoin(self $dataFrame, string $prefix = '') : self -
-
- @lazy -
- ` - return div - }, - apply: snippet("crossJoin(" + "$" + "{" + "1:dataFrame" + "}" + ", " + "$" + "{" + "2:prefix" + "}" + ")"), - boost: 10 - }, { - label: "display", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- display(int $limit = 20, int|bool $truncate = 20, Formatter $formatter = Flow\\ETL\\Formatter\\AsciiTableFormatter::...) : string -
-
- @param int $limit maximum numbers of rows to display
@param bool|int $truncate false or if set to 0 columns are not truncated, otherwise default truncate to 20
characters
@param Formatter $formatter
@trigger
@throws InvalidArgumentException -
- ` - return div - }, - apply: snippet("display(" + "$" + "{" + "1:limit" + "}" + ", " + "$" + "{" + "2:truncate" + "}" + ", " + "$" + "{" + "3:formatter" + "}" + ")"), - boost: 10 - }, { - label: "drop", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- drop(Reference|string $entries) : self -
-
- Drop given entries.
@lazy -
- ` - return div - }, - apply: snippet("drop(" + "$" + "{" + "1:entries" + "}" + ")"), - boost: 10 - }, { - label: "dropDuplicates", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- dropDuplicates(Reference|string $entries) : self -
-
- @param Reference|string ...$entries
@lazy
@return $this -
- ` - return div - }, - apply: snippet("dropDuplicates(" + "$" + "{" + "1:entries" + "}" + ")"), - boost: 10 - }, { - label: "dropPartitions", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- dropPartitions(bool $dropPartitionColumns = false) : self -
-
- Drop all partitions from Rows, additionally when $dropPartitionColumns is set to true, partition columns are
also removed.
@lazy -
- ` - return div - }, - apply: snippet("dropPartitions(" + "$" + "{" + "1:dropPartitionColumns" + "}" + ")"), - boost: 10 - }, { - label: "duplicateRow", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- duplicateRow(mixed $condition, WithEntry $entries) : self -
- ` - return div - }, - apply: snippet("duplicateRow(" + "$" + "{" + "1:condition" + "}" + ", " + "$" + "{" + "2:entries" + "}" + ")"), - boost: 10 - }, { - label: "fetch", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- fetch(int $limit = null) : Rows -
-
- Be aware that fetch is not memory safe and will load all rows into memory.
If you want to safely iterate over Rows use oe of the following methods:.
DataFrame::get() : \\Generator
DataFrame::getAsArray() : \\Generator
DataFrame::getEach() : \\Generator
DataFrame::getEachAsArray() : \\Generator
@trigger
@throws InvalidArgumentException -
- ` - return div - }, - apply: snippet("fetch(" + "$" + "{" + "1:limit" + "}" + ")"), - boost: 10 - }, { - label: "filter", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- filter(ScalarFunction $function) : self -
-
- @lazy -
- ` - return div - }, - apply: snippet("filter(" + "$" + "{" + "1:function" + "}" + ")"), - boost: 10 - }, { - label: "filterPartitions", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- filterPartitions(Filter|ScalarFunction $filter) : self -
-
- @lazy
@throws RuntimeException -
- ` - return div - }, - apply: snippet("filterPartitions(" + "$" + "{" + "1:filter" + "}" + ")"), - boost: 10 - }, { - label: "filters", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- filters(array $functions) : self -
-
- @lazy
@param array $functions -
- ` - return div - }, - apply: snippet("filters(" + "$" + "{" + "1:functions" + "}" + ")"), - boost: 10 - }, { - label: "forEach", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- forEach(callable $callback = null) : void -
-
- @trigger
@param null|callable(Rows $rows) : void $callback -
- ` - return div - }, - apply: snippet("forEach(" + "$" + "{" + "1:callback" + "}" + ")"), - boost: 10 - }, { - label: "get", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- get() : Generator -
-
- Yields each row as an instance of Rows.
@trigger
@return \\Generator -
- ` - return div - }, - apply: snippet("get()"), - boost: 10 - }, { - label: "getAsArray", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- getAsArray() : Generator -
-
- Yields each row as an array.
@trigger
@return \\Generator>> -
- ` - return div - }, - apply: snippet("getAsArray()"), - boost: 10 - }, { - label: "getEach", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- getEach() : Generator -
-
- Yield each row as an instance of Row.
@trigger
@return \\Generator -
- ` - return div - }, - apply: snippet("getEach()"), - boost: 10 - }, { - label: "getEachAsArray", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- getEachAsArray() : Generator -
-
- Yield each row as an array.
@trigger
@return \\Generator> -
- ` - return div - }, - apply: snippet("getEachAsArray()"), - boost: 10 - }, { - label: "groupBy", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- groupBy(Reference|string $entries) : GroupedDataFrame -
-
- @lazy -
- ` - return div - }, - apply: snippet("groupBy(" + "$" + "{" + "1:entries" + "}" + ")"), - boost: 10 - }, { - label: "join", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- join(self $dataFrame, Expression $on, Join|string $type = Flow\\ETL\\Join\\Join::...) : self -
-
- @lazy -
- ` - return div - }, - apply: snippet("join(" + "$" + "{" + "1:dataFrame" + "}" + ", " + "$" + "{" + "2:on" + "}" + ", " + "$" + "{" + "3:type" + "}" + ")"), - boost: 10 - }, { - label: "joinEach", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- joinEach(DataFrameFactory $factory, Expression $on, Join|string $type = Flow\\ETL\\Join\\Join::...) : self -
-
- @lazy
@psalm-param string|Join $type -
- ` - return div - }, - apply: snippet("joinEach(" + "$" + "{" + "1:factory" + "}" + ", " + "$" + "{" + "2:on" + "}" + ", " + "$" + "{" + "3:type" + "}" + ")"), - boost: 10 - }, { - label: "limit", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- limit(int $limit) : self -
-
- @lazy
@throws InvalidArgumentException -
- ` - return div - }, - apply: snippet("limit(" + "$" + "{" + "1:limit" + "}" + ")"), - boost: 10 - }, { - label: "load", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- load(Loader $loader) : self -
-
- @lazy -
- ` - return div - }, - apply: snippet("load(" + "$" + "{" + "1:loader" + "}" + ")"), - boost: 10 - }, { - label: "map", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- map(callable $callback) : self -
-
- @lazy
@param callable(Row $row) : Row $callback -
- ` - return div - }, - apply: snippet("map(" + "$" + "{" + "1:callback" + "}" + ")"), - boost: 10 - }, { - label: "match", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- match(Schema $schema, SchemaValidator $validator = null) : self -
-
- @lazy
@param null|SchemaValidator $validator - when null, StrictValidator gets initialized -
- ` - return div - }, - apply: snippet("match(" + "$" + "{" + "1:schema" + "}" + ", " + "$" + "{" + "2:validator" + "}" + ")"), - boost: 10 - }, { - label: "mode", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- mode(SaveMode|ExecutionMode $mode) : self -
-
- This method is used to set the behavior of the DataFrame.
Available modes:
- SaveMode defines how Flow should behave when writing to a file/files that already exists.
- ExecutionMode - defines how functions should behave when they encounter unexpected data (e.g., type mismatches, missing values).
@lazy
@return $this -
- ` - return div - }, - apply: snippet("mode(" + "$" + "{" + "1:mode" + "}" + ")"), - boost: 10 - }, { - label: "offset", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- offset(int $offset) : self -
-
- Skip given number of rows from the beginning of the dataset.
When $offset is null, nothing happens (no rows are skipped).
Performance Note: DataFrame must iterate through and process all skipped rows
to reach the offset position. For large offsets, this can impact performance
as the data source still needs to be read and processed up to the offset point.
@param ?int<0, max> $offset
@lazy
@throws InvalidArgumentException -
- ` - return div - }, - apply: snippet("offset(" + "$" + "{" + "1:offset" + "}" + ")"), - boost: 10 - }, { - label: "onError", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- onError(ErrorHandler $handler) : self -
-
- @lazy -
- ` - return div - }, - apply: snippet("onError(" + "$" + "{" + "1:handler" + "}" + ")"), - boost: 10 - }, { - label: "partitionBy", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- partitionBy(Reference|string $entry, Reference|string $entries) : self -
-
- @lazy -
- ` - return div - }, - apply: snippet("partitionBy(" + "$" + "{" + "1:entry" + "}" + ", " + "$" + "{" + "2:entries" + "}" + ")"), - boost: 10 - }, { - label: "pivot", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pivot(Reference $ref) : self -
- ` - return div - }, - apply: snippet("pivot(" + "$" + "{" + "1:ref" + "}" + ")"), - boost: 10 - }, { - label: "printRows", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- printRows(int $limit = 20, int|bool $truncate = 20, Formatter $formatter = Flow\\ETL\\Formatter\\AsciiTableFormatter::...) : void -
-
- @trigger -
- ` - return div - }, - apply: snippet("printRows(" + "$" + "{" + "1:limit" + "}" + ", " + "$" + "{" + "2:truncate" + "}" + ", " + "$" + "{" + "3:formatter" + "}" + ")"), - boost: 10 - }, { - label: "printSchema", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- printSchema(int $limit = 20, SchemaFormatter $formatter = Flow\\ETL\\Row\\Formatter\\ASCIISchemaFormatter::...) : void -
-
- @trigger -
- ` - return div - }, - apply: snippet("printSchema(" + "$" + "{" + "1:limit" + "}" + ", " + "$" + "{" + "2:formatter" + "}" + ")"), - boost: 10 - }, { - label: "rename", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- rename(string $from, string $to) : self -
-
- @lazy -
- ` - return div - }, - apply: snippet("rename(" + "$" + "{" + "1:from" + "}" + ", " + "$" + "{" + "2:to" + "}" + ")"), - boost: 10 - }, { - label: "renameAll", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- renameAll(string $search, string $replace) : self -
-
- @lazy
Iterate over all entry names and replace the given search string with replace string.
@deprecated use DataFrame::renameEach() with a RenameReplaceStrategy -
- ` - return div - }, - apply: snippet("renameAll(" + "$" + "{" + "1:search" + "}" + ", " + "$" + "{" + "2:replace" + "}" + ")"), - boost: 10 - }, { - label: "renameAllLowerCase", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- renameAllLowerCase() : self -
-
- @lazy
@deprecated use DataFrame::renameEach() with a selected StringStyles -
- ` - return div - }, - apply: snippet("renameAllLowerCase()"), - boost: 10 - }, { - label: "renameAllStyle", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- renameAllStyle(StringStyles|StringStyles|string $style) : self -
-
- @lazy
Rename all entries to a given style.
Please look into \\Flow\\ETL\\Function\\StyleConverter\\StringStyles class for all available styles.
@deprecated use DataFrame::renameEach() with a selected Style -
- ` - return div - }, - apply: snippet("renameAllStyle(" + "$" + "{" + "1:style" + "}" + ")"), - boost: 10 - }, { - label: "renameAllUpperCase", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- renameAllUpperCase() : self -
-
- @lazy
@deprecated use DataFrame::renameEach() with a selected Style -
- ` - return div - }, - apply: snippet("renameAllUpperCase()"), - boost: 10 - }, { - label: "renameAllUpperCaseFirst", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- renameAllUpperCaseFirst() : self -
-
- @lazy
@deprecated use DataFrame::renameEach() with a selected Style -
- ` - return div - }, - apply: snippet("renameAllUpperCaseFirst()"), - boost: 10 - }, { - label: "renameAllUpperCaseWord", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- renameAllUpperCaseWord() : self -
-
- @lazy
@deprecated use DataFrame::renameEach() with a selected Style -
- ` - return div - }, - apply: snippet("renameAllUpperCaseWord()"), - boost: 10 - }, { - label: "renameEach", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- renameEach(RenameEntryStrategy $strategies) : self -
- ` - return div - }, - apply: snippet("renameEach(" + "$" + "{" + "1:strategies" + "}" + ")"), - boost: 10 - }, { - label: "reorderEntries", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- reorderEntries(Comparator $comparator = Flow\\ETL\\Transformer\\OrderEntries\\TypeComparator::...) : self -
- ` - return div - }, - apply: snippet("reorderEntries(" + "$" + "{" + "1:comparator" + "}" + ")"), - boost: 10 - }, { - label: "rows", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- rows(Transformer|Transformation $transformer) : self -
-
- @lazy
Alias for ETL::transform method. -
- ` - return div - }, - apply: snippet("rows(" + "$" + "{" + "1:transformer" + "}" + ")"), - boost: 10 - }, { - label: "run", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- run(callable $callback = null, Analyze|bool $analyze = false) : Report -
-
- @trigger
When analyzing pipeline execution we can chose to collect various metrics through analyze()->with*() method
- column statistics - analyze()->withColumnStatistics()
- schema - analyze()->withSchema()
@param null|callable(Rows $rows, FlowContext $context): void $callback
@param Analyze|bool $analyze - when set run will return Report
@return ($analyze is Analyze|true ? Report : null) -
- ` - return div - }, - apply: snippet("run(" + "$" + "{" + "1:callback" + "}" + ", " + "$" + "{" + "2:analyze" + "}" + ")"), - boost: 10 - }, { - label: "saveMode", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- saveMode(SaveMode $mode) : self -
-
- Alias for DataFrame::mode.
@lazy -
- ` - return div - }, - apply: snippet("saveMode(" + "$" + "{" + "1:mode" + "}" + ")"), - boost: 10 - }, { - label: "schema", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- schema() : Schema -
-
- @trigger
@return Schema -
- ` - return div - }, - apply: snippet("schema()"), - boost: 10 - }, { - label: "select", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- select(Reference|string $entries) : self -
-
- @lazy
Keep only given entries. -
- ` - return div - }, - apply: snippet("select(" + "$" + "{" + "1:entries" + "}" + ")"), - boost: 10 - }, { - label: "sortBy", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- sortBy(Reference $entries) : self -
-
- @lazy -
- ` - return div - }, - apply: snippet("sortBy(" + "$" + "{" + "1:entries" + "}" + ")"), - boost: 10 - }, { - label: "transform", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- transform(Transformer|Transformation|Transformations|WithEntry $transformer) : self -
-
- Alias for DataFrame::with().
@lazy -
- ` - return div - }, - apply: snippet("transform(" + "$" + "{" + "1:transformer" + "}" + ")"), - boost: 10 - }, { - label: "until", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- until(ScalarFunction $function) : self -
-
- The difference between filter and until is that filter will keep filtering rows until extractors finish yielding
rows. Until will send a STOP signal to the Extractor when the condition is not met.
@lazy -
- ` - return div - }, - apply: snippet("until(" + "$" + "{" + "1:function" + "}" + ")"), - boost: 10 - }, { - label: "validate", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- validate(Schema $schema, SchemaValidator $validator = null) : self -
-
- @deprecated Please use DataFrame::match instead
@lazy
@param null|SchemaValidator $validator - when null, StrictValidator gets initialized -
- ` - return div - }, - apply: snippet("validate(" + "$" + "{" + "1:schema" + "}" + ", " + "$" + "{" + "2:validator" + "}" + ")"), - boost: 10 - }, { - label: "void", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- void() : self -
-
- @lazy
This method is useful mostly in development when
you want to pause processing at certain moment without
removing code. All operations will get processed up to this point,
from here no rows are passed forward. -
- ` - return div - }, - apply: snippet("void()"), - boost: 10 - }, { - label: "with", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- with(Transformer|Transformation|Transformations|WithEntry $transformer) : self -
-
- @lazy -
- ` - return div - }, - apply: snippet("with(" + "$" + "{" + "1:transformer" + "}" + ")"), - boost: 10 - }, { - label: "withEntries", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- withEntries(array $references) : self -
-
- @lazy
@param array|array $references -
- ` - return div - }, - apply: snippet("withEntries(" + "$" + "{" + "1:references" + "}" + ")"), - boost: 10 - }, { - label: "withEntry", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- withEntry(Definition|string $entry, ScalarFunction|WindowFunction $reference) : self -
-
- @param Definition|string $entry
@lazy -
- ` - return div - }, - apply: snippet("withEntry(" + "$" + "{" + "1:entry" + "}" + ", " + "$" + "{" + "2:reference" + "}" + ")"), - boost: 10 - }, { - label: "write", - type: "method", - detail: "Flow\\\\ETL\\\\DataFrame", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- write(Loader $loader) : self -
-
- @lazy
Alias for ETL::load function. -
- ` - return div - }, - apply: snippet("write(" + "$" + "{" + "1:loader" + "}" + ")"), - boost: 10 - } ] - -/** - * DataFrame method completion source for CodeMirror - * @param {CompletionContext} context - * @returns {CompletionResult|null} - */ -export function dataframeCompletions(context) { - // Get text before cursor (potentially across multiple lines) - // Look back up to 2000 characters to find the pattern - const maxLookback = 2000 - const docText = context.state.doc.toString() - const startPos = Math.max(0, context.pos - maxLookback) - const textBefore = docText.slice(startPos, context.pos) - - // Check if we're directly after -> (method chaining context) - // Match pattern: ->word* at the end - if (!new RegExp('->\\w*$').test(textBefore)) { - return null - } - - // Collect all DataFrame-returning method names - const allMethods = [] - for (const [className, methods] of Object.entries(dataframeReturningMethods)) { - allMethods.push(...methods) - } - - if (allMethods.length === 0) { - return null - } - - // Walk backwards to find the most recent completed method call at top level - // Strategy: find the last occurrence of methodName()->... pattern where parens are balanced - const methodPattern = new RegExp('\\b(' + allMethods.join('|') + ')\\s*\\(', 'g') - let matches = [] - let match - - while ((match = methodPattern.exec(textBefore)) !== null) { - matches.push({ name: match[1], index: match.index, endOfName: match.index + match[0].length }) - } - - // Walk backwards from cursor tracking parenthesis depth - // to find what context we're in - let depth = 0 - let i = textBefore.length - 1 - - // Skip back past the -> and any word being typed - while (i >= 0 && /[\w>-]/.test(textBefore[i])) { - i-- - } - - // Now count parentheses going backwards - while (i >= 0) { - if (textBefore[i] === ')') depth++ - else if (textBefore[i] === '(') { - depth-- - // If we're back to depth 0, check if this ( belongs to a DataFrame method - if (depth === 0) { - // Look backwards to find the method name - let methodEnd = i - while (methodEnd > 0 && /\s/.test(textBefore[methodEnd - 1])) { - methodEnd-- - } - let methodStart = methodEnd - while (methodStart > 0 && /\w/.test(textBefore[methodStart - 1])) { - methodStart-- - } - const methodName = textBefore.slice(methodStart, methodEnd) - - // Check if this is a DataFrame-returning method - if (allMethods.includes(methodName)) { - // This is it! We're directly after this method call - return continueWithCompletions() - } - // If not, we're done checking - we're inside some other call - return null - } - } - i-- - } - - return null - - function continueWithCompletions() { - // Match word being typed (method name after ->) - const word = context.matchBefore(/\w*/) - - // If no word and not explicit, don't show completions - if (!word && !context.explicit) { - return null - } - - // Filter methods based on what's being typed - const prefix = word ? word.text.toLowerCase() : '' - const options = dataframeMethods.filter(method => - !prefix || method.label.toLowerCase().startsWith(prefix) - ) - - return { - from: word ? word.from : context.pos, - options: options, - validFor: new RegExp('^\\w*$') // Reuse while typing word characters - } - } -} diff --git a/web/landing/tests/Flow/Website/Tests/Fixtures/Completers/dsl.js b/web/landing/tests/Flow/Website/Tests/Fixtures/Completers/dsl.js deleted file mode 100644 index 3727073efd..0000000000 --- a/web/landing/tests/Flow/Website/Tests/Fixtures/Completers/dsl.js +++ /dev/null @@ -1,12083 +0,0 @@ -/** - * CodeMirror Completer for Flow PHP DSL Functions - * - * Total functions: 706 - * - * This completer provides autocompletion for all Flow PHP DSL functions: - * - Extractors (flow-extractors) - * - Loaders (flow-loaders) - * - Transformers (flow-transformers) - * - Scalar Functions (flow-scalar-functions) - * - Aggregating Functions (flow-aggregating-functions) - * - Window Functions (flow-window-functions) - * - And more... - */ - -import { CompletionContext, snippet } from "@codemirror/autocomplete" - -// All DSL functions -const dslFunctions = [ - { - label: "add_row_index", - type: "function", - detail: "flow\u002Ddsl\u002Dtransformers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- add_row_index(string $column = 'index', StartFrom $startFrom = Flow\\ETL\\Transformation\\AddRowIndex\\StartFrom::...) : AddRowIndex -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\add_row_index(" + "$" + "{" + "1:column" + "}" + ", " + "$" + "{" + "2:startFrom" + "}" + ")"), - boost: 10 - }, { - label: "agg", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- agg(string $name, array $args = [], bool $distinct = false) : AggregateCall -
-
- Create an aggregate function call (COUNT, SUM, AVG, etc.).
@param string $name Aggregate function name
@param list $args Function arguments
@param bool $distinct Use DISTINCT modifier -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\agg(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:args" + "}" + ", " + "$" + "{" + "3:distinct" + "}" + ")"), - boost: 10 - }, { - label: "agg_avg", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- agg_avg(Expression $expr, bool $distinct = false) : AggregateCall -
-
- Create AVG aggregate. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\agg_avg(" + "$" + "{" + "1:expr" + "}" + ", " + "$" + "{" + "2:distinct" + "}" + ")"), - boost: 10 - }, { - label: "agg_count", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- agg_count(Expression $expr = null, bool $distinct = false) : AggregateCall -
-
- Create COUNT(*) aggregate. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\agg_count(" + "$" + "{" + "1:expr" + "}" + ", " + "$" + "{" + "2:distinct" + "}" + ")"), - boost: 10 - }, { - label: "agg_max", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- agg_max(Expression $expr) : AggregateCall -
-
- Create MAX aggregate. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\agg_max(" + "$" + "{" + "1:expr" + "}" + ")"), - boost: 10 - }, { - label: "agg_min", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- agg_min(Expression $expr) : AggregateCall -
-
- Create MIN aggregate. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\agg_min(" + "$" + "{" + "1:expr" + "}" + ")"), - boost: 10 - }, { - label: "agg_sum", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- agg_sum(Expression $expr, bool $distinct = false) : AggregateCall -
-
- Create SUM aggregate. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\agg_sum(" + "$" + "{" + "1:expr" + "}" + ", " + "$" + "{" + "2:distinct" + "}" + ")"), - boost: 10 - }, { - label: "all", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- all(ScalarFunction $functions) : All -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\all(" + "$" + "{" + "1:functions" + "}" + ")"), - boost: 10 - }, { - label: "all_sub_select", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- all_sub_select(Expression $left, ComparisonOperator $operator, SelectFinalStep $subquery) : All -
-
- Create an ALL condition. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\all_sub_select(" + "$" + "{" + "1:left" + "}" + ", " + "$" + "{" + "2:operator" + "}" + ", " + "$" + "{" + "3:subquery" + "}" + ")"), - boost: 10 - }, { - label: "alter", - type: "function", - detail: "flow\u002Ddsl\u002Dschema", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- alter() : AlterFactory -
-
- Create a factory for building ALTER statements.
Provides a unified entry point for all ALTER operations:
- alter()->table() - ALTER TABLE
- alter()->index() - ALTER INDEX
- alter()->view() - ALTER VIEW
- alter()->materializedView() - ALTER MATERIALIZED VIEW
- alter()->sequence() - ALTER SEQUENCE
- alter()->schema() - ALTER SCHEMA
- alter()->role() - ALTER ROLE
- alter()->function() - ALTER FUNCTION
- alter()->procedure() - ALTER PROCEDURE
- alter()->trigger() - ALTER TRIGGER
- alter()->extension() - ALTER EXTENSION
- alter()->enumType() - ALTER TYPE (enum)
- alter()->domain() - ALTER DOMAIN
Rename operations are also under alter():
- alter()->index(\'old\')->renameTo(\'new\')
- alter()->view(\'old\')->renameTo(\'new\')
- alter()->schema(\'old\')->renameTo(\'new\')
- alter()->role(\'old\')->renameTo(\'new\')
- alter()->trigger(\'old\')->on(\'table\')->renameTo(\'new\')
Example: alter()->table(\'users\')->addColumn(col_def(\'email\', data_type_text()))
Example: alter()->sequence(\'user_id_seq\')->restart(1000) -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\alter()"), - boost: 10 - }, { - label: "always_off_exemplar_filter", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- always_off_exemplar_filter() : AlwaysOffExemplarFilter -
-
- Create an AlwaysOffExemplarFilter.
Never records exemplars. Use this filter to disable exemplar collection
entirely for performance optimization. -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\always_off_exemplar_filter()"), - boost: 10 - }, { - label: "always_on_exemplar_filter", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- always_on_exemplar_filter() : AlwaysOnExemplarFilter -
-
- Create an AlwaysOnExemplarFilter.
Records exemplars whenever a span context is present.
Use this filter for debugging or when complete trace context is important. -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\always_on_exemplar_filter()"), - boost: 10 - }, { - label: "analyze", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- analyze() : Analyze -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\analyze()"), - boost: 10 - }, { - label: "analyze", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- analyze() : AnalyzeFinalStep -
-
- Create an ANALYZE builder.
Example: analyze()->table(\'users\')
Produces: ANALYZE users -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\analyze()"), - boost: 10 - }, { - label: "any", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- any(ScalarFunction $values) : Any -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\any(" + "$" + "{" + "1:values" + "}" + ")"), - boost: 10 - }, { - label: "any_sub_select", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- any_sub_select(Expression $left, ComparisonOperator $operator, SelectFinalStep $subquery) : Any -
-
- Create an ANY condition. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\any_sub_select(" + "$" + "{" + "1:left" + "}" + ", " + "$" + "{" + "2:operator" + "}" + ", " + "$" + "{" + "3:subquery" + "}" + ")"), - boost: 10 - }, { - label: "append", - type: "function", - detail: "flow\u002Ddsl\u002Ddata\u002Dframe", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- append() : SaveMode -
-
- Alias for save_mode_append(). -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\append()"), - boost: 10 - }, { - label: "array_carrier", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- array_carrier(array $data = []) : ArrayCarrier -
-
- Create an ArrayCarrier.
Carrier backed by an associative array with case-insensitive key lookup.
@param array $data Initial carrier data -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\array_carrier(" + "$" + "{" + "1:data" + "}" + ")"), - boost: 10 - }, { - label: "array_contained_by", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- array_contained_by(Expression $left, Expression $right) : OperatorCondition -
-
- Create an array is contained by condition (<@).
Example: array_contained_by(col(\'tags\'), raw_expr(\"ARRAY[\'sale\', \'featured\', \'new\']\"))
Produces: tags <@ ARRAY[\'sale\', \'featured\', \'new\'] -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\array_contained_by(" + "$" + "{" + "1:left" + "}" + ", " + "$" + "{" + "2:right" + "}" + ")"), - boost: 10 - }, { - label: "array_contains", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- array_contains(Expression $left, Expression $right) : OperatorCondition -
-
- Create an array contains condition (@>).
Example: array_contains(col(\'tags\'), raw_expr(\"ARRAY[\'sale\']\"))
Produces: tags @> ARRAY[\'sale\'] -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\array_contains(" + "$" + "{" + "1:left" + "}" + ", " + "$" + "{" + "2:right" + "}" + ")"), - boost: 10 - }, { - label: "array_exists", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- array_exists(ScalarFunction|array $ref, ScalarFunction|string $path) : ArrayPathExists -
-
- @param array|ScalarFunction $ref -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\array_exists(" + "$" + "{" + "1:ref" + "}" + ", " + "$" + "{" + "2:path" + "}" + ")"), - boost: 10 - }, { - label: "array_expand", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- array_expand(ScalarFunction $function, ArrayExpand $expand = Flow\\ETL\\Function\\ArrayExpand\\ArrayExpand::...) : ArrayExpand -
-
- Expands each value into entry, if there are more than one value, multiple rows will be created.
Array keys are ignored, only values are used to create new rows.
Before:
+--+-------------------+
|id| array|
+--+-------------------+
| 1|{\"a\":1,\"b\":2,\"c\":3}|
+--+-------------------+
After:
+--+--------+
|id|expanded|
+--+--------+
| 1| 1|
| 1| 2|
| 1| 3|
+--+--------+ -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\array_expand(" + "$" + "{" + "1:function" + "}" + ", " + "$" + "{" + "2:expand" + "}" + ")"), - boost: 10 - }, { - label: "array_expr", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- array_expr(array $elements) : ArrayExpression -
-
- Create an array expression.
@param list $elements Array elements -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\array_expr(" + "$" + "{" + "1:elements" + "}" + ")"), - boost: 10 - }, { - label: "array_get", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- array_get(ScalarFunction $ref, ScalarFunction|string $path) : ArrayGet -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\array_get(" + "$" + "{" + "1:ref" + "}" + ", " + "$" + "{" + "2:path" + "}" + ")"), - boost: 10 - }, { - label: "array_get_collection", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- array_get_collection(ScalarFunction $ref, ScalarFunction|array $keys) : ArrayGetCollection -
-
- @param array|ScalarFunction $keys -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\array_get_collection(" + "$" + "{" + "1:ref" + "}" + ", " + "$" + "{" + "2:keys" + "}" + ")"), - boost: 10 - }, { - label: "array_get_collection_first", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- array_get_collection_first(ScalarFunction $ref, string $keys) : ArrayGetCollection -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\array_get_collection_first(" + "$" + "{" + "1:ref" + "}" + ", " + "$" + "{" + "2:keys" + "}" + ")"), - boost: 10 - }, { - label: "array_keys_style_convert", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- array_keys_style_convert(ScalarFunction $ref, StringStyles|StringStyles|string $style = Flow\\ETL\\String\\StringStyles::...) : ArrayKeysStyleConvert -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\array_keys_style_convert(" + "$" + "{" + "1:ref" + "}" + ", " + "$" + "{" + "2:style" + "}" + ")"), - boost: 10 - }, { - label: "array_key_rename", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- array_key_rename(ScalarFunction $ref, ScalarFunction|string $path, ScalarFunction|string $newName) : ArrayKeyRename -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\array_key_rename(" + "$" + "{" + "1:ref" + "}" + ", " + "$" + "{" + "2:path" + "}" + ", " + "$" + "{" + "3:newName" + "}" + ")"), - boost: 10 - }, { - label: "array_merge", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- array_merge(ScalarFunction|array $left, ScalarFunction|array $right) : ArrayMerge -
-
- @param array|ScalarFunction $left
@param array|ScalarFunction $right -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\array_merge(" + "$" + "{" + "1:left" + "}" + ", " + "$" + "{" + "2:right" + "}" + ")"), - boost: 10 - }, { - label: "array_merge_collection", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- array_merge_collection(ScalarFunction|array $array) : ArrayMergeCollection -
-
- @param array|ScalarFunction $array -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\array_merge_collection(" + "$" + "{" + "1:array" + "}" + ")"), - boost: 10 - }, { - label: "array_overlap", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- array_overlap(Expression $left, Expression $right) : OperatorCondition -
-
- Create an array overlap condition (&&).
Example: array_overlap(col(\'tags\'), raw_expr(\"ARRAY[\'sale\', \'featured\']\"))
Produces: tags && ARRAY[\'sale\', \'featured\'] -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\array_overlap(" + "$" + "{" + "1:left" + "}" + ", " + "$" + "{" + "2:right" + "}" + ")"), - boost: 10 - }, { - label: "array_reverse", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- array_reverse(ScalarFunction|array $function, ScalarFunction|bool $preserveKeys = false) : ArrayReverse -
-
- @param array|ScalarFunction $function -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\array_reverse(" + "$" + "{" + "1:function" + "}" + ", " + "$" + "{" + "2:preserveKeys" + "}" + ")"), - boost: 10 - }, { - label: "array_sort", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- array_sort(ScalarFunction $function, ScalarFunction|Sort|null $sort_function = null, ScalarFunction|int|null $flags = null, ScalarFunction|bool $recursive = true) : ArraySort -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\array_sort(" + "$" + "{" + "1:function" + "}" + ", " + "$" + "{" + "2:sort_function" + "}" + ", " + "$" + "{" + "3:flags" + "}" + ", " + "$" + "{" + "4:recursive" + "}" + ")"), - boost: 10 - }, { - label: "array_to_generator", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- array_to_generator(array $data) : Generator -
-
- @template T
@param array $data
@return \\Generator -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\Adapter\\Parquet\\array_to_generator(" + "$" + "{" + "1:data" + "}" + ")"), - boost: 10 - }, { - label: "array_to_row", - type: "function", - detail: "flow\u002Ddsl\u002Ddata\u002Dframe", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- array_to_row(array $data, EntryFactory $entryFactory, Partitions|array $partitions = [], Schema $schema = null) : Row -
-
- @param array>|array $data
@param array|Partitions $partitions
@param null|Schema $schema -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\array_to_row(" + "$" + "{" + "1:data" + "}" + ", " + "$" + "{" + "2:entryFactory" + "}" + ", " + "$" + "{" + "3:partitions" + "}" + ", " + "$" + "{" + "4:schema" + "}" + ")"), - boost: 10 - }, { - label: "array_to_rows", - type: "function", - detail: "flow\u002Ddsl\u002Ddata\u002Dframe", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- array_to_rows(array $data, EntryFactory $entryFactory, Partitions|array $partitions = [], Schema $schema = null) : Rows -
-
- @param array>|array $data
@param array|Partitions $partitions
@param null|Schema $schema -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\array_to_rows(" + "$" + "{" + "1:data" + "}" + ", " + "$" + "{" + "2:entryFactory" + "}" + ", " + "$" + "{" + "3:partitions" + "}" + ", " + "$" + "{" + "4:schema" + "}" + ")"), - boost: 10 - }, { - label: "array_unpack", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- array_unpack(ScalarFunction|array $array, ScalarFunction|array $skip_keys = [], ScalarFunction|string|null $entry_prefix = null) : ArrayUnpack -
-
- @param array|ScalarFunction $array
@param array|ScalarFunction $skip_keys -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\array_unpack(" + "$" + "{" + "1:array" + "}" + ", " + "$" + "{" + "2:skip_keys" + "}" + ", " + "$" + "{" + "3:entry_prefix" + "}" + ")"), - boost: 10 - }, { - label: "asc", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- asc(Expression $expr, NullsPosition $nulls = Flow\\PostgreSql\\QueryBuilder\\Clause\\NullsPosition::...) : OrderBy -
-
- Create an ORDER BY item with ASC direction. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\asc(" + "$" + "{" + "1:expr" + "}" + ", " + "$" + "{" + "2:nulls" + "}" + ")"), - boost: 10 - }, { - label: "average", - type: "function", - detail: "flow\u002Ddsl\u002Daggregating\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- average(EntryReference|string $ref, int $scale = 2, Rounding $rounding = Flow\\Calculator\\Rounding::...) : Average -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\average(" + "$" + "{" + "1:ref" + "}" + ", " + "$" + "{" + "2:scale" + "}" + ", " + "$" + "{" + "3:rounding" + "}" + ")"), - boost: 10 - }, { - label: "aws_s3_client", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- aws_s3_client(array $configuration) : S3Client -
-
- @param array $configuration - for details please see https://async-aws.com/clients/s3.html -
- ` - return div - }, - apply: snippet("\\Flow\\Filesystem\\Bridge\\AsyncAWS\\DSL\\aws_s3_client(" + "$" + "{" + "1:configuration" + "}" + ")"), - boost: 10 - }, { - label: "aws_s3_filesystem", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- aws_s3_filesystem(string $bucket, S3Client $s3Client, Options $options = Flow\\Filesystem\\Bridge\\AsyncAWS\\Options::...) : AsyncAWSS3Filesystem -
- ` - return div - }, - apply: snippet("\\Flow\\Filesystem\\Bridge\\AsyncAWS\\DSL\\aws_s3_filesystem(" + "$" + "{" + "1:bucket" + "}" + ", " + "$" + "{" + "2:s3Client" + "}" + ", " + "$" + "{" + "3:options" + "}" + ")"), - boost: 10 - }, { - label: "azure_blob_service", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- azure_blob_service(Configuration $configuration, AuthorizationFactory $azure_authorization_factory, ClientInterface $client = null, HttpFactory $azure_http_factory = null, URLFactory $azure_url_factory = null, LoggerInterface $logger = null) : BlobServiceInterface -
- ` - return div - }, - apply: snippet("\\Flow\\Azure\\SDK\\DSL\\azure_blob_service(" + "$" + "{" + "1:configuration" + "}" + ", " + "$" + "{" + "2:azure_authorization_factory" + "}" + ", " + "$" + "{" + "3:client" + "}" + ", " + "$" + "{" + "4:azure_http_factory" + "}" + ", " + "$" + "{" + "5:azure_url_factory" + "}" + ", " + "$" + "{" + "6:logger" + "}" + ")"), - boost: 10 - }, { - label: "azure_blob_service_config", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- azure_blob_service_config(string $account, string $container) : Configuration -
- ` - return div - }, - apply: snippet("\\Flow\\Azure\\SDK\\DSL\\azure_blob_service_config(" + "$" + "{" + "1:account" + "}" + ", " + "$" + "{" + "2:container" + "}" + ")"), - boost: 10 - }, { - label: "azure_filesystem", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- azure_filesystem(BlobServiceInterface $blob_service, Options $options = Flow\\Filesystem\\Bridge\\Azure\\Options::...) : AzureBlobFilesystem -
- ` - return div - }, - apply: snippet("\\Flow\\Filesystem\\Bridge\\Azure\\DSL\\azure_filesystem(" + "$" + "{" + "1:blob_service" + "}" + ", " + "$" + "{" + "2:options" + "}" + ")"), - boost: 10 - }, { - label: "azure_filesystem_options", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- azure_filesystem_options() : Options -
- ` - return div - }, - apply: snippet("\\Flow\\Filesystem\\Bridge\\Azure\\DSL\\azure_filesystem_options()"), - boost: 10 - }, { - label: "azure_http_factory", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- azure_http_factory(RequestFactoryInterface $request_factory, StreamFactoryInterface $stream_factory) : HttpFactory -
- ` - return div - }, - apply: snippet("\\Flow\\Azure\\SDK\\DSL\\azure_http_factory(" + "$" + "{" + "1:request_factory" + "}" + ", " + "$" + "{" + "2:stream_factory" + "}" + ")"), - boost: 10 - }, { - label: "azure_shared_key_authorization_factory", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- azure_shared_key_authorization_factory(string $account, string $key) : SharedKeyFactory -
- ` - return div - }, - apply: snippet("\\Flow\\Azure\\SDK\\DSL\\azure_shared_key_authorization_factory(" + "$" + "{" + "1:account" + "}" + ", " + "$" + "{" + "2:key" + "}" + ")"), - boost: 10 - }, { - label: "azure_url_factory", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- azure_url_factory(string $host = 'blob.core.windows.net') : AzureURLFactory -
- ` - return div - }, - apply: snippet("\\Flow\\Azure\\SDK\\DSL\\azure_url_factory(" + "$" + "{" + "1:host" + "}" + ")"), - boost: 10 - }, { - label: "azurite_url_factory", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- azurite_url_factory(string $host = 'localhost', string $port = '10000', bool $secure = false) : AzuriteURLFactory -
- ` - return div - }, - apply: snippet("\\Flow\\Azure\\SDK\\DSL\\azurite_url_factory(" + "$" + "{" + "1:host" + "}" + ", " + "$" + "{" + "2:port" + "}" + ", " + "$" + "{" + "3:secure" + "}" + ")"), - boost: 10 - }, { - label: "baggage", - type: "function", - detail: "flow\u002Ddsl\u002Dtype", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- baggage(array $entries = []) : Baggage -
-
- Create a Baggage.
@param array $entries Initial key-value entries -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\baggage(" + "$" + "{" + "1:entries" + "}" + ")"), - boost: 10 - }, { - label: "bar_chart", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- bar_chart(EntryReference $label, References $datasets) : BarChart -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\Adapter\\ChartJS\\bar_chart(" + "$" + "{" + "1:label" + "}" + ", " + "$" + "{" + "2:datasets" + "}" + ")"), - boost: 10 - }, { - label: "batched_by", - type: "function", - detail: "flow\u002Ddsl\u002Dextractors", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- batched_by(Extractor $extractor, Reference|string $column, int $min_size = null) : BatchByExtractor -
-
- @param null|int<1, max> $min_size -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\batched_by(" + "$" + "{" + "1:extractor" + "}" + ", " + "$" + "{" + "2:column" + "}" + ", " + "$" + "{" + "3:min_size" + "}" + ")"), - boost: 10 - }, { - label: "batches", - type: "function", - detail: "flow\u002Ddsl\u002Dextractors", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- batches(Extractor $extractor, int $size) : BatchExtractor -
-
- @param int<1, max> $size -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\batches(" + "$" + "{" + "1:extractor" + "}" + ", " + "$" + "{" + "2:size" + "}" + ")"), - boost: 10 - }, { - label: "batching_log_processor", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- batching_log_processor(LogExporter $exporter, int $batchSize = 512) : BatchingLogProcessor -
-
- Create a BatchingLogProcessor.
Collects log records in memory and exports them in batches for efficiency.
Logs are exported when batch size is reached, flush() is called, or shutdown().
@param LogExporter $exporter The exporter to send logs to
@param int $batchSize Number of logs to collect before exporting (default 512) -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\batching_log_processor(" + "$" + "{" + "1:exporter" + "}" + ", " + "$" + "{" + "2:batchSize" + "}" + ")"), - boost: 10 - }, { - label: "batching_metric_processor", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- batching_metric_processor(MetricExporter $exporter, int $batchSize = 512) : BatchingMetricProcessor -
-
- Create a BatchingMetricProcessor.
Collects metrics in memory and exports them in batches for efficiency.
Metrics are exported when batch size is reached, flush() is called, or shutdown().
@param MetricExporter $exporter The exporter to send metrics to
@param int $batchSize Number of metrics to collect before exporting (default 512) -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\batching_metric_processor(" + "$" + "{" + "1:exporter" + "}" + ", " + "$" + "{" + "2:batchSize" + "}" + ")"), - boost: 10 - }, { - label: "batching_span_processor", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- batching_span_processor(SpanExporter $exporter, int $batchSize = 512) : BatchingSpanProcessor -
-
- Create a BatchingSpanProcessor.
Collects spans in memory and exports them in batches for efficiency.
Spans are exported when batch size is reached, flush() is called, or shutdown().
@param SpanExporter $exporter The exporter to send spans to
@param int $batchSize Number of spans to collect before exporting (default 512) -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\batching_span_processor(" + "$" + "{" + "1:exporter" + "}" + ", " + "$" + "{" + "2:batchSize" + "}" + ")"), - boost: 10 - }, { - label: "batch_size", - type: "function", - detail: "flow\u002Ddsl\u002Dtransformers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- batch_size(int $size) : BatchSize -
-
- @param int<1, max> $size -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\batch_size(" + "$" + "{" + "1:size" + "}" + ")"), - boost: 10 - }, { - label: "begin", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- begin() : BeginOptionsStep -
-
- Create a BEGIN transaction builder.
Example: begin()->isolationLevel(IsolationLevel::SERIALIZABLE)->readOnly()
Produces: BEGIN ISOLATION LEVEL SERIALIZABLE READ ONLY -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\begin()"), - boost: 10 - }, { - label: "between", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- between(mixed $value, mixed $lower_bound, mixed $upper_bound, ScalarFunction|Boundary $boundary = Flow\\ETL\\Function\\Between\\Boundary::...) : Between -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\between(" + "$" + "{" + "1:value" + "}" + ", " + "$" + "{" + "2:lower_bound" + "}" + ", " + "$" + "{" + "3:upper_bound" + "}" + ", " + "$" + "{" + "4:boundary" + "}" + ")"), - boost: 10 - }, { - label: "between", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- between(Expression $expr, Expression $low, Expression $high, bool $not = false) : Between -
-
- Create a BETWEEN condition. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\between(" + "$" + "{" + "1:expr" + "}" + ", " + "$" + "{" + "2:low" + "}" + ", " + "$" + "{" + "3:high" + "}" + ", " + "$" + "{" + "4:not" + "}" + ")"), - boost: 10 - }, { - label: "binary_expr", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- binary_expr(Expression $left, string $operator, Expression $right) : BinaryExpression -
-
- Create a binary expression (left op right). -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\binary_expr(" + "$" + "{" + "1:left" + "}" + ", " + "$" + "{" + "2:operator" + "}" + ", " + "$" + "{" + "3:right" + "}" + ")"), - boost: 10 - }, { - label: "boolean_entry", - type: "function", - detail: "flow\u002Ddsl\u002Dentries", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- boolean_entry(string $name, bool $value, Metadata $metadata = null) : Entry -
-
- @return Entry -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\boolean_entry(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:value" + "}" + ", " + "$" + "{" + "3:metadata" + "}" + ")"), - boost: 10 - }, { - label: "bool_entry", - type: "function", - detail: "flow\u002Ddsl\u002Dentries", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- bool_entry(string $name, bool $value, Metadata $metadata = null) : Entry -
-
- @return Entry -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\bool_entry(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:value" + "}" + ", " + "$" + "{" + "3:metadata" + "}" + ")"), - boost: 10 - }, { - label: "bool_schema", - type: "function", - detail: "flow\u002Ddsl\u002Dschema", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- bool_schema(string $name, bool $nullable = false, Metadata $metadata = null) : BooleanDefinition -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\bool_schema(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:nullable" + "}" + ", " + "$" + "{" + "3:metadata" + "}" + ")"), - boost: 10 - }, { - label: "bulk_insert", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- bulk_insert(string $table, array $columns, int $rowCount) : BulkInsert -
-
- Create an optimized bulk INSERT query for high-performance multi-row inserts.
Unlike insert() which uses immutable builder patterns (O(n²) for n rows),
this function generates SQL directly using string operations (O(n) complexity).
@param string $table Table name
@param list $columns Column names
@param int $rowCount Number of rows to insert -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\bulk_insert(" + "$" + "{" + "1:table" + "}" + ", " + "$" + "{" + "2:columns" + "}" + ", " + "$" + "{" + "3:rowCount" + "}" + ")"), - boost: 10 - }, { - label: "caching_detector", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- caching_detector(ResourceDetector $detector, string $cachePath = null) : CachingDetector -
-
- Create a CachingDetector.
Wraps another detector and caches its results to a file. On subsequent
calls, returns the cached resource instead of running detection again.
@param ResourceDetector $detector The detector to wrap
@param null|string $cachePath Cache file path (default: sys_get_temp_dir()/flow_telemetry_resource.cache) -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\caching_detector(" + "$" + "{" + "1:detector" + "}" + ", " + "$" + "{" + "2:cachePath" + "}" + ")"), - boost: 10 - }, { - label: "call", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- call(ScalarFunction|callable $callable, array $parameters = [], Type $return_type = null) : CallUserFunc -
-
- Calls a user-defined function with the given parameters.
@param callable|ScalarFunction $callable
@param array $parameters
@param null|Type $return_type -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\call(" + "$" + "{" + "1:callable" + "}" + ", " + "$" + "{" + "2:parameters" + "}" + ", " + "$" + "{" + "3:return_type" + "}" + ")"), - boost: 10 - }, { - label: "call", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- call(string $procedure) : CallFinalStep -
-
- Creates a CALL statement builder for invoking a procedure.
Example: call(\'update_stats\')->with(123)
Produces: CALL update_stats(123)
Example: call(\'process_data\')->with(\'test\', 42, true)
Produces: CALL process_data(\'test\', 42, true)
@param string $procedure The name of the procedure to call
@return CallFinalStep Builder for call statement options -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\call(" + "$" + "{" + "1:procedure" + "}" + ")"), - boost: 10 - }, { - label: "capitalize", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- capitalize(ScalarFunction|string $value) : Capitalize -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\capitalize(" + "$" + "{" + "1:value" + "}" + ")"), - boost: 10 - }, { - label: "case_when", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- case_when(array $whenClauses, Expression $elseResult = null, Expression $operand = null) : CaseExpression -
-
- Create a CASE expression.
@param non-empty-list $whenClauses WHEN clauses
@param null|Expression $elseResult ELSE result (optional)
@param null|Expression $operand CASE operand for simple CASE (optional) -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\case_when(" + "$" + "{" + "1:whenClauses" + "}" + ", " + "$" + "{" + "2:elseResult" + "}" + ", " + "$" + "{" + "3:operand" + "}" + ")"), - boost: 10 - }, { - label: "cast", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- cast(mixed $value, Type|string $type) : Cast -
-
- @param \\Flow\\Types\\Type|string $type -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\cast(" + "$" + "{" + "1:value" + "}" + ", " + "$" + "{" + "2:type" + "}" + ")"), - boost: 10 - }, { - label: "cast", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- cast(Expression $expr, DataType $dataType) : TypeCast -
-
- Create a type cast expression.
@param Expression $expr Expression to cast
@param DataType $dataType Target data type (use data_type_* functions) -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\cast(" + "$" + "{" + "1:expr" + "}" + ", " + "$" + "{" + "2:dataType" + "}" + ")"), - boost: 10 - }, { - label: "chain_detector", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- chain_detector(ResourceDetector $detectors) : ChainDetector -
-
- Create a ChainDetector.
Combines multiple resource detectors into a chain. Detectors are executed
in order and their results are merged. Later detectors take precedence
over earlier ones when there are conflicting attribute keys.
@param ResourceDetector ...$detectors The detectors to chain -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\chain_detector(" + "$" + "{" + "1:detectors" + "}" + ")"), - boost: 10 - }, { - label: "check_constraint", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- check_constraint(string $expression) : CheckConstraint -
-
- Create a CHECK constraint.
@param string $expression SQL expression that must evaluate to true -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\check_constraint(" + "$" + "{" + "1:expression" + "}" + ")"), - boost: 10 - }, { - label: "chunks_from", - type: "function", - detail: "flow\u002Ddsl\u002Dextractors", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- chunks_from(Extractor $extractor, int $chunk_size) : BatchExtractor -
-
- @param int<1, max> $chunk_size
@deprecated use batches() instead -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\chunks_from(" + "$" + "{" + "1:extractor" + "}" + ", " + "$" + "{" + "2:chunk_size" + "}" + ")"), - boost: 10 - }, { - label: "clock", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- clock(string $time_zone = 'UTC') : ClockInterface -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\clock(" + "$" + "{" + "1:time_zone" + "}" + ")"), - boost: 10 - }, { - label: "close_cursor", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- close_cursor(string $cursorName = null) : CloseCursorFinalStep -
-
- Close a cursor.
Example: close_cursor(\'my_cursor\')
Produces: CLOSE my_cursor
Example: close_cursor() - closes all cursors
Produces: CLOSE ALL
@param null|string $cursorName Cursor to close, or null to close all -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\close_cursor(" + "$" + "{" + "1:cursorName" + "}" + ")"), - boost: 10 - }, { - label: "cluster", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- cluster() : ClusterFinalStep -
-
- Create a CLUSTER builder.
Example: cluster()->table(\'users\')->using(\'idx_users_pkey\')
Produces: CLUSTER users USING idx_users_pkey -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\cluster()"), - boost: 10 - }, { - label: "coalesce", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- coalesce(ScalarFunction $values) : Coalesce -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\coalesce(" + "$" + "{" + "1:values" + "}" + ")"), - boost: 10 - }, { - label: "coalesce", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- coalesce(Expression $expressions) : Coalesce -
-
- Create a COALESCE expression.
@param Expression ...$expressions Expressions to coalesce -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\coalesce(" + "$" + "{" + "1:expressions" + "}" + ")"), - boost: 10 - }, { - label: "col", - type: "function", - detail: "flow\u002Ddsl\u002Ddata\u002Dframe", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- col(string $entry) : EntryReference -
-
- An alias for \`ref\`. -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\col(" + "$" + "{" + "1:entry" + "}" + ")"), - boost: 10 - }, { - label: "col", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- col(string $column, string $table = null, string $schema = null) : Column -
-
- Create a column reference expression.
Can be used in two modes:
- Parse mode: col(\'users.id\') or col(\'schema.table.column\') - parses dot-separated string
- Explicit mode: col(\'id\', \'users\') or col(\'id\', \'users\', \'schema\') - separate arguments
When $table or $schema is provided, $column must be a plain column name (no dots).
@param string $column Column name, or dot-separated path like \"table.column\" or \"schema.table.column\"
@param null|string $table Table name (optional, triggers explicit mode)
@param null|string $schema Schema name (optional, requires $table)
@throws InvalidExpressionException when $schema is provided without $table, or when $column contains dots in explicit mode -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\col(" + "$" + "{" + "1:column" + "}" + ", " + "$" + "{" + "2:table" + "}" + ", " + "$" + "{" + "3:schema" + "}" + ")"), - boost: 10 - }, { - label: "collect", - type: "function", - detail: "flow\u002Ddsl\u002Daggregating\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- collect(EntryReference|string $ref) : Collect -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\collect(" + "$" + "{" + "1:ref" + "}" + ")"), - boost: 10 - }, { - label: "collect_unique", - type: "function", - detail: "flow\u002Ddsl\u002Daggregating\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- collect_unique(EntryReference|string $ref) : CollectUnique -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\collect_unique(" + "$" + "{" + "1:ref" + "}" + ")"), - boost: 10 - }, { - label: "column", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- column(string $name, DataType $type) : ColumnDefinition -
-
- Create a column definition for CREATE TABLE.
@param string $name Column name
@param DataType $type Column data type -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\column(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:type" + "}" + ")"), - boost: 10 - }, { - label: "combine", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- combine(ScalarFunction|array $keys, ScalarFunction|array $values) : Combine -
-
- @param array|ScalarFunction $keys
@param array|ScalarFunction $values -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\combine(" + "$" + "{" + "1:keys" + "}" + ", " + "$" + "{" + "2:values" + "}" + ")"), - boost: 10 - }, { - label: "comment", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- comment(CommentTarget $target, string $name) : CommentFinalStep -
-
- Create a COMMENT ON builder.
Example: comment(CommentTarget::TABLE, \'users\')->is(\'User accounts table\')
Produces: COMMENT ON TABLE users IS \'User accounts table\'
@param CommentTarget $target Target type (TABLE, COLUMN, INDEX, etc.)
@param string $name Target name (use \'table.column\' for COLUMN targets) -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\comment(" + "$" + "{" + "1:target" + "}" + ", " + "$" + "{" + "2:name" + "}" + ")"), - boost: 10 - }, { - label: "commit", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- commit() : CommitOptionsStep -
-
- Create a COMMIT transaction builder.
Example: commit()->andChain()
Produces: COMMIT AND CHAIN -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\commit()"), - boost: 10 - }, { - label: "commit_prepared", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- commit_prepared(string $transactionId) : PreparedTransactionFinalStep -
-
- Create a COMMIT PREPARED builder.
Example: commit_prepared(\'my_transaction\')
Produces: COMMIT PREPARED \'my_transaction\' -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\commit_prepared(" + "$" + "{" + "1:transactionId" + "}" + ")"), - boost: 10 - }, { - label: "compare_all", - type: "function", - detail: "flow\u002Ddsl\u002Dcomparisons", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- compare_all(Comparison $comparisons) : All -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\compare_all(" + "$" + "{" + "1:comparisons" + "}" + ")"), - boost: 10 - }, { - label: "compare_any", - type: "function", - detail: "flow\u002Ddsl\u002Dcomparisons", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- compare_any(Comparison $comparisons) : Any -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\compare_any(" + "$" + "{" + "1:comparisons" + "}" + ")"), - boost: 10 - }, { - label: "compare_entries_by_name", - type: "function", - detail: "flow\u002Ddsl\u002Ddata\u002Dframe", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- compare_entries_by_name(Order $order = Flow\\ETL\\Transformer\\OrderEntries\\Order::...) : Comparator -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\compare_entries_by_name(" + "$" + "{" + "1:order" + "}" + ")"), - boost: 10 - }, { - label: "compare_entries_by_name_desc", - type: "function", - detail: "flow\u002Ddsl\u002Ddata\u002Dframe", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- compare_entries_by_name_desc() : Comparator -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\compare_entries_by_name_desc()"), - boost: 10 - }, { - label: "compare_entries_by_type", - type: "function", - detail: "flow\u002Ddsl\u002Ddata\u002Dframe", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- compare_entries_by_type(array $priorities = [...], Order $order = Flow\\ETL\\Transformer\\OrderEntries\\Order::...) : Comparator -
-
- @param array>, int> $priorities -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\compare_entries_by_type(" + "$" + "{" + "1:priorities" + "}" + ", " + "$" + "{" + "2:order" + "}" + ")"), - boost: 10 - }, { - label: "compare_entries_by_type_and_name", - type: "function", - detail: "flow\u002Ddsl\u002Ddata\u002Dframe", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- compare_entries_by_type_and_name(array $priorities = [...], Order $order = Flow\\ETL\\Transformer\\OrderEntries\\Order::...) : Comparator -
-
- @param array>, int> $priorities -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\compare_entries_by_type_and_name(" + "$" + "{" + "1:priorities" + "}" + ", " + "$" + "{" + "2:order" + "}" + ")"), - boost: 10 - }, { - label: "compare_entries_by_type_desc", - type: "function", - detail: "flow\u002Ddsl\u002Ddata\u002Dframe", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- compare_entries_by_type_desc(array $priorities = [...]) : Comparator -
-
- @param array>, int> $priorities -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\compare_entries_by_type_desc(" + "$" + "{" + "1:priorities" + "}" + ")"), - boost: 10 - }, { - label: "composer_detector", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- composer_detector() : ComposerDetector -
-
- Create a ComposerDetector.
Detects service.name and service.version from Composer\'s InstalledVersions
using the root package information. -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\composer_detector()"), - boost: 10 - }, { - label: "composite_propagator", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- composite_propagator(Propagator $propagators) : CompositePropagator -
-
- Create a CompositePropagator.
Combines multiple propagators into one. On extract, all propagators are
invoked and their contexts are merged. On inject, all propagators are invoked.
@param Propagator ...$propagators The propagators to combine -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\composite_propagator(" + "$" + "{" + "1:propagators" + "}" + ")"), - boost: 10 - }, { - label: "concat", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- concat(ScalarFunction|string $functions) : Concat -
-
- Concat all values. If you want to concatenate values with separator use concat_ws function. -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\concat(" + "$" + "{" + "1:functions" + "}" + ")"), - boost: 10 - }, { - label: "concat_ws", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- concat_ws(ScalarFunction|string $separator, ScalarFunction|string $functions) : ConcatWithSeparator -
-
- Concat all values with separator. -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\concat_ws(" + "$" + "{" + "1:separator" + "}" + ", " + "$" + "{" + "2:functions" + "}" + ")"), - boost: 10 - }, { - label: "conditions", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- conditions() : ConditionBuilder -
-
- Create a condition builder for fluent condition composition.
This builder allows incremental condition building with a fluent API:
\`\`\`php
$builder = conditions();
if ($hasFilter) {
$builder = $builder->and(eq(col(\'status\'), literal(\'active\')));
}
if (!$builder->isEmpty()) {
$query = select()->from(table(\'users\'))->where($builder);
}
\`\`\` -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\conditions()"), - boost: 10 - }, { - label: "cond_and", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- cond_and(Condition $conditions) : AndCondition -
-
- Combine conditions with AND.
@param Condition ...$conditions Conditions to combine -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\cond_and(" + "$" + "{" + "1:conditions" + "}" + ")"), - boost: 10 - }, { - label: "cond_false", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- cond_false() : RawCondition -
-
- Create a FALSE condition for WHERE clauses.
Useful when you need a condition that always evaluates to false,
typically for testing or to return an empty result set.
Example: select(literal(1))->where(cond_false()) // SELECT 1 WHERE false -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\cond_false()"), - boost: 10 - }, { - label: "cond_not", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- cond_not(Condition $condition) : NotCondition -
-
- Negate a condition with NOT. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\cond_not(" + "$" + "{" + "1:condition" + "}" + ")"), - boost: 10 - }, { - label: "cond_or", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- cond_or(Condition $conditions) : OrCondition -
-
- Combine conditions with OR.
@param Condition ...$conditions Conditions to combine -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\cond_or(" + "$" + "{" + "1:conditions" + "}" + ")"), - boost: 10 - }, { - label: "cond_true", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- cond_true() : RawCondition -
-
- Create a TRUE condition for WHERE clauses.
Useful when you need a condition that always evaluates to true.
Example: select(literal(1))->where(cond_true()) // SELECT 1 WHERE true -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\cond_true()"), - boost: 10 - }, { - label: "config", - type: "function", - detail: "flow\u002Ddsl\u002Ddata\u002Dframe", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- config() : Config -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\config()"), - boost: 10 - }, { - label: "config_builder", - type: "function", - detail: "flow\u002Ddsl\u002Ddata\u002Dframe", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- config_builder() : ConfigBuilder -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\config_builder()"), - boost: 10 - }, { - label: "conflict_columns", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- conflict_columns(array $columns) : ConflictTarget -
-
- Create a conflict target for ON CONFLICT (columns).
@param list $columns Columns that define uniqueness -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\conflict_columns(" + "$" + "{" + "1:columns" + "}" + ")"), - boost: 10 - }, { - label: "conflict_constraint", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- conflict_constraint(string $name) : ConflictTarget -
-
- Create a conflict target for ON CONFLICT ON CONSTRAINT. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\conflict_constraint(" + "$" + "{" + "1:name" + "}" + ")"), - boost: 10 - }, { - label: "console_log_exporter", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- console_log_exporter(bool $colors = true, int $maxBodyLength = 100, ConsoleLogOptions $options = Flow\\Telemetry\\Provider\\Console\\ConsoleLogOptions::...) : ConsoleLogExporter -
-
- Create a ConsoleLogExporter.
Outputs log records to the console with severity-based coloring.
Useful for debugging and development.
@param bool $colors Whether to use ANSI colors (default: true)
@param null|int $maxBodyLength Maximum length for body+attributes column (null = no limit, default: 100)
@param ConsoleLogOptions $options Display options for the exporter -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\console_log_exporter(" + "$" + "{" + "1:colors" + "}" + ", " + "$" + "{" + "2:maxBodyLength" + "}" + ", " + "$" + "{" + "3:options" + "}" + ")"), - boost: 10 - }, { - label: "console_log_options", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- console_log_options() : ConsoleLogOptions -
-
- Create ConsoleLogOptions with all display options enabled (default behavior). -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\console_log_options()"), - boost: 10 - }, { - label: "console_log_options_minimal", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- console_log_options_minimal() : ConsoleLogOptions -
-
- Create ConsoleLogOptions with minimal display (legacy compact format). -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\console_log_options_minimal()"), - boost: 10 - }, { - label: "console_metric_exporter", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- console_metric_exporter(bool $colors = true, ConsoleMetricOptions $options = Flow\\Telemetry\\Provider\\Console\\ConsoleMetricOptions::...) : ConsoleMetricExporter -
-
- Create a ConsoleMetricExporter.
Outputs metrics to the console with ASCII table formatting.
Useful for debugging and development.
@param bool $colors Whether to use ANSI colors (default: true)
@param ConsoleMetricOptions $options Display options for the exporter -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\console_metric_exporter(" + "$" + "{" + "1:colors" + "}" + ", " + "$" + "{" + "2:options" + "}" + ")"), - boost: 10 - }, { - label: "console_metric_options", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- console_metric_options() : ConsoleMetricOptions -
-
- Create ConsoleMetricOptions with all display options enabled (default behavior). -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\console_metric_options()"), - boost: 10 - }, { - label: "console_metric_options_minimal", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- console_metric_options_minimal() : ConsoleMetricOptions -
-
- Create ConsoleMetricOptions with minimal display (legacy compact format). -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\console_metric_options_minimal()"), - boost: 10 - }, { - label: "console_span_exporter", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- console_span_exporter(bool $colors = true, ConsoleSpanOptions $options = Flow\\Telemetry\\Provider\\Console\\ConsoleSpanOptions::...) : ConsoleSpanExporter -
-
- Create a ConsoleSpanExporter.
Outputs spans to the console with ASCII table formatting.
Useful for debugging and development.
@param bool $colors Whether to use ANSI colors (default: true)
@param ConsoleSpanOptions $options Display options for the exporter -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\console_span_exporter(" + "$" + "{" + "1:colors" + "}" + ", " + "$" + "{" + "2:options" + "}" + ")"), - boost: 10 - }, { - label: "console_span_options", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- console_span_options() : ConsoleSpanOptions -
-
- Create ConsoleSpanOptions with all display options enabled (default behavior). -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\console_span_options()"), - boost: 10 - }, { - label: "console_span_options_minimal", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- console_span_options_minimal() : ConsoleSpanOptions -
-
- Create ConsoleSpanOptions with minimal display (legacy compact format). -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\console_span_options_minimal()"), - boost: 10 - }, { - label: "constraint_sorted_by", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- constraint_sorted_by(Reference|string $column, Reference|string $columns) : SortedByConstraint -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\constraint_sorted_by(" + "$" + "{" + "1:column" + "}" + ", " + "$" + "{" + "2:columns" + "}" + ")"), - boost: 10 - }, { - label: "constraint_unique", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- constraint_unique(string $reference, string $references) : UniqueConstraint -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\constraint_unique(" + "$" + "{" + "1:reference" + "}" + ", " + "$" + "{" + "2:references" + "}" + ")"), - boost: 10 - }, { - label: "context", - type: "function", - detail: "flow\u002Ddsl\u002Dtype", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- context(TraceId $traceId = null, Baggage $baggage = null) : Context -
-
- Create a Context.
If no TraceId is provided, generates a new one.
If no Baggage is provided, creates an empty one.
@param null|TraceId $traceId Optional TraceId to use
@param null|Baggage $baggage Optional Baggage to use -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\context(" + "$" + "{" + "1:traceId" + "}" + ", " + "$" + "{" + "2:baggage" + "}" + ")"), - boost: 10 - }, { - label: "copy", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- copy() : CopyFactory -
-
- Create a new COPY query builder for data import/export.
Usage:
copy()->from(\'users\')->file(\'/tmp/users.csv\')->format(CopyFormat::CSV)
copy()->to(\'users\')->file(\'/tmp/users.csv\')->format(CopyFormat::CSV)
copy()->toQuery(select(...))->file(\'/tmp/data.csv\') -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\copy()"), - boost: 10 - }, { - label: "count", - type: "function", - detail: "flow\u002Ddsl\u002Daggregating\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- count(EntryReference $function = null) : Count -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\count(" + "$" + "{" + "1:function" + "}" + ")"), - boost: 10 - }, { - label: "create", - type: "function", - detail: "flow\u002Ddsl\u002Dschema", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- create() : CreateFactory -
-
- Create a factory for building CREATE statements.
Provides a unified entry point for all CREATE operations:
- create()->table() - CREATE TABLE
- create()->tableAs() - CREATE TABLE AS
- create()->index() - CREATE INDEX
- create()->view() - CREATE VIEW
- create()->materializedView() - CREATE MATERIALIZED VIEW
- create()->sequence() - CREATE SEQUENCE
- create()->schema() - CREATE SCHEMA
- create()->role() - CREATE ROLE
- create()->function() - CREATE FUNCTION
- create()->procedure() - CREATE PROCEDURE
- create()->trigger() - CREATE TRIGGER
- create()->rule() - CREATE RULE
- create()->extension() - CREATE EXTENSION
- create()->compositeType() - CREATE TYPE (composite)
- create()->enumType() - CREATE TYPE (enum)
- create()->rangeType() - CREATE TYPE (range)
- create()->domain() - CREATE DOMAIN
Example: create()->table(\'users\')->columns(col_def(\'id\', data_type_serial()))
Example: create()->index(\'idx_email\')->on(\'users\')->columns(\'email\') -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\create()"), - boost: 10 - }, { - label: "csv_detect_separator", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- csv_detect_separator(SourceStream $stream, int $lines = 5, Option $fallback = Flow\\ETL\\Adapter\\CSV\\Detector\\Option::..., Options $options = null) : Option -
-
- @param SourceStream $stream - valid resource to CSV file
@param int<1, max> $lines - number of lines to read from CSV file, default 5, more lines means more accurate detection but slower detection
@param null|Option $fallback - fallback option to use when no best option can be detected, default is Option(\',\', \'\"\', \'\\\\\')
@param null|Options $options - options to use for detection, default is Options::all() -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\Adapter\\CSV\\csv_detect_separator(" + "$" + "{" + "1:stream" + "}" + ", " + "$" + "{" + "2:lines" + "}" + ", " + "$" + "{" + "3:fallback" + "}" + ", " + "$" + "{" + "4:options" + "}" + ")"), - boost: 10 - }, { - label: "cte", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- cte(string $name, SelectFinalStep $query, array $columnNames = [], CTEMaterialization $materialization = Flow\\PostgreSql\\QueryBuilder\\Clause\\CTEMaterialization::..., bool $recursive = false) : CTE -
-
- Create a CTE (Common Table Expression).
@param string $name CTE name
@param SelectFinalStep $query CTE query
@param array $columnNames Column aliases (optional)
@param CTEMaterialization $materialization Materialization hint -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\cte(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:query" + "}" + ", " + "$" + "{" + "3:columnNames" + "}" + ", " + "$" + "{" + "4:materialization" + "}" + ", " + "$" + "{" + "5:recursive" + "}" + ")"), - boost: 10 - }, { - label: "current_date", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- current_date() : SQLValueFunctionExpression -
-
- SQL standard CURRENT_DATE function.
Returns the current date (at the start of the transaction).
Useful as a column default value or in SELECT queries.
Example: column(\'birth_date\', data_type_date())->default(current_date())
Example: select()->select(current_date()->as(\'today\')) -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\current_date()"), - boost: 10 - }, { - label: "current_time", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- current_time() : SQLValueFunctionExpression -
-
- SQL standard CURRENT_TIME function.
Returns the current time (at the start of the transaction).
Useful as a column default value or in SELECT queries.
Example: column(\'start_time\', data_type_time())->default(current_time())
Example: select()->select(current_time()->as(\'now_time\')) -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\current_time()"), - boost: 10 - }, { - label: "current_timestamp", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- current_timestamp() : SQLValueFunctionExpression -
-
- SQL standard CURRENT_TIMESTAMP function.
Returns the current date and time (at the start of the transaction).
Useful as a column default value or in SELECT queries.
Example: column(\'created_at\', data_type_timestamp())->default(current_timestamp())
Example: select()->select(current_timestamp()->as(\'now\')) -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\current_timestamp()"), - boost: 10 - }, { - label: "data_frame", - type: "function", - detail: "flow\u002Ddsl\u002Ddata\u002Dframe", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- data_frame(Config|ConfigBuilder|null $config = null) : Flow -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\data_frame(" + "$" + "{" + "1:config" + "}" + ")"), - boost: 10 - }, { - label: "data_type_array", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- data_type_array(DataType $elementType) : DataType -
-
- Create an array data type from an element type. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\data_type_array(" + "$" + "{" + "1:elementType" + "}" + ")"), - boost: 10 - }, { - label: "data_type_bigint", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- data_type_bigint() : DataType -
-
- Create a bigint data type (PostgreSQL int8). -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\data_type_bigint()"), - boost: 10 - }, { - label: "data_type_bigserial", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- data_type_bigserial() : DataType -
-
- Create a bigserial data type. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\data_type_bigserial()"), - boost: 10 - }, { - label: "data_type_boolean", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- data_type_boolean() : DataType -
-
- Create a boolean data type. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\data_type_boolean()"), - boost: 10 - }, { - label: "data_type_bytea", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- data_type_bytea() : DataType -
-
- Create a bytea data type. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\data_type_bytea()"), - boost: 10 - }, { - label: "data_type_char", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- data_type_char(int $length) : DataType -
-
- Create a char data type with length constraint. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\data_type_char(" + "$" + "{" + "1:length" + "}" + ")"), - boost: 10 - }, { - label: "data_type_cidr", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- data_type_cidr() : DataType -
-
- Create a cidr data type. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\data_type_cidr()"), - boost: 10 - }, { - label: "data_type_custom", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- data_type_custom(string $typeName, string $schema = null) : DataType -
-
- Create a custom data type.
@param string $typeName Type name
@param null|string $schema Optional schema name -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\data_type_custom(" + "$" + "{" + "1:typeName" + "}" + ", " + "$" + "{" + "2:schema" + "}" + ")"), - boost: 10 - }, { - label: "data_type_date", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- data_type_date() : DataType -
-
- Create a date data type. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\data_type_date()"), - boost: 10 - }, { - label: "data_type_decimal", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- data_type_decimal(int $precision = null, int $scale = null) : DataType -
-
- Create a decimal data type with optional precision and scale. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\data_type_decimal(" + "$" + "{" + "1:precision" + "}" + ", " + "$" + "{" + "2:scale" + "}" + ")"), - boost: 10 - }, { - label: "data_type_double_precision", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- data_type_double_precision() : DataType -
-
- Create a double precision data type (PostgreSQL float8). -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\data_type_double_precision()"), - boost: 10 - }, { - label: "data_type_inet", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- data_type_inet() : DataType -
-
- Create an inet data type. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\data_type_inet()"), - boost: 10 - }, { - label: "data_type_integer", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- data_type_integer() : DataType -
-
- Create an integer data type (PostgreSQL int4). -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\data_type_integer()"), - boost: 10 - }, { - label: "data_type_interval", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- data_type_interval() : DataType -
-
- Create an interval data type. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\data_type_interval()"), - boost: 10 - }, { - label: "data_type_json", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- data_type_json() : DataType -
-
- Create a JSON data type. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\data_type_json()"), - boost: 10 - }, { - label: "data_type_jsonb", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- data_type_jsonb() : DataType -
-
- Create a JSONB data type. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\data_type_jsonb()"), - boost: 10 - }, { - label: "data_type_macaddr", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- data_type_macaddr() : DataType -
-
- Create a macaddr data type. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\data_type_macaddr()"), - boost: 10 - }, { - label: "data_type_numeric", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- data_type_numeric(int $precision = null, int $scale = null) : DataType -
-
- Create a numeric data type with optional precision and scale. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\data_type_numeric(" + "$" + "{" + "1:precision" + "}" + ", " + "$" + "{" + "2:scale" + "}" + ")"), - boost: 10 - }, { - label: "data_type_real", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- data_type_real() : DataType -
-
- Create a real data type (PostgreSQL float4). -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\data_type_real()"), - boost: 10 - }, { - label: "data_type_serial", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- data_type_serial() : DataType -
-
- Create a serial data type. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\data_type_serial()"), - boost: 10 - }, { - label: "data_type_smallint", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- data_type_smallint() : DataType -
-
- Create a smallint data type (PostgreSQL int2). -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\data_type_smallint()"), - boost: 10 - }, { - label: "data_type_smallserial", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- data_type_smallserial() : DataType -
-
- Create a smallserial data type. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\data_type_smallserial()"), - boost: 10 - }, { - label: "data_type_text", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- data_type_text() : DataType -
-
- Create a text data type. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\data_type_text()"), - boost: 10 - }, { - label: "data_type_time", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- data_type_time(int $precision = null) : DataType -
-
- Create a time data type with optional precision. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\data_type_time(" + "$" + "{" + "1:precision" + "}" + ")"), - boost: 10 - }, { - label: "data_type_timestamp", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- data_type_timestamp(int $precision = null) : DataType -
-
- Create a timestamp data type with optional precision. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\data_type_timestamp(" + "$" + "{" + "1:precision" + "}" + ")"), - boost: 10 - }, { - label: "data_type_timestamptz", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- data_type_timestamptz(int $precision = null) : DataType -
-
- Create a timestamp with time zone data type with optional precision. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\data_type_timestamptz(" + "$" + "{" + "1:precision" + "}" + ")"), - boost: 10 - }, { - label: "data_type_uuid", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- data_type_uuid() : DataType -
-
- Create a UUID data type. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\data_type_uuid()"), - boost: 10 - }, { - label: "data_type_varchar", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- data_type_varchar(int $length) : DataType -
-
- Create a varchar data type with length constraint. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\data_type_varchar(" + "$" + "{" + "1:length" + "}" + ")"), - boost: 10 - }, { - label: "datetime_entry", - type: "function", - detail: "flow\u002Ddsl\u002Dentries", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- datetime_entry(string $name, DateTimeInterface|string|null $value, Metadata $metadata = null) : Entry -
-
- @return Entry -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\datetime_entry(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:value" + "}" + ", " + "$" + "{" + "3:metadata" + "}" + ")"), - boost: 10 - }, { - label: "datetime_schema", - type: "function", - detail: "flow\u002Ddsl\u002Dschema", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- datetime_schema(string $name, bool $nullable = false, Metadata $metadata = null) : DateTimeDefinition -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\datetime_schema(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:nullable" + "}" + ", " + "$" + "{" + "3:metadata" + "}" + ")"), - boost: 10 - }, { - label: "date_entry", - type: "function", - detail: "flow\u002Ddsl\u002Dentries", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- date_entry(string $name, DateTimeInterface|string|null $value, Metadata $metadata = null) : Entry -
-
- @return Entry -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\date_entry(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:value" + "}" + ", " + "$" + "{" + "3:metadata" + "}" + ")"), - boost: 10 - }, { - label: "date_interval_to_microseconds", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- date_interval_to_microseconds(DateInterval $interval) : int -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\date_interval_to_microseconds(" + "$" + "{" + "1:interval" + "}" + ")"), - boost: 10 - }, { - label: "date_interval_to_milliseconds", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- date_interval_to_milliseconds(DateInterval $interval) : int -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\date_interval_to_milliseconds(" + "$" + "{" + "1:interval" + "}" + ")"), - boost: 10 - }, { - label: "date_interval_to_seconds", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- date_interval_to_seconds(DateInterval $interval) : int -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\date_interval_to_seconds(" + "$" + "{" + "1:interval" + "}" + ")"), - boost: 10 - }, { - label: "date_schema", - type: "function", - detail: "flow\u002Ddsl\u002Dschema", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- date_schema(string $name, bool $nullable = false, Metadata $metadata = null) : DateDefinition -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\date_schema(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:nullable" + "}" + ", " + "$" + "{" + "3:metadata" + "}" + ")"), - boost: 10 - }, { - label: "date_time_format", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- date_time_format(ScalarFunction $ref, string $format) : DateTimeFormat -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\date_time_format(" + "$" + "{" + "1:ref" + "}" + ", " + "$" + "{" + "2:format" + "}" + ")"), - boost: 10 - }, { - label: "dbal_dataframe_factory", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- dbal_dataframe_factory(Connection|array $connection, string $query, QueryParameter $parameters) : DbalDataFrameFactory -
-
- @param array|Connection $connection
@param string $query
@param QueryParameter ...$parameters -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\Adapter\\Doctrine\\dbal_dataframe_factory(" + "$" + "{" + "1:connection" + "}" + ", " + "$" + "{" + "2:query" + "}" + ", " + "$" + "{" + "3:parameters" + "}" + ")"), - boost: 10 - }, { - label: "dbal_from_queries", - type: "function", - detail: "flow\u002Ddsl\u002Dextractors", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- dbal_from_queries(Connection $connection, string $query, ParametersSet $parameters_set = null, array $types = []) : DbalQueryExtractor -
-
- @deprecated use from_dbal_queries() instead
@param null|ParametersSet $parameters_set - each one parameters array will be evaluated as new query
@param array $types -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\Adapter\\Doctrine\\dbal_from_queries(" + "$" + "{" + "1:connection" + "}" + ", " + "$" + "{" + "2:query" + "}" + ", " + "$" + "{" + "3:parameters_set" + "}" + ", " + "$" + "{" + "4:types" + "}" + ")"), - boost: 10 - }, { - label: "dbal_from_query", - type: "function", - detail: "flow\u002Ddsl\u002Dextractors", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- dbal_from_query(Connection $connection, string $query, array $parameters = [], array $types = []) : DbalQueryExtractor -
-
- @deprecated use from_dbal_query() instead
@param array|list $parameters - @deprecated use DbalQueryExtractor::withParameters() instead
@param array|string, DbalArrayType|DbalParameterType|DbalType|string> $types - @deprecated use DbalQueryExtractor::withTypes() instead -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\Adapter\\Doctrine\\dbal_from_query(" + "$" + "{" + "1:connection" + "}" + ", " + "$" + "{" + "2:query" + "}" + ", " + "$" + "{" + "3:parameters" + "}" + ", " + "$" + "{" + "4:types" + "}" + ")"), - boost: 10 - }, { - label: "declare_cursor", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- declare_cursor(string $cursorName, SelectFinalStep|SqlQuery|string $query) : DeclareCursorOptionsStep -
-
- Declare a server-side cursor for a query.
Cursors must be declared within a transaction and provide memory-efficient
iteration over large result sets via FETCH commands.
Example with query builder:
declare_cursor(\'my_cursor\', select(star())->from(table(\'users\')))->noScroll()
Produces: DECLARE my_cursor NO SCROLL CURSOR FOR SELECT * FROM users
Example with raw SQL:
declare_cursor(\'my_cursor\', \'SELECT * FROM users WHERE active = true\')->withHold()
Produces: DECLARE my_cursor NO SCROLL CURSOR WITH HOLD FOR SELECT * FROM users WHERE active = true
@param string $cursorName Unique cursor name
@param SelectFinalStep|SqlQuery|string $query Query to iterate over -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\declare_cursor(" + "$" + "{" + "1:cursorName" + "}" + ", " + "$" + "{" + "2:query" + "}" + ")"), - boost: 10 - }, { - label: "definition_from_array", - type: "function", - detail: "flow\u002Ddsl\u002Dschema", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- definition_from_array(array $definition) : Definition -
-
- Create a Definition from an array representation.
@param array $definition
@return Definition -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\definition_from_array(" + "$" + "{" + "1:definition" + "}" + ")"), - boost: 10 - }, { - label: "definition_from_type", - type: "function", - detail: "flow\u002Ddsl\u002Dschema", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- definition_from_type(Reference|string $ref, Type $type, bool $nullable = false, Metadata $metadata = null) : Definition -
-
- Create a Definition from a Type.
@param Type $type
@return Definition -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\definition_from_type(" + "$" + "{" + "1:ref" + "}" + ", " + "$" + "{" + "2:type" + "}" + ", " + "$" + "{" + "3:nullable" + "}" + ", " + "$" + "{" + "4:metadata" + "}" + ")"), - boost: 10 - }, { - label: "delay_exponential", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- delay_exponential(Duration $base, int $multiplier = 2, Duration $max_delay = null) : Exponential -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\delay_exponential(" + "$" + "{" + "1:base" + "}" + ", " + "$" + "{" + "2:multiplier" + "}" + ", " + "$" + "{" + "3:max_delay" + "}" + ")"), - boost: 10 - }, { - label: "delay_fixed", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- delay_fixed(Duration $delay) : Fixed -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\delay_fixed(" + "$" + "{" + "1:delay" + "}" + ")"), - boost: 10 - }, { - label: "delay_jitter", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- delay_jitter(DelayFactory $delay, float $jitter_factor) : Jitter -
-
- @param float $jitter_factor a value between 0 and 1 representing the maximum percentage of jitter to apply -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\delay_jitter(" + "$" + "{" + "1:delay" + "}" + ", " + "$" + "{" + "2:jitter_factor" + "}" + ")"), - boost: 10 - }, { - label: "delay_linear", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- delay_linear(Duration $delay, Duration $increment) : Linear -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\delay_linear(" + "$" + "{" + "1:delay" + "}" + ", " + "$" + "{" + "2:increment" + "}" + ")"), - boost: 10 - }, { - label: "delete", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- delete() : DeleteFromStep -
-
- Create a new DELETE query builder. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\delete()"), - boost: 10 - }, { - label: "dense_rank", - type: "function", - detail: "flow\u002Ddsl\u002Dwindow\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- dense_rank() : DenseRank -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\dense_rank()"), - boost: 10 - }, { - label: "dens_rank", - type: "function", - detail: "flow\u002Ddsl\u002Dwindow\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- dens_rank() : DenseRank -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\dens_rank()"), - boost: 10 - }, { - label: "derived", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- derived(SelectFinalStep $query, string $alias) : DerivedTable -
-
- Create a derived table (subquery in FROM clause). -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\derived(" + "$" + "{" + "1:query" + "}" + ", " + "$" + "{" + "2:alias" + "}" + ")"), - boost: 10 - }, { - label: "desc", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- desc(Expression $expr, NullsPosition $nulls = Flow\\PostgreSql\\QueryBuilder\\Clause\\NullsPosition::...) : OrderBy -
-
- Create an ORDER BY item with DESC direction. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\desc(" + "$" + "{" + "1:expr" + "}" + ", " + "$" + "{" + "2:nulls" + "}" + ")"), - boost: 10 - }, { - label: "df", - type: "function", - detail: "flow\u002Ddsl\u002Ddata\u002Dframe", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- df(Config|ConfigBuilder|null $config = null) : Flow -
-
- Alias for data_frame() : Flow. -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\df(" + "$" + "{" + "1:config" + "}" + ")"), - boost: 10 - }, { - label: "discard", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- discard(DiscardType $type) : DiscardFinalStep -
-
- Create a DISCARD builder.
Example: discard(DiscardType::ALL)
Produces: DISCARD ALL
@param DiscardType $type Type of resources to discard (ALL, PLANS, SEQUENCES, TEMP) -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\discard(" + "$" + "{" + "1:type" + "}" + ")"), - boost: 10 - }, { - label: "dom_element_to_string", - type: "function", - detail: "flow\u002Ddsl\u002Ddata\u002Dframe", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- dom_element_to_string(DOMElement $element, bool $format_output = false, bool $preserver_white_space = false) : string|false -
-
- @deprecated Please use \\Flow\\Types\\DSL\\dom_element_to_string() instead -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\dom_element_to_string(" + "$" + "{" + "1:element" + "}" + ", " + "$" + "{" + "2:format_output" + "}" + ", " + "$" + "{" + "3:preserver_white_space" + "}" + ")"), - boost: 10 - }, { - label: "dom_element_to_string", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- dom_element_to_string(DOMElement $element, bool $format_output = false, bool $preserver_white_space = false) : string|false -
- ` - return div - }, - apply: snippet("\\Flow\\Types\\DSL\\dom_element_to_string(" + "$" + "{" + "1:element" + "}" + ", " + "$" + "{" + "2:format_output" + "}" + ", " + "$" + "{" + "3:preserver_white_space" + "}" + ")"), - boost: 10 - }, { - label: "do_block", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- do_block(string $code) : DoFinalStep -
-
- Creates a DO statement builder for executing an anonymous code block.
Example: do_block(\'BEGIN RAISE NOTICE $$Hello World$$; END;\')
Produces: DO $$ BEGIN RAISE NOTICE $$Hello World$$; END; $$ LANGUAGE plpgsql
Example: do_block(\'SELECT 1\')->language(\'sql\')
Produces: DO $$ SELECT 1 $$ LANGUAGE sql
@param string $code The anonymous code block to execute
@return DoFinalStep Builder for DO statement options -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\do_block(" + "$" + "{" + "1:code" + "}" + ")"), - boost: 10 - }, { - label: "drop", - type: "function", - detail: "flow\u002Ddsl\u002Dtransformers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- drop(Reference|string $entries) : Drop -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\drop(" + "$" + "{" + "1:entries" + "}" + ")"), - boost: 10 - }, { - label: "drop", - type: "function", - detail: "flow\u002Ddsl\u002Dschema", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- drop() : DropFactory -
-
- Create a factory for building DROP statements.
Provides a unified entry point for all DROP operations:
- drop()->table() - DROP TABLE
- drop()->index() - DROP INDEX
- drop()->view() - DROP VIEW
- drop()->materializedView() - DROP MATERIALIZED VIEW
- drop()->sequence() - DROP SEQUENCE
- drop()->schema() - DROP SCHEMA
- drop()->role() - DROP ROLE
- drop()->function() - DROP FUNCTION
- drop()->procedure() - DROP PROCEDURE
- drop()->trigger() - DROP TRIGGER
- drop()->rule() - DROP RULE
- drop()->extension() - DROP EXTENSION
- drop()->type() - DROP TYPE
- drop()->domain() - DROP DOMAIN
- drop()->owned() - DROP OWNED
Example: drop()->table(\'users\', \'orders\')->ifExists()->cascade()
Example: drop()->index(\'idx_email\')->ifExists() -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\drop()"), - boost: 10 - }, { - label: "drop_owned", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- drop_owned(string $roles) : DropOwnedFinalStep -
-
- Create a DROP OWNED builder.
Example: drop_owned(\'role1\')
Produces: DROP OWNED BY role1
Example: drop_owned(\'role1\', \'role2\')->cascade()
Produces: DROP OWNED BY role1, role2 CASCADE
@param string ...$roles The roles whose owned objects should be dropped
@return DropOwnedFinalStep Builder for drop owned options -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\drop_owned(" + "$" + "{" + "1:roles" + "}" + ")"), - boost: 10 - }, { - label: "duration_microseconds", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- duration_microseconds(int $microseconds) : Duration -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\duration_microseconds(" + "$" + "{" + "1:microseconds" + "}" + ")"), - boost: 10 - }, { - label: "duration_milliseconds", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- duration_milliseconds(int $milliseconds) : Duration -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\duration_milliseconds(" + "$" + "{" + "1:milliseconds" + "}" + ")"), - boost: 10 - }, { - label: "duration_minutes", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- duration_minutes(int $minutes) : Duration -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\duration_minutes(" + "$" + "{" + "1:minutes" + "}" + ")"), - boost: 10 - }, { - label: "duration_seconds", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- duration_seconds(int $seconds) : Duration -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\duration_seconds(" + "$" + "{" + "1:seconds" + "}" + ")"), - boost: 10 - }, { - label: "empty_generator", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- empty_generator() : Generator -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\Adapter\\Parquet\\empty_generator()"), - boost: 10 - }, { - label: "entries", - type: "function", - detail: "flow\u002Ddsl\u002Ddata\u002Dframe", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- entries(Entry $entries) : Entries -
-
- @param Entry ...$entries -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\entries(" + "$" + "{" + "1:entries" + "}" + ")"), - boost: 10 - }, { - label: "entry", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- entry(string $entry) : EntryReference -
-
- An alias for \`ref\`. -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\entry(" + "$" + "{" + "1:entry" + "}" + ")"), - boost: 10 - }, { - label: "entry_id_factory", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- entry_id_factory(string $entry_name) : IdFactory -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\Adapter\\Elasticsearch\\entry_id_factory(" + "$" + "{" + "1:entry_name" + "}" + ")"), - boost: 10 - }, { - label: "enum_entry", - type: "function", - detail: "flow\u002Ddsl\u002Dentries", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- enum_entry(string $name, UnitEnum $enum, Metadata $metadata = null) : Entry -
-
- @return Entry -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\enum_entry(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:enum" + "}" + ", " + "$" + "{" + "3:metadata" + "}" + ")"), - boost: 10 - }, { - label: "enum_schema", - type: "function", - detail: "flow\u002Ddsl\u002Dschema", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- enum_schema(string $name, string $type, bool $nullable = false, Metadata $metadata = null) : EnumDefinition -
-
- @template T of \\UnitEnum
@param class-string $type
@return EnumDefinition -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\enum_schema(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:type" + "}" + ", " + "$" + "{" + "3:nullable" + "}" + ", " + "$" + "{" + "4:metadata" + "}" + ")"), - boost: 10 - }, { - label: "environment_detector", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- environment_detector() : EnvironmentDetector -
-
- Create an EnvironmentDetector.
Detects resource attributes from OpenTelemetry standard environment variables:
- OTEL_SERVICE_NAME: Sets service.name attribute
- OTEL_RESOURCE_ATTRIBUTES: Sets additional attributes in key=value,key2=value2 format -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\environment_detector()"), - boost: 10 - }, { - label: "eq", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- eq(Expression $left, Expression $right) : Comparison -
-
- Create an equality comparison (column = value). -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\eq(" + "$" + "{" + "1:left" + "}" + ", " + "$" + "{" + "2:right" + "}" + ")"), - boost: 10 - }, { - label: "equal", - type: "function", - detail: "flow\u002Ddsl\u002Dcomparisons", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- equal(Reference|string $left, Reference|string $right) : Equal -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\equal(" + "$" + "{" + "1:left" + "}" + ", " + "$" + "{" + "2:right" + "}" + ")"), - boost: 10 - }, { - label: "es_hits_to_rows", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- es_hits_to_rows(DocumentDataSource $source = Flow\\ETL\\Adapter\\Elasticsearch\\ElasticsearchPHP\\DocumentDataSource::...) : HitsIntoRowsTransformer -
-
- Transforms elasticsearch results into clear Flow Rows using [\'hits\'][\'hits\'][x][\'_source\'].
@return HitsIntoRowsTransformer -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\Adapter\\Elasticsearch\\es_hits_to_rows(" + "$" + "{" + "1:source" + "}" + ")"), - boost: 10 - }, { - label: "exception_if_exists", - type: "function", - detail: "flow\u002Ddsl\u002Ddata\u002Dframe", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- exception_if_exists() : SaveMode -
-
- Alias for save_mode_exception_if_exists(). -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\exception_if_exists()"), - boost: 10 - }, { - label: "execution_context", - type: "function", - detail: "flow\u002Ddsl\u002Ddata\u002Dframe", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- execution_context(Config $config = null) : FlowContext -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\execution_context(" + "$" + "{" + "1:config" + "}" + ")"), - boost: 10 - }, { - label: "execution_lenient", - type: "function", - detail: "flow\u002Ddsl\u002Ddata\u002Dframe", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- execution_lenient() : ExecutionMode -
-
- In this mode, functions returns nulls instead of throwing exceptions. -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\execution_lenient()"), - boost: 10 - }, { - label: "execution_strict", - type: "function", - detail: "flow\u002Ddsl\u002Ddata\u002Dframe", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- execution_strict() : ExecutionMode -
-
- In this mode, functions throws exceptions if the given entry is not found
or passed parameters are invalid. -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\execution_strict()"), - boost: 10 - }, { - label: "exists", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- exists(ScalarFunction $ref) : Exists -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\exists(" + "$" + "{" + "1:ref" + "}" + ")"), - boost: 10 - }, { - label: "exists", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- exists(SelectFinalStep $subquery) : Exists -
-
- Create an EXISTS condition. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\exists(" + "$" + "{" + "1:subquery" + "}" + ")"), - boost: 10 - }, { - label: "explain", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- explain(SelectFinalStep|InsertBuilder|UpdateBuilder|DeleteBuilder $query) : ExplainFinalStep -
-
- Create an EXPLAIN builder for a query.
Example: explain(select()->from(\'users\'))
Produces: EXPLAIN SELECT * FROM users
@param DeleteBuilder|InsertBuilder|SelectFinalStep|UpdateBuilder $query Query to explain -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\explain(" + "$" + "{" + "1:query" + "}" + ")"), - boost: 10 - }, { - label: "fetch", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- fetch(string $cursorName) : FetchCursorBuilder -
-
- Fetch rows from a cursor.
Example: fetch(\'my_cursor\')->forward(100)
Produces: FETCH FORWARD 100 my_cursor
Example: fetch(\'my_cursor\')->all()
Produces: FETCH ALL my_cursor
@param string $cursorName Cursor to fetch from -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\fetch(" + "$" + "{" + "1:cursorName" + "}" + ")"), - boost: 10 - }, { - label: "files", - type: "function", - detail: "flow\u002Ddsl\u002Dextractors", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- files(Path|string $directory) : FilesExtractor -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\files(" + "$" + "{" + "1:directory" + "}" + ")"), - boost: 10 - }, { - label: "filesystem_cache", - type: "function", - detail: "flow\u002Ddsl\u002Ddata\u002Dframe", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- filesystem_cache(Path|string|null $cache_dir = null, Filesystem $filesystem = Flow\\Filesystem\\Local\\NativeLocalFilesystem::..., Serializer $serializer = Flow\\Serializer\\NativePHPSerializer::...) : FilesystemCache -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\filesystem_cache(" + "$" + "{" + "1:cache_dir" + "}" + ", " + "$" + "{" + "2:filesystem" + "}" + ", " + "$" + "{" + "3:serializer" + "}" + ")"), - boost: 10 - }, { - label: "filesystem_telemetry_config", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- filesystem_telemetry_config(Telemetry $telemetry, ClockInterface $clock, FilesystemTelemetryOptions $options = null) : FilesystemTelemetryConfig -
-
- Create a telemetry configuration for the filesystem. -
- ` - return div - }, - apply: snippet("\\Flow\\Filesystem\\DSL\\filesystem_telemetry_config(" + "$" + "{" + "1:telemetry" + "}" + ", " + "$" + "{" + "2:clock" + "}" + ", " + "$" + "{" + "3:options" + "}" + ")"), - boost: 10 - }, { - label: "filesystem_telemetry_options", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- filesystem_telemetry_options(bool $traceStreams = true, bool $collectMetrics = true) : FilesystemTelemetryOptions -
-
- Create options for filesystem telemetry.
@param bool $traceStreams Create a single span per stream lifecycle (default: ON)
@param bool $collectMetrics Collect metrics for bytes/operation counts (default: ON) -
- ` - return div - }, - apply: snippet("\\Flow\\Filesystem\\DSL\\filesystem_telemetry_options(" + "$" + "{" + "1:traceStreams" + "}" + ", " + "$" + "{" + "2:collectMetrics" + "}" + ")"), - boost: 10 - }, { - label: "first", - type: "function", - detail: "flow\u002Ddsl\u002Daggregating\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- first(EntryReference|string $ref) : First -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\first(" + "$" + "{" + "1:ref" + "}" + ")"), - boost: 10 - }, { - label: "float_entry", - type: "function", - detail: "flow\u002Ddsl\u002Dentries", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- float_entry(string $name, string|int|float|null $value, Metadata $metadata = null) : Entry -
-
- @return Entry -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\float_entry(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:value" + "}" + ", " + "$" + "{" + "3:metadata" + "}" + ")"), - boost: 10 - }, { - label: "float_schema", - type: "function", - detail: "flow\u002Ddsl\u002Dschema", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- float_schema(string $name, bool $nullable = false, Metadata $metadata = null) : FloatDefinition -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\float_schema(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:nullable" + "}" + ", " + "$" + "{" + "3:metadata" + "}" + ")"), - boost: 10 - }, { - label: "flow_context", - type: "function", - detail: "flow\u002Ddsl\u002Ddata\u002Dframe", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- flow_context(Config $config = null) : FlowContext -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\flow_context(" + "$" + "{" + "1:config" + "}" + ")"), - boost: 10 - }, { - label: "foreign_key", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- foreign_key(array $columns, string $referenceTable, array $referenceColumns = []) : ForeignKeyConstraint -
-
- Create a FOREIGN KEY constraint.
@param list $columns Local columns
@param string $referenceTable Referenced table
@param list $referenceColumns Referenced columns (defaults to same as $columns if empty) -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\foreign_key(" + "$" + "{" + "1:columns" + "}" + ", " + "$" + "{" + "2:referenceTable" + "}" + ", " + "$" + "{" + "3:referenceColumns" + "}" + ")"), - boost: 10 - }, { - label: "for_share", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- for_share(array $tables = []) : LockingClause -
-
- Create a FOR SHARE locking clause.
@param list $tables Tables to lock (empty for all) -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\for_share(" + "$" + "{" + "1:tables" + "}" + ")"), - boost: 10 - }, { - label: "for_update", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- for_update(array $tables = []) : LockingClause -
-
- Create a FOR UPDATE locking clause.
@param list $tables Tables to lock (empty for all) -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\for_update(" + "$" + "{" + "1:tables" + "}" + ")"), - boost: 10 - }, { - label: "frame_current_row", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- frame_current_row() : FrameBound -
-
- Create a frame bound for CURRENT ROW. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\frame_current_row()"), - boost: 10 - }, { - label: "frame_following", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- frame_following(Expression $offset) : FrameBound -
-
- Create a frame bound for N FOLLOWING. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\frame_following(" + "$" + "{" + "1:offset" + "}" + ")"), - boost: 10 - }, { - label: "frame_preceding", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- frame_preceding(Expression $offset) : FrameBound -
-
- Create a frame bound for N PRECEDING. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\frame_preceding(" + "$" + "{" + "1:offset" + "}" + ")"), - boost: 10 - }, { - label: "frame_unbounded_following", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- frame_unbounded_following() : FrameBound -
-
- Create a frame bound for UNBOUNDED FOLLOWING. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\frame_unbounded_following()"), - boost: 10 - }, { - label: "frame_unbounded_preceding", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- frame_unbounded_preceding() : FrameBound -
-
- Create a frame bound for UNBOUNDED PRECEDING. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\frame_unbounded_preceding()"), - boost: 10 - }, { - label: "from_all", - type: "function", - detail: "flow\u002Ddsl\u002Dextractors", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- from_all(Extractor $extractors) : ChainExtractor -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\from_all(" + "$" + "{" + "1:extractors" + "}" + ")"), - boost: 10 - }, { - label: "from_array", - type: "function", - detail: "flow\u002Ddsl\u002Dextractors", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- from_array(iterable $array, Schema $schema = null) : ArrayExtractor -
-
- @param iterable> $array
@param null|Schema $schema - @deprecated use withSchema() method instead -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\from_array(" + "$" + "{" + "1:array" + "}" + ", " + "$" + "{" + "2:schema" + "}" + ")"), - boost: 10 - }, { - label: "from_avro", - type: "function", - detail: "flow\u002Ddsl\u002Dextractors", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- from_avro(Path|string $path) : AvroExtractor -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\Adapter\\Avro\\from_avro(" + "$" + "{" + "1:path" + "}" + ")"), - boost: 10 - }, { - label: "from_cache", - type: "function", - detail: "flow\u002Ddsl\u002Dextractors", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- from_cache(string $id, Extractor $fallback_extractor = null, bool $clear = false) : CacheExtractor -
-
- @param string $id - cache id from which data will be extracted
@param null|Extractor $fallback_extractor - extractor that will be used when cache is empty - @deprecated use withFallbackExtractor() method instead
@param bool $clear - clear cache after extraction - @deprecated use withClearOnFinish() method instead -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\from_cache(" + "$" + "{" + "1:id" + "}" + ", " + "$" + "{" + "2:fallback_extractor" + "}" + ", " + "$" + "{" + "3:clear" + "}" + ")"), - boost: 10 - }, { - label: "from_csv", - type: "function", - detail: "flow\u002Ddsl\u002Dextractors", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- from_csv(Path|string $path, bool $with_header = true, bool $empty_to_null = true, string $separator = null, string $enclosure = null, string $escape = null, int $characters_read_in_line = 1000, Schema $schema = null) : CSVExtractor -
-
- @param Path|string $path
@param bool $empty_to_null - @deprecated use $loader->withEmptyToNull() instead
@param bool $with_header - @deprecated use $loader->withHeader() instead
@param null|string $separator - @deprecated use $loader->withSeparator() instead
@param null|string $enclosure - @deprecated use $loader->withEnclosure() instead
@param null|string $escape - @deprecated use $loader->withEscape() instead
@param int<1, max> $characters_read_in_line - @deprecated use $loader->withCharactersReadInLine() instead
@param null|Schema $schema - @deprecated use $loader->withSchema() instead -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\Adapter\\CSV\\from_csv(" + "$" + "{" + "1:path" + "}" + ", " + "$" + "{" + "2:with_header" + "}" + ", " + "$" + "{" + "3:empty_to_null" + "}" + ", " + "$" + "{" + "4:separator" + "}" + ", " + "$" + "{" + "5:enclosure" + "}" + ", " + "$" + "{" + "6:escape" + "}" + ", " + "$" + "{" + "7:characters_read_in_line" + "}" + ", " + "$" + "{" + "8:schema" + "}" + ")"), - boost: 10 - }, { - label: "from_data_frame", - type: "function", - detail: "flow\u002Ddsl\u002Dextractors", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- from_data_frame(DataFrame $data_frame) : DataFrameExtractor -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\from_data_frame(" + "$" + "{" + "1:data_frame" + "}" + ")"), - boost: 10 - }, { - label: "from_dbal_key_set_qb", - type: "function", - detail: "flow\u002Ddsl\u002Dextractors", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- from_dbal_key_set_qb(Connection $connection, QueryBuilder $queryBuilder, KeySet $key_set) : DbalKeySetExtractor -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\Adapter\\Doctrine\\from_dbal_key_set_qb(" + "$" + "{" + "1:connection" + "}" + ", " + "$" + "{" + "2:queryBuilder" + "}" + ", " + "$" + "{" + "3:key_set" + "}" + ")"), - boost: 10 - }, { - label: "from_dbal_limit_offset", - type: "function", - detail: "flow\u002Ddsl\u002Dextractors", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- from_dbal_limit_offset(Connection $connection, Table|string $table, OrderBy|array $order_by, int $page_size = 1000, int $maximum = null) : DbalLimitOffsetExtractor -
-
- @param Connection $connection
@param string|Table $table
@param array|OrderBy $order_by
@param int $page_size
@param null|int $maximum
@throws InvalidArgumentException -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\Adapter\\Doctrine\\from_dbal_limit_offset(" + "$" + "{" + "1:connection" + "}" + ", " + "$" + "{" + "2:table" + "}" + ", " + "$" + "{" + "3:order_by" + "}" + ", " + "$" + "{" + "4:page_size" + "}" + ", " + "$" + "{" + "5:maximum" + "}" + ")"), - boost: 10 - }, { - label: "from_dbal_limit_offset_qb", - type: "function", - detail: "flow\u002Ddsl\u002Dextractors", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- from_dbal_limit_offset_qb(Connection $connection, QueryBuilder $queryBuilder, int $page_size = 1000, int $maximum = null, int $offset = 0) : DbalLimitOffsetExtractor -
-
- @param Connection $connection
@param int $page_size
@param null|int $maximum - maximum can also be taken from a query builder, $maximum however is used regardless of the query builder if it\'s set
@param int $offset - offset can also be taken from a query builder, $offset however is used regardless of the query builder if it\'s set to non 0 value -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\Adapter\\Doctrine\\from_dbal_limit_offset_qb(" + "$" + "{" + "1:connection" + "}" + ", " + "$" + "{" + "2:queryBuilder" + "}" + ", " + "$" + "{" + "3:page_size" + "}" + ", " + "$" + "{" + "4:maximum" + "}" + ", " + "$" + "{" + "5:offset" + "}" + ")"), - boost: 10 - }, { - label: "from_dbal_queries", - type: "function", - detail: "flow\u002Ddsl\u002Dextractors", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- from_dbal_queries(Connection $connection, string $query, ParametersSet $parameters_set = null, array $types = []) : DbalQueryExtractor -
-
- @param null|ParametersSet $parameters_set - each one parameters array will be evaluated as new query
@param array $types -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\Adapter\\Doctrine\\from_dbal_queries(" + "$" + "{" + "1:connection" + "}" + ", " + "$" + "{" + "2:query" + "}" + ", " + "$" + "{" + "3:parameters_set" + "}" + ", " + "$" + "{" + "4:types" + "}" + ")"), - boost: 10 - }, { - label: "from_dbal_query", - type: "function", - detail: "flow\u002Ddsl\u002Dextractors", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- from_dbal_query(Connection $connection, string $query, array $parameters = [], array $types = []) : DbalQueryExtractor -
-
- @param array|list $parameters - @deprecated use DbalQueryExtractor::withParameters() instead
@param array|string, DbalArrayType|DbalParameterType|DbalType|string> $types - @deprecated use DbalQueryExtractor::withTypes() instead -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\Adapter\\Doctrine\\from_dbal_query(" + "$" + "{" + "1:connection" + "}" + ", " + "$" + "{" + "2:query" + "}" + ", " + "$" + "{" + "3:parameters" + "}" + ", " + "$" + "{" + "4:types" + "}" + ")"), - boost: 10 - }, { - label: "from_dynamic_http_requests", - type: "function", - detail: "flow\u002Ddsl\u002Dextractors", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- from_dynamic_http_requests(ClientInterface $client, NextRequestFactory $requestFactory) : PsrHttpClientDynamicExtractor -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\Adapter\\Http\\from_dynamic_http_requests(" + "$" + "{" + "1:client" + "}" + ", " + "$" + "{" + "2:requestFactory" + "}" + ")"), - boost: 10 - }, { - label: "from_es", - type: "function", - detail: "flow\u002Ddsl\u002Dextractors", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- from_es(array $config, array $parameters, array $pit_params = null) : ElasticsearchExtractor -
-
- Extractor will automatically try to iterate over whole index using one of the two iteration methods:.
- from/size
- search_after
Search after is selected when you provide define sort parameters in query, otherwise it will fallback to from/size.
@param array{
hosts?: array,
connectionParams?: array,
retries?: int,
sniffOnStart?: bool,
sslCert?: array,
sslKey?: array,
sslVerification?: bool|string,
elasticMetaHeader?: bool,
includePortInHostHeader?: bool
} $config
@param array $parameters - https://www.elastic.co/guide/en/elasticsearch/reference/master/search-search.html
@param ?array $pit_params - when used extractor will create point in time to stabilize search results. Point in time is automatically closed when last element is extracted. https://www.elastic.co/guide/en/elasticsearch/reference/master/point-in-time-api.html - @deprecated use withPointInTime method instead -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\Adapter\\Elasticsearch\\from_es(" + "$" + "{" + "1:config" + "}" + ", " + "$" + "{" + "2:parameters" + "}" + ", " + "$" + "{" + "3:pit_params" + "}" + ")"), - boost: 10 - }, { - label: "from_excel", - type: "function", - detail: "flow\u002Ddsl\u002Dextractors", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- from_excel(Path|string $path) : ExcelExtractor -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\Adapter\\Excel\\DSL\\from_excel(" + "$" + "{" + "1:path" + "}" + ")"), - boost: 10 - }, { - label: "from_google_sheet", - type: "function", - detail: "flow\u002Ddsl\u002Dextractors", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- from_google_sheet(Sheets|array $auth_config, string $spreadsheet_id, string $sheet_name, bool $with_header = true, int $rows_per_page = 1000, array $options = []) : GoogleSheetExtractor -
-
- @param array{type: string, project_id: string, private_key_id: string, private_key: string, client_email: string, client_id: string, auth_uri: string, token_uri: string, auth_provider_x509_cert_url: string, client_x509_cert_url: string}|Sheets $auth_config
@param string $spreadsheet_id
@param string $sheet_name
@param bool $with_header - @deprecated use withHeader method instead
@param int $rows_per_page - how many rows per page to fetch from Google Sheets API - @deprecated use withRowsPerPage method instead
@param array{dateTimeRenderOption?: string, majorDimension?: string, valueRenderOption?: string} $options - @deprecated use withOptions method instead -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\Adapter\\GoogleSheet\\from_google_sheet(" + "$" + "{" + "1:auth_config" + "}" + ", " + "$" + "{" + "2:spreadsheet_id" + "}" + ", " + "$" + "{" + "3:sheet_name" + "}" + ", " + "$" + "{" + "4:with_header" + "}" + ", " + "$" + "{" + "5:rows_per_page" + "}" + ", " + "$" + "{" + "6:options" + "}" + ")"), - boost: 10 - }, { - label: "from_google_sheet_columns", - type: "function", - detail: "flow\u002Ddsl\u002Dextractors", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- from_google_sheet_columns(Sheets|array $auth_config, string $spreadsheet_id, string $sheet_name, string $start_range_column, string $end_range_column, bool $with_header = true, int $rows_per_page = 1000, array $options = []) : GoogleSheetExtractor -
-
- @param array{type: string, project_id: string, private_key_id: string, private_key: string, client_email: string, client_id: string, auth_uri: string, token_uri: string, auth_provider_x509_cert_url: string, client_x509_cert_url: string}|Sheets $auth_config
@param string $spreadsheet_id
@param string $sheet_name
@param string $start_range_column
@param string $end_range_column
@param bool $with_header - @deprecated use withHeader method instead
@param int $rows_per_page - how many rows per page to fetch from Google Sheets API, default 1000 - @deprecated use withRowsPerPage method instead
@param array{dateTimeRenderOption?: string, majorDimension?: string, valueRenderOption?: string} $options - @deprecated use withOptions method instead -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\Adapter\\GoogleSheet\\from_google_sheet_columns(" + "$" + "{" + "1:auth_config" + "}" + ", " + "$" + "{" + "2:spreadsheet_id" + "}" + ", " + "$" + "{" + "3:sheet_name" + "}" + ", " + "$" + "{" + "4:start_range_column" + "}" + ", " + "$" + "{" + "5:end_range_column" + "}" + ", " + "$" + "{" + "6:with_header" + "}" + ", " + "$" + "{" + "7:rows_per_page" + "}" + ", " + "$" + "{" + "8:options" + "}" + ")"), - boost: 10 - }, { - label: "from_json", - type: "function", - detail: "flow\u002Ddsl\u002Dextractors", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- from_json(Path|string $path, string $pointer = null, Schema $schema = null) : JsonExtractor -
-
- @param Path|string $path - string is internally turned into stream
@param ?string $pointer - if you want to iterate only results of a subtree, use a pointer, read more at https://github.com/halaxa/json-machine#parsing-a-subtree - @deprecate use withPointer method instead
@param null|Schema $schema - enforce schema on the extracted data - @deprecate use withSchema method instead -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\Adapter\\JSON\\from_json(" + "$" + "{" + "1:path" + "}" + ", " + "$" + "{" + "2:pointer" + "}" + ", " + "$" + "{" + "3:schema" + "}" + ")"), - boost: 10 - }, { - label: "from_json_lines", - type: "function", - detail: "flow\u002Ddsl\u002Dextractors", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- from_json_lines(Path|string $path) : JsonLinesExtractor -
-
- Used to read from a JSON lines https://jsonlines.org/ formatted file.
@param Path|string $path - string is internally turned into stream -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\Adapter\\JSON\\from_json_lines(" + "$" + "{" + "1:path" + "}" + ")"), - boost: 10 - }, { - label: "from_memory", - type: "function", - detail: "flow\u002Ddsl\u002Dextractors", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- from_memory(Memory $memory) : MemoryExtractor -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\from_memory(" + "$" + "{" + "1:memory" + "}" + ")"), - boost: 10 - }, { - label: "from_parquet", - type: "function", - detail: "flow\u002Ddsl\u002Dextractors", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- from_parquet(Path|string $path, array $columns = [], Options $options = Flow\\Parquet\\Options::..., ByteOrder $byte_order = Flow\\Parquet\\ByteOrder::..., int $offset = null) : ParquetExtractor -
-
- @param Path|string $path
@param array $columns - list of columns to read from parquet file - @deprecated use \`withColumns\` method instead
@param Options $options - @deprecated use \`withOptions\` method instead
@param ByteOrder $byte_order - @deprecated use \`withByteOrder\` method instead
@param null|int $offset - @deprecated use \`withOffset\` method instead -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\Adapter\\Parquet\\from_parquet(" + "$" + "{" + "1:path" + "}" + ", " + "$" + "{" + "2:columns" + "}" + ", " + "$" + "{" + "3:options" + "}" + ", " + "$" + "{" + "4:byte_order" + "}" + ", " + "$" + "{" + "5:offset" + "}" + ")"), - boost: 10 - }, { - label: "from_path_partitions", - type: "function", - detail: "flow\u002Ddsl\u002Dextractors", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- from_path_partitions(Path|string $path) : PathPartitionsExtractor -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\from_path_partitions(" + "$" + "{" + "1:path" + "}" + ")"), - boost: 10 - }, { - label: "from_pipeline", - type: "function", - detail: "flow\u002Ddsl\u002Dextractors", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- from_pipeline(Pipeline $pipeline) : PipelineExtractor -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\from_pipeline(" + "$" + "{" + "1:pipeline" + "}" + ")"), - boost: 10 - }, { - label: "from_rows", - type: "function", - detail: "flow\u002Ddsl\u002Dextractors", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- from_rows(Rows $rows) : RowsExtractor -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\from_rows(" + "$" + "{" + "1:rows" + "}" + ")"), - boost: 10 - }, { - label: "from_sequence_date_period", - type: "function", - detail: "flow\u002Ddsl\u002Dextractors", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- from_sequence_date_period(string $entry_name, DateTimeInterface $start, DateInterval $interval, DateTimeInterface $end, int $options = 0) : SequenceExtractor -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\from_sequence_date_period(" + "$" + "{" + "1:entry_name" + "}" + ", " + "$" + "{" + "2:start" + "}" + ", " + "$" + "{" + "3:interval" + "}" + ", " + "$" + "{" + "4:end" + "}" + ", " + "$" + "{" + "5:options" + "}" + ")"), - boost: 10 - }, { - label: "from_sequence_date_period_recurrences", - type: "function", - detail: "flow\u002Ddsl\u002Dextractors", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- from_sequence_date_period_recurrences(string $entry_name, DateTimeInterface $start, DateInterval $interval, int $recurrences, int $options = 0) : SequenceExtractor -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\from_sequence_date_period_recurrences(" + "$" + "{" + "1:entry_name" + "}" + ", " + "$" + "{" + "2:start" + "}" + ", " + "$" + "{" + "3:interval" + "}" + ", " + "$" + "{" + "4:recurrences" + "}" + ", " + "$" + "{" + "5:options" + "}" + ")"), - boost: 10 - }, { - label: "from_sequence_number", - type: "function", - detail: "flow\u002Ddsl\u002Dextractors", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- from_sequence_number(string $entry_name, string|int|float $start, string|int|float $end, int|float $step = 1) : SequenceExtractor -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\from_sequence_number(" + "$" + "{" + "1:entry_name" + "}" + ", " + "$" + "{" + "2:start" + "}" + ", " + "$" + "{" + "3:end" + "}" + ", " + "$" + "{" + "4:step" + "}" + ")"), - boost: 10 - }, { - label: "from_static_http_requests", - type: "function", - detail: "flow\u002Ddsl\u002Dextractors", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- from_static_http_requests(ClientInterface $client, iterable $requests) : PsrHttpClientStaticExtractor -
-
- @param iterable $requests -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\Adapter\\Http\\from_static_http_requests(" + "$" + "{" + "1:client" + "}" + ", " + "$" + "{" + "2:requests" + "}" + ")"), - boost: 10 - }, { - label: "from_text", - type: "function", - detail: "flow\u002Ddsl\u002Dextractors", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- from_text(Path|string $path) : TextExtractor -
-
- @param Path|string $path -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\Adapter\\Text\\from_text(" + "$" + "{" + "1:path" + "}" + ")"), - boost: 10 - }, { - label: "from_xml", - type: "function", - detail: "flow\u002Ddsl\u002Dextractors", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- from_xml(Path|string $path, string $xml_node_path = '') : XMLParserExtractor -
-
- In order to iterate only over nodes use \`from_xml($file)->withXMLNodePath(\'root/elements/element\')\`.






XML Node Path does not support attributes and it\'s not xpath, it is just a sequence
of node names separated with slash.
@param Path|string $path
@param string $xml_node_path - @deprecated use \`from_xml($file)->withXMLNodePath($xmlNodePath)\` method instead -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\Adapter\\XML\\from_xml(" + "$" + "{" + "1:path" + "}" + ", " + "$" + "{" + "2:xml_node_path" + "}" + ")"), - boost: 10 - }, { - label: "fstab", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- fstab(Filesystem $filesystems) : FilesystemTable -
-
- Create a new filesystem table with given filesystems.
Filesystems can be also mounted later.
If no filesystems are provided, local filesystem is mounted. -
- ` - return div - }, - apply: snippet("\\Flow\\Filesystem\\DSL\\fstab(" + "$" + "{" + "1:filesystems" + "}" + ")"), - boost: 10 - }, { - label: "func", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- func(string $name, array $args = []) : FunctionCall -
-
- Create a function call expression.
@param string $name Function name (can include schema like \"pg_catalog.now\")
@param list $args Function arguments -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\func(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:args" + "}" + ")"), - boost: 10 - }, { - label: "func_arg", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- func_arg(DataType $type) : FunctionArgument -
-
- Creates a new function argument for use in function/procedure definitions.
Example: func_arg(data_type_integer())
Example: func_arg(data_type_text())->named(\'username\')
Example: func_arg(data_type_integer())->named(\'count\')->default(\'0\')
Example: func_arg(data_type_text())->out()
@param DataType $type The PostgreSQL data type for the argument
@return FunctionArgument Builder for function argument options -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\func_arg(" + "$" + "{" + "1:type" + "}" + ")"), - boost: 10 - }, { - label: "generate_random_int", - type: "function", - detail: "flow\u002Ddsl\u002Ddata\u002Dframe", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- generate_random_int(int $start = -9223372036854775808, int $end = 9223372036854775807, NativePHPRandomValueGenerator $generator = Flow\\ETL\\NativePHPRandomValueGenerator::...) : int -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\generate_random_int(" + "$" + "{" + "1:start" + "}" + ", " + "$" + "{" + "2:end" + "}" + ", " + "$" + "{" + "3:generator" + "}" + ")"), - boost: 10 - }, { - label: "generate_random_string", - type: "function", - detail: "flow\u002Ddsl\u002Ddata\u002Dframe", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- generate_random_string(int $length = 32, NativePHPRandomValueGenerator $generator = Flow\\ETL\\NativePHPRandomValueGenerator::...) : string -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\generate_random_string(" + "$" + "{" + "1:length" + "}" + ", " + "$" + "{" + "2:generator" + "}" + ")"), - boost: 10 - }, { - label: "get_type", - type: "function", - detail: "flow\u002Ddsl\u002Ddata\u002Dframe", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- get_type(mixed $value) : Type -
-
- @return Type
@deprecated Please use \\Flow\\Types\\DSL\\get_type($value) instead -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\get_type(" + "$" + "{" + "1:value" + "}" + ")"), - boost: 10 - }, { - label: "get_type", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- get_type(mixed $value) : Type -
-
- @return Type -
- ` - return div - }, - apply: snippet("\\Flow\\Types\\DSL\\get_type(" + "$" + "{" + "1:value" + "}" + ")"), - boost: 10 - }, { - label: "grant", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- grant(TablePrivilege|string $privileges) : GrantOnStep -
-
- Create a GRANT privileges builder.
Example: grant(TablePrivilege::SELECT)->onTable(\'users\')->to(\'app_user\')
Produces: GRANT SELECT ON users TO app_user
Example: grant(TablePrivilege::ALL)->onAllTablesInSchema(\'public\')->to(\'admin\')
Produces: GRANT ALL ON ALL TABLES IN SCHEMA public TO admin
@param string|TablePrivilege ...$privileges The privileges to grant
@return GrantOnStep Builder for grant options -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\grant(" + "$" + "{" + "1:privileges" + "}" + ")"), - boost: 10 - }, { - label: "grant_role", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- grant_role(string $roles) : GrantRoleToStep -
-
- Create a GRANT role builder.
Example: grant_role(\'admin\')->to(\'user1\')
Produces: GRANT admin TO user1
Example: grant_role(\'admin\', \'developer\')->to(\'user1\')->withAdminOption()
Produces: GRANT admin, developer TO user1 WITH ADMIN OPTION
@param string ...$roles The roles to grant
@return GrantRoleToStep Builder for grant role options -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\grant_role(" + "$" + "{" + "1:roles" + "}" + ")"), - boost: 10 - }, { - label: "greatest", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- greatest(mixed $values) : Greatest -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\greatest(" + "$" + "{" + "1:values" + "}" + ")"), - boost: 10 - }, { - label: "greatest", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- greatest(Expression $expressions) : Greatest -
-
- Create a GREATEST expression.
@param Expression ...$expressions Expressions to compare -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\greatest(" + "$" + "{" + "1:expressions" + "}" + ")"), - boost: 10 - }, { - label: "gt", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- gt(Expression $left, Expression $right) : Comparison -
-
- Create a greater-than comparison (column > value). -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\gt(" + "$" + "{" + "1:left" + "}" + ", " + "$" + "{" + "2:right" + "}" + ")"), - boost: 10 - }, { - label: "gte", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- gte(Expression $left, Expression $right) : Comparison -
-
- Create a greater-than-or-equal comparison (column >= value). -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\gte(" + "$" + "{" + "1:left" + "}" + ", " + "$" + "{" + "2:right" + "}" + ")"), - boost: 10 - }, { - label: "hash", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- hash(mixed $value, Algorithm $algorithm = Flow\\ETL\\Hash\\NativePHPHash::...) : Hash -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\hash(" + "$" + "{" + "1:value" + "}" + ", " + "$" + "{" + "2:algorithm" + "}" + ")"), - boost: 10 - }, { - label: "hash_id_factory", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- hash_id_factory(string $entry_names) : IdFactory -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\Adapter\\Elasticsearch\\hash_id_factory(" + "$" + "{" + "1:entry_names" + "}" + ")"), - boost: 10 - }, { - label: "host_detector", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- host_detector() : HostDetector -
-
- Create a HostDetector.
Detects host information including host.name, host.arch, and host.id
(from /etc/machine-id on Linux or IOPlatformUUID on macOS). -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\host_detector()"), - boost: 10 - }, { - label: "html_element_entry", - type: "function", - detail: "flow\u002Ddsl\u002Dentries", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- html_element_entry(string $name, Dom\\HTMLElement|string|null $value, Metadata $metadata = null) : Entry -
-
- @return Entry -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\html_element_entry(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:value" + "}" + ", " + "$" + "{" + "3:metadata" + "}" + ")"), - boost: 10 - }, { - label: "html_element_schema", - type: "function", - detail: "flow\u002Ddsl\u002Dschema", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- html_element_schema(string $name, bool $nullable = false, Metadata $metadata = null) : HTMLElementDefinition -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\html_element_schema(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:nullable" + "}" + ", " + "$" + "{" + "3:metadata" + "}" + ")"), - boost: 10 - }, { - label: "html_entry", - type: "function", - detail: "flow\u002Ddsl\u002Dentries", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- html_entry(string $name, Dom\\HTMLDocument|string|null $value, Metadata $metadata = null) : Entry -
-
- @return Entry -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\html_entry(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:value" + "}" + ", " + "$" + "{" + "3:metadata" + "}" + ")"), - boost: 10 - }, { - label: "html_schema", - type: "function", - detail: "flow\u002Ddsl\u002Dschema", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- html_schema(string $name, bool $nullable = false, Metadata $metadata = null) : HTMLDefinition -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\html_schema(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:nullable" + "}" + ", " + "$" + "{" + "3:metadata" + "}" + ")"), - boost: 10 - }, { - label: "identical", - type: "function", - detail: "flow\u002Ddsl\u002Dcomparisons", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- identical(Reference|string $left, Reference|string $right) : Identical -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\identical(" + "$" + "{" + "1:left" + "}" + ", " + "$" + "{" + "2:right" + "}" + ")"), - boost: 10 - }, { - label: "ignore", - type: "function", - detail: "flow\u002Ddsl\u002Ddata\u002Dframe", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- ignore() : SaveMode -
-
- Alias for save_mode_ignore(). -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\ignore()"), - boost: 10 - }, { - label: "ignore_error_handler", - type: "function", - detail: "flow\u002Ddsl\u002Ddata\u002Dframe", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- ignore_error_handler() : IgnoreError -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\ignore_error_handler()"), - boost: 10 - }, { - label: "index_col", - type: "function", - detail: "flow\u002Ddsl\u002Dschema", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- index_col(string $name) : IndexColumn -
-
- Create an index column specification.
Use chainable methods: ->asc(), ->desc(), ->nullsFirst(), ->nullsLast(), ->opclass(), ->collate()
Example: index_col(\'email\')->desc()->nullsLast()
@param string $name The column name -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\index_col(" + "$" + "{" + "1:name" + "}" + ")"), - boost: 10 - }, { - label: "index_expr", - type: "function", - detail: "flow\u002Ddsl\u002Dschema", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- index_expr(Expression $expression) : IndexColumn -
-
- Create an index column specification from an expression.
Use chainable methods: ->asc(), ->desc(), ->nullsFirst(), ->nullsLast(), ->opclass(), ->collate()
Example: index_expr(fn_call(\'lower\', col(\'email\')))->desc()
@param Expression $expression The expression to index -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\index_expr(" + "$" + "{" + "1:expression" + "}" + ")"), - boost: 10 - }, { - label: "index_method_brin", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- index_method_brin() : IndexMethod -
-
- Get the BRIN index method. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\index_method_brin()"), - boost: 10 - }, { - label: "index_method_btree", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- index_method_btree() : IndexMethod -
-
- Get the BTREE index method. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\index_method_btree()"), - boost: 10 - }, { - label: "index_method_gin", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- index_method_gin() : IndexMethod -
-
- Get the GIN index method. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\index_method_gin()"), - boost: 10 - }, { - label: "index_method_gist", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- index_method_gist() : IndexMethod -
-
- Get the GIST index method. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\index_method_gist()"), - boost: 10 - }, { - label: "index_method_hash", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- index_method_hash() : IndexMethod -
-
- Get the HASH index method. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\index_method_hash()"), - boost: 10 - }, { - label: "index_method_spgist", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- index_method_spgist() : IndexMethod -
-
- Get the SPGIST index method. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\index_method_spgist()"), - boost: 10 - }, { - label: "insert", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- insert() : InsertIntoStep -
-
- Create a new INSERT query builder. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\insert()"), - boost: 10 - }, { - label: "instrumentation_scope", - type: "function", - detail: "flow\u002Ddsl\u002Dtype", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- instrumentation_scope(string $name, string $version = 'unknown', string $schemaUrl = null, Attributes $attributes = Flow\\Telemetry\\Attributes::...) : InstrumentationScope -
-
- Create an InstrumentationScope.
@param string $name The instrumentation scope name
@param string $version The instrumentation scope version
@param null|string $schemaUrl Optional schema URL -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\instrumentation_scope(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:version" + "}" + ", " + "$" + "{" + "3:schemaUrl" + "}" + ", " + "$" + "{" + "4:attributes" + "}" + ")"), - boost: 10 - }, { - label: "integer_entry", - type: "function", - detail: "flow\u002Ddsl\u002Dentries", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- integer_entry(string $name, int $value, Metadata $metadata = null) : Entry -
-
- @return Entry -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\integer_entry(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:value" + "}" + ", " + "$" + "{" + "3:metadata" + "}" + ")"), - boost: 10 - }, { - label: "integer_schema", - type: "function", - detail: "flow\u002Ddsl\u002Dschema", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- integer_schema(string $name, bool $nullable = false, Metadata $metadata = null) : IntegerDefinition -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\integer_schema(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:nullable" + "}" + ", " + "$" + "{" + "3:metadata" + "}" + ")"), - boost: 10 - }, { - label: "int_entry", - type: "function", - detail: "flow\u002Ddsl\u002Dentries", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- int_entry(string $name, int $value, Metadata $metadata = null) : Entry -
-
- @return Entry -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\int_entry(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:value" + "}" + ", " + "$" + "{" + "3:metadata" + "}" + ")"), - boost: 10 - }, { - label: "int_schema", - type: "function", - detail: "flow\u002Ddsl\u002Dschema", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- int_schema(string $name, bool $nullable = false, Metadata $metadata = null) : IntegerDefinition -
-
- Alias for \`integer_schema\`. -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\int_schema(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:nullable" + "}" + ", " + "$" + "{" + "3:metadata" + "}" + ")"), - boost: 10 - }, { - label: "is_distinct_from", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- is_distinct_from(Expression $left, Expression $right, bool $not = false) : IsDistinctFrom -
-
- Create an IS DISTINCT FROM condition. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\is_distinct_from(" + "$" + "{" + "1:left" + "}" + ", " + "$" + "{" + "2:right" + "}" + ", " + "$" + "{" + "3:not" + "}" + ")"), - boost: 10 - }, { - label: "is_in", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- is_in(Expression $expr, array $values) : In -
-
- Create an IN condition.
@param Expression $expr Expression to check
@param list $values List of values -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\is_in(" + "$" + "{" + "1:expr" + "}" + ", " + "$" + "{" + "2:values" + "}" + ")"), - boost: 10 - }, { - label: "is_null", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- is_null(Expression $expr, bool $not = false) : IsNull -
-
- Create an IS NULL condition. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\is_null(" + "$" + "{" + "1:expr" + "}" + ", " + "$" + "{" + "2:not" + "}" + ")"), - boost: 10 - }, { - label: "is_type", - type: "function", - detail: "flow\u002Ddsl\u002Ddata\u002Dframe", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- is_type(Type|array $type, mixed $value) : bool -
-
- @param array>|Type $type
@param mixed $value -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\is_type(" + "$" + "{" + "1:type" + "}" + ", " + "$" + "{" + "2:value" + "}" + ")"), - boost: 10 - }, { - label: "is_valid_excel_sheet_name", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- is_valid_excel_sheet_name(ScalarFunction|string $sheet_name) : IsValidExcelSheetName -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\Adapter\\Excel\\DSL\\is_valid_excel_sheet_name(" + "$" + "{" + "1:sheet_name" + "}" + ")"), - boost: 10 - }, { - label: "join_on", - type: "function", - detail: "flow\u002Ddsl\u002Ddata\u002Dframe", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- join_on(Comparison|array $comparisons, string $join_prefix = '') : Expression -
-
- @param array<\\Flow\\ETL\\Join\\Comparison|string>|Comparison $comparisons -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\join_on(" + "$" + "{" + "1:comparisons" + "}" + ", " + "$" + "{" + "2:join_prefix" + "}" + ")"), - boost: 10 - }, { - label: "json_contained_by", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- json_contained_by(Expression $left, Expression $right) : OperatorCondition -
-
- Create a JSONB is contained by condition (<@).
Example: json_contained_by(col(\'metadata\'), literal_json(\'{\"category\": \"electronics\", \"price\": 100}\'))
Produces: metadata <@ \'{\"category\": \"electronics\", \"price\": 100}\' -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\json_contained_by(" + "$" + "{" + "1:left" + "}" + ", " + "$" + "{" + "2:right" + "}" + ")"), - boost: 10 - }, { - label: "json_contains", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- json_contains(Expression $left, Expression $right) : OperatorCondition -
-
- Create a JSONB contains condition (@>).
Example: json_contains(col(\'metadata\'), literal_json(\'{\"category\": \"electronics\"}\'))
Produces: metadata @> \'{\"category\": \"electronics\"}\' -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\json_contains(" + "$" + "{" + "1:left" + "}" + ", " + "$" + "{" + "2:right" + "}" + ")"), - boost: 10 - }, { - label: "json_entry", - type: "function", - detail: "flow\u002Ddsl\u002Dentries", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- json_entry(string $name, Json|array|string|null $data, Metadata $metadata = null) : Entry -
-
- @param null|array|Json|string $data
@return Entry -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\json_entry(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:data" + "}" + ", " + "$" + "{" + "3:metadata" + "}" + ")"), - boost: 10 - }, { - label: "json_exists", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- json_exists(Expression $expr, Expression $key) : OperatorCondition -
-
- Create a JSONB key exists condition (?).
Example: json_exists(col(\'metadata\'), literal_string(\'category\'))
Produces: metadata ? \'category\' -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\json_exists(" + "$" + "{" + "1:expr" + "}" + ", " + "$" + "{" + "2:key" + "}" + ")"), - boost: 10 - }, { - label: "json_exists_all", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- json_exists_all(Expression $expr, Expression $keys) : OperatorCondition -
-
- Create a JSONB all keys exist condition (?&).
Example: json_exists_all(col(\'metadata\'), raw_expr(\"array[\'category\', \'name\']\"))
Produces: metadata ?& array[\'category\', \'name\'] -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\json_exists_all(" + "$" + "{" + "1:expr" + "}" + ", " + "$" + "{" + "2:keys" + "}" + ")"), - boost: 10 - }, { - label: "json_exists_any", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- json_exists_any(Expression $expr, Expression $keys) : OperatorCondition -
-
- Create a JSONB any key exists condition (?|).
Example: json_exists_any(col(\'metadata\'), raw_expr(\"array[\'category\', \'name\']\"))
Produces: metadata ?| array[\'category\', \'name\'] -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\json_exists_any(" + "$" + "{" + "1:expr" + "}" + ", " + "$" + "{" + "2:keys" + "}" + ")"), - boost: 10 - }, { - label: "json_get", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- json_get(Expression $expr, Expression $key) : BinaryExpression -
-
- Create a JSON field access expression (->).
Returns JSON.
Example: json_get(col(\'metadata\'), literal_string(\'category\'))
Produces: metadata -> \'category\' -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\json_get(" + "$" + "{" + "1:expr" + "}" + ", " + "$" + "{" + "2:key" + "}" + ")"), - boost: 10 - }, { - label: "json_get_text", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- json_get_text(Expression $expr, Expression $key) : BinaryExpression -
-
- Create a JSON field access expression (->>).
Returns text.
Example: json_get_text(col(\'metadata\'), literal_string(\'name\'))
Produces: metadata ->> \'name\' -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\json_get_text(" + "$" + "{" + "1:expr" + "}" + ", " + "$" + "{" + "2:key" + "}" + ")"), - boost: 10 - }, { - label: "json_object_entry", - type: "function", - detail: "flow\u002Ddsl\u002Dentries", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- json_object_entry(string $name, Json|array|string|null $data, Metadata $metadata = null) : Entry -
-
- @param null|array|Json|string $data
@throws InvalidArgumentException
@return Entry -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\json_object_entry(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:data" + "}" + ", " + "$" + "{" + "3:metadata" + "}" + ")"), - boost: 10 - }, { - label: "json_path", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- json_path(Expression $expr, Expression $path) : BinaryExpression -
-
- Create a JSON path access expression (#>).
Returns JSON.
Example: json_path(col(\'metadata\'), literal_string(\'{category,name}\'))
Produces: metadata #> \'{category,name}\' -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\json_path(" + "$" + "{" + "1:expr" + "}" + ", " + "$" + "{" + "2:path" + "}" + ")"), - boost: 10 - }, { - label: "json_path_text", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- json_path_text(Expression $expr, Expression $path) : BinaryExpression -
-
- Create a JSON path access expression (#>>).
Returns text.
Example: json_path_text(col(\'metadata\'), literal_string(\'{category,name}\'))
Produces: metadata #>> \'{category,name}\' -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\json_path_text(" + "$" + "{" + "1:expr" + "}" + ", " + "$" + "{" + "2:path" + "}" + ")"), - boost: 10 - }, { - label: "json_schema", - type: "function", - detail: "flow\u002Ddsl\u002Dschema", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- json_schema(string $name, bool $nullable = false, Metadata $metadata = null) : JsonDefinition -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\json_schema(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:nullable" + "}" + ", " + "$" + "{" + "3:metadata" + "}" + ")"), - boost: 10 - }, { - label: "last", - type: "function", - detail: "flow\u002Ddsl\u002Daggregating\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- last(EntryReference|string $ref) : Last -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\last(" + "$" + "{" + "1:ref" + "}" + ")"), - boost: 10 - }, { - label: "lateral", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- lateral(TableReference $reference) : Lateral -
-
- Create a LATERAL subquery.
@param TableReference $reference The subquery or table function reference -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\lateral(" + "$" + "{" + "1:reference" + "}" + ")"), - boost: 10 - }, { - label: "least", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- least(mixed $values) : Least -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\least(" + "$" + "{" + "1:values" + "}" + ")"), - boost: 10 - }, { - label: "least", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- least(Expression $expressions) : Least -
-
- Create a LEAST expression.
@param Expression ...$expressions Expressions to compare -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\least(" + "$" + "{" + "1:expressions" + "}" + ")"), - boost: 10 - }, { - label: "like", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- like(Expression $expr, Expression $pattern, bool $caseInsensitive = false) : Like -
-
- Create a LIKE condition. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\like(" + "$" + "{" + "1:expr" + "}" + ", " + "$" + "{" + "2:pattern" + "}" + ", " + "$" + "{" + "3:caseInsensitive" + "}" + ")"), - boost: 10 - }, { - label: "limit", - type: "function", - detail: "flow\u002Ddsl\u002Dtransformers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- limit(int $limit) : Limit -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\limit(" + "$" + "{" + "1:limit" + "}" + ")"), - boost: 10 - }, { - label: "line_chart", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- line_chart(EntryReference $label, References $datasets) : LineChart -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\Adapter\\ChartJS\\line_chart(" + "$" + "{" + "1:label" + "}" + ", " + "$" + "{" + "2:datasets" + "}" + ")"), - boost: 10 - }, { - label: "list_entry", - type: "function", - detail: "flow\u002Ddsl\u002Dentries", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- list_entry(string $name, array $value, ListType $type, Metadata $metadata = null) : Entry -
-
- @template T
@param null|list $value
@param ListType $type
@return Entry -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\list_entry(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:value" + "}" + ", " + "$" + "{" + "3:type" + "}" + ", " + "$" + "{" + "4:metadata" + "}" + ")"), - boost: 10 - }, { - label: "list_ref", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- list_ref(string $entry) : ListFunctions -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\list_ref(" + "$" + "{" + "1:entry" + "}" + ")"), - boost: 10 - }, { - label: "list_schema", - type: "function", - detail: "flow\u002Ddsl\u002Dschema", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- list_schema(string $name, ListType|Type $type, bool $nullable = false, Metadata $metadata = null) : ListDefinition -
-
- @template T
@param ListType|Type> $type
@return ListDefinition -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\list_schema(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:type" + "}" + ", " + "$" + "{" + "3:nullable" + "}" + ", " + "$" + "{" + "4:metadata" + "}" + ")"), - boost: 10 - }, { - label: "lit", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- lit(mixed $value) : Literal -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\lit(" + "$" + "{" + "1:value" + "}" + ")"), - boost: 10 - }, { - label: "literal", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- literal(string|int|float|bool|null $value) : Literal -
-
- Create a literal value for use in queries.
Automatically detects the type and creates the appropriate literal:
- literal(\'hello\') creates a string literal
- literal(42) creates an integer literal
- literal(3.14) creates a float literal
- literal(true) creates a boolean literal
- literal(null) creates a NULL literal -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\literal(" + "$" + "{" + "1:value" + "}" + ")"), - boost: 10 - }, { - label: "lock_for", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- lock_for(LockStrength $strength, array $tables = [], LockWaitPolicy $waitPolicy = Flow\\PostgreSql\\QueryBuilder\\Clause\\LockWaitPolicy::...) : LockingClause -
-
- Create a locking clause (FOR UPDATE, FOR SHARE, etc.).
@param LockStrength $strength Lock strength
@param list $tables Tables to lock (empty for all)
@param LockWaitPolicy $waitPolicy Wait policy -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\lock_for(" + "$" + "{" + "1:strength" + "}" + ", " + "$" + "{" + "2:tables" + "}" + ", " + "$" + "{" + "3:waitPolicy" + "}" + ")"), - boost: 10 - }, { - label: "lock_table", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- lock_table(string $tables) : LockFinalStep -
-
- Create a LOCK TABLE builder.
Example: lock_table(\'users\', \'orders\')->accessExclusive()
Produces: LOCK TABLE users, orders IN ACCESS EXCLUSIVE MODE -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\lock_table(" + "$" + "{" + "1:tables" + "}" + ")"), - boost: 10 - }, { - label: "logger_provider", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- logger_provider(LogProcessor $processor, ClockInterface $clock, ContextStorage $contextStorage, LogRecordLimits $limits = Flow\\Telemetry\\Logger\\LogRecordLimits::...) : LoggerProvider -
-
- Create a LoggerProvider.
Creates a provider that uses a LogProcessor for processing logs.
For void/disabled logging, pass void_processor().
For memory-based testing, pass memory_processor() with exporters.
@param LogProcessor $processor The processor for logs
@param ClockInterface $clock The clock for timestamps
@param ContextStorage $contextStorage Storage for span correlation
@param LogRecordLimits $limits Limits for log record attributes -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\logger_provider(" + "$" + "{" + "1:processor" + "}" + ", " + "$" + "{" + "2:clock" + "}" + ", " + "$" + "{" + "3:contextStorage" + "}" + ", " + "$" + "{" + "4:limits" + "}" + ")"), - boost: 10 - }, { - label: "log_record_converter", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- log_record_converter(SeverityMapper $severityMapper = null, ValueNormalizer $valueNormalizer = null) : LogRecordConverter -
-
- Create a LogRecordConverter for converting Monolog LogRecord to Telemetry LogRecord.
The converter handles:
- Severity mapping from Monolog Level to Telemetry Severity
- Message body conversion
- Channel and level name as monolog.* attributes
- Context values as context.* attributes (Throwables use setException())
- Extra values as extra.* attributes
@param null|SeverityMapper $severityMapper Custom severity mapper (defaults to standard mapping)
@param null|ValueNormalizer $valueNormalizer Custom value normalizer (defaults to standard normalizer)
Example usage:
\`\`\`php
$converter = log_record_converter();
$telemetryRecord = $converter->convert($monologRecord);
\`\`\`
Example with custom mapper:
\`\`\`php
$converter = log_record_converter(
severityMapper: severity_mapper([
Level::Debug->value => Severity::TRACE,
])
);
\`\`\` -
- ` - return div - }, - apply: snippet("\\Flow\\Bridge\\Monolog\\Telemetry\\DSL\\log_record_converter(" + "$" + "{" + "1:severityMapper" + "}" + ", " + "$" + "{" + "2:valueNormalizer" + "}" + ")"), - boost: 10 - }, { - label: "log_record_limits", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- log_record_limits(int $attributeCountLimit = 128, int $attributeValueLengthLimit = null) : LogRecordLimits -
-
- Create LogRecordLimits configuration.
LogRecordLimits controls the maximum amount of data a log record can collect,
preventing unbounded memory growth and ensuring reasonable log record sizes.
@param int $attributeCountLimit Maximum number of attributes per log record
@param null|int $attributeValueLengthLimit Maximum length for string attribute values (null = unlimited) -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\log_record_limits(" + "$" + "{" + "1:attributeCountLimit" + "}" + ", " + "$" + "{" + "2:attributeValueLengthLimit" + "}" + ")"), - boost: 10 - }, { - label: "lower", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- lower(ScalarFunction|string $value) : ToLower -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\lower(" + "$" + "{" + "1:value" + "}" + ")"), - boost: 10 - }, { - label: "lt", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- lt(Expression $left, Expression $right) : Comparison -
-
- Create a less-than comparison (column < value). -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\lt(" + "$" + "{" + "1:left" + "}" + ", " + "$" + "{" + "2:right" + "}" + ")"), - boost: 10 - }, { - label: "lte", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- lte(Expression $left, Expression $right) : Comparison -
-
- Create a less-than-or-equal comparison (column <= value). -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\lte(" + "$" + "{" + "1:left" + "}" + ", " + "$" + "{" + "2:right" + "}" + ")"), - boost: 10 - }, { - label: "manual_detector", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- manual_detector(array $attributes) : ManualDetector -
-
- Create a ManualDetector.
Returns manually specified resource attributes. Use this when you need
to set attributes explicitly rather than detecting them automatically.
@param array|bool|float|int|string> $attributes Resource attributes -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\manual_detector(" + "$" + "{" + "1:attributes" + "}" + ")"), - boost: 10 - }, { - label: "map_entry", - type: "function", - detail: "flow\u002Ddsl\u002Dentries", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- map_entry(string $name, array $value, MapType $mapType, Metadata $metadata = null) : Entry -
-
- @template TKey of array-key
@template TValue
@param ?array $value
@param MapType $mapType
@return Entry> -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\map_entry(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:value" + "}" + ", " + "$" + "{" + "3:mapType" + "}" + ", " + "$" + "{" + "4:metadata" + "}" + ")"), - boost: 10 - }, { - label: "map_schema", - type: "function", - detail: "flow\u002Ddsl\u002Dschema", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- map_schema(string $name, MapType|Type $type, bool $nullable = false, Metadata $metadata = null) : MapDefinition -
-
- @template TKey of array-key
@template TValue
@param MapType|Type> $type
@return MapDefinition -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\map_schema(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:type" + "}" + ", " + "$" + "{" + "3:nullable" + "}" + ", " + "$" + "{" + "4:metadata" + "}" + ")"), - boost: 10 - }, { - label: "mask_columns", - type: "function", - detail: "flow\u002Ddsl\u002Dtransformers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- mask_columns(array $columns = [], string $mask = '******') : MaskColumns -
-
- @param array $columns -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\mask_columns(" + "$" + "{" + "1:columns" + "}" + ", " + "$" + "{" + "2:mask" + "}" + ")"), - boost: 10 - }, { - label: "match_cases", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- match_cases(array $cases, mixed $default = null) : MatchCases -
-
- @param array $cases -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\match_cases(" + "$" + "{" + "1:cases" + "}" + ", " + "$" + "{" + "2:default" + "}" + ")"), - boost: 10 - }, { - label: "match_condition", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- match_condition(mixed $condition, mixed $then) : MatchCondition -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\match_condition(" + "$" + "{" + "1:condition" + "}" + ", " + "$" + "{" + "2:then" + "}" + ")"), - boost: 10 - }, { - label: "max", - type: "function", - detail: "flow\u002Ddsl\u002Daggregating\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- max(EntryReference|string $ref) : Max -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\max(" + "$" + "{" + "1:ref" + "}" + ")"), - boost: 10 - }, { - label: "memory_context_storage", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- memory_context_storage(Context $context = null) : MemoryContextStorage -
-
- Create a MemoryContextStorage.
In-memory context storage for storing and retrieving the current context.
A single instance should be shared across all providers within a request lifecycle.
@param null|Context $context Optional initial context -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\memory_context_storage(" + "$" + "{" + "1:context" + "}" + ")"), - boost: 10 - }, { - label: "memory_filesystem", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- memory_filesystem() : MemoryFilesystem -
-
- Create a new memory filesystem and writes data to it in memory. -
- ` - return div - }, - apply: snippet("\\Flow\\Filesystem\\DSL\\memory_filesystem()"), - boost: 10 - }, { - label: "memory_log_exporter", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- memory_log_exporter() : MemoryLogExporter -
-
- Create a MemoryLogExporter.
Log exporter that stores data in memory.
Provides direct getter access to exported log entries.
Useful for testing and inspection without serialization. -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\memory_log_exporter()"), - boost: 10 - }, { - label: "memory_log_processor", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- memory_log_processor(LogExporter $exporter) : MemoryLogProcessor -
-
- Create a MemoryLogProcessor.
Log processor that stores log records in memory and exports via configured exporter.
Useful for testing.
@param LogExporter $exporter The exporter to send logs to -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\memory_log_processor(" + "$" + "{" + "1:exporter" + "}" + ")"), - boost: 10 - }, { - label: "memory_metric_exporter", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- memory_metric_exporter() : MemoryMetricExporter -
-
- Create a MemoryMetricExporter.
Metric exporter that stores data in memory.
Provides direct getter access to exported metrics.
Useful for testing and inspection without serialization. -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\memory_metric_exporter()"), - boost: 10 - }, { - label: "memory_metric_processor", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- memory_metric_processor(MetricExporter $exporter) : MemoryMetricProcessor -
-
- Create a MemoryMetricProcessor.
Metric processor that stores metrics in memory and exports via configured exporter.
Useful for testing.
@param MetricExporter $exporter The exporter to send metrics to -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\memory_metric_processor(" + "$" + "{" + "1:exporter" + "}" + ")"), - boost: 10 - }, { - label: "memory_span_exporter", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- memory_span_exporter() : MemorySpanExporter -
-
- Create a MemorySpanExporter.
Span exporter that stores data in memory.
Provides direct getter access to exported spans.
Useful for testing and inspection without serialization. -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\memory_span_exporter()"), - boost: 10 - }, { - label: "memory_span_processor", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- memory_span_processor(SpanExporter $exporter) : MemorySpanProcessor -
-
- Create a MemorySpanProcessor.
Span processor that stores spans in memory and exports via configured exporter.
Useful for testing.
@param SpanExporter $exporter The exporter to send spans to -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\memory_span_processor(" + "$" + "{" + "1:exporter" + "}" + ")"), - boost: 10 - }, { - label: "merge", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- merge(string $table, string $alias = null) : MergeUsingStep -
-
- Create a new MERGE query builder.
@param string $table Target table name
@param null|string $alias Optional table alias -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\merge(" + "$" + "{" + "1:table" + "}" + ", " + "$" + "{" + "2:alias" + "}" + ")"), - boost: 10 - }, { - label: "meter_provider", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- meter_provider(MetricProcessor $processor, ClockInterface $clock, AggregationTemporality $temporality = Flow\\Telemetry\\Meter\\AggregationTemporality::..., ExemplarFilter $exemplarFilter = Flow\\Telemetry\\Meter\\Exemplar\\TraceBasedExemplarFilter::..., MetricLimits $limits = Flow\\Telemetry\\Meter\\MetricLimits::...) : MeterProvider -
-
- Create a MeterProvider.
Creates a provider that uses a MetricProcessor for processing metrics.
For void/disabled metrics, pass void_processor().
For memory-based testing, pass memory_processor() with exporters.
@param MetricProcessor $processor The processor for metrics
@param ClockInterface $clock The clock for timestamps
@param AggregationTemporality $temporality Aggregation temporality for metrics
@param ExemplarFilter $exemplarFilter Filter for exemplar sampling (default: TraceBasedExemplarFilter)
@param MetricLimits $limits Cardinality limits for metric instruments -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\meter_provider(" + "$" + "{" + "1:processor" + "}" + ", " + "$" + "{" + "2:clock" + "}" + ", " + "$" + "{" + "3:temporality" + "}" + ", " + "$" + "{" + "4:exemplarFilter" + "}" + ", " + "$" + "{" + "5:limits" + "}" + ")"), - boost: 10 - }, { - label: "metric_limits", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- metric_limits(int $cardinalityLimit = 2000) : MetricLimits -
-
- Create MetricLimits configuration.
MetricLimits controls the maximum cardinality (unique attribute combinations)
per metric instrument, preventing memory exhaustion from high-cardinality attributes.
When the cardinality limit is exceeded, new attribute combinations are aggregated
into an overflow data point with \`otel.metric.overflow: true\` attribute.
Note: Unlike spans and logs, metrics are EXEMPT from attribute count and value
length limits per the OpenTelemetry specification. Only cardinality is limited.
@param int $cardinalityLimit Maximum number of unique attribute combinations per instrument -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\metric_limits(" + "$" + "{" + "1:cardinalityLimit" + "}" + ")"), - boost: 10 - }, { - label: "min", - type: "function", - detail: "flow\u002Ddsl\u002Daggregating\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- min(EntryReference|string $ref) : Min -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\min(" + "$" + "{" + "1:ref" + "}" + ")"), - boost: 10 - }, { - label: "mysql_insert_options", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- mysql_insert_options(bool $skip_conflicts = null, bool $upsert = null, array $update_columns = []) : MySQLInsertOptions -
-
- @param array $update_columns -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\Adapter\\Doctrine\\mysql_insert_options(" + "$" + "{" + "1:skip_conflicts" + "}" + ", " + "$" + "{" + "2:upsert" + "}" + ", " + "$" + "{" + "3:update_columns" + "}" + ")"), - boost: 10 - }, { - label: "native_local_filesystem", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- native_local_filesystem() : NativeLocalFilesystem -
- ` - return div - }, - apply: snippet("\\Flow\\Filesystem\\DSL\\native_local_filesystem()"), - boost: 10 - }, { - label: "neq", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- neq(Expression $left, Expression $right) : Comparison -
-
- Create a not-equal comparison (column != value). -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\neq(" + "$" + "{" + "1:left" + "}" + ", " + "$" + "{" + "2:right" + "}" + ")"), - boost: 10 - }, { - label: "not", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- not(ScalarFunction $value) : Not -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\not(" + "$" + "{" + "1:value" + "}" + ")"), - boost: 10 - }, { - label: "not_regex_imatch", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- not_regex_imatch(Expression $expr, Expression $pattern) : OperatorCondition -
-
- Create a POSIX regex not match condition (!~*).
Case-insensitive.
Example: not_regex_imatch(col(\'email\'), literal_string(\'.*@spam\\\\.com\'))
Produces: email !~* \'.*@spam\\.com\' -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\not_regex_imatch(" + "$" + "{" + "1:expr" + "}" + ", " + "$" + "{" + "2:pattern" + "}" + ")"), - boost: 10 - }, { - label: "not_regex_match", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- not_regex_match(Expression $expr, Expression $pattern) : OperatorCondition -
-
- Create a POSIX regex not match condition (!~).
Case-sensitive.
Example: not_regex_match(col(\'email\'), literal_string(\'.*@spam\\\\.com\'))
Produces: email !~ \'.*@spam\\.com\' -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\not_regex_match(" + "$" + "{" + "1:expr" + "}" + ", " + "$" + "{" + "2:pattern" + "}" + ")"), - boost: 10 - }, { - label: "now", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- now(DateTimeZone|ScalarFunction $time_zone = DateTimeZone::...) : Now -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\now(" + "$" + "{" + "1:time_zone" + "}" + ")"), - boost: 10 - }, { - label: "nullif", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- nullif(Expression $expr1, Expression $expr2) : NullIf -
-
- Create a NULLIF expression. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\nullif(" + "$" + "{" + "1:expr1" + "}" + ", " + "$" + "{" + "2:expr2" + "}" + ")"), - boost: 10 - }, { - label: "null_entry", - type: "function", - detail: "flow\u002Ddsl\u002Dentries", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- null_entry(string $name, Metadata $metadata = null) : Entry -
-
- This functions is an alias for creating string entry from null.
The main difference between using this function an simply str_entry with second argument null
is that this function will also keep a note in the metadata that type might not be final.
For example when we need to guess column type from rows because schema was not provided,
and given column in the first row is null, it might still change once we get to the second row.
That metadata is used to determine if string_entry was created from null or not.
By design flow assumes when guessing column type that null would be a string (the most flexible type).
@return Entry -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\null_entry(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:metadata" + "}" + ")"), - boost: 10 - }, { - label: "null_schema", - type: "function", - detail: "flow\u002Ddsl\u002Dschema", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- null_schema(string $name, Metadata $metadata = null) : StringDefinition -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\null_schema(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:metadata" + "}" + ")"), - boost: 10 - }, { - label: "number_format", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- number_format(ScalarFunction|int|float $value, ScalarFunction|int $decimals = 2, ScalarFunction|string $decimal_separator = '.', ScalarFunction|string $thousands_separator = ',') : NumberFormat -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\number_format(" + "$" + "{" + "1:value" + "}" + ", " + "$" + "{" + "2:decimals" + "}" + ", " + "$" + "{" + "3:decimal_separator" + "}" + ", " + "$" + "{" + "4:thousands_separator" + "}" + ")"), - boost: 10 - }, { - label: "on_conflict_nothing", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- on_conflict_nothing(ConflictTarget $target = null) : OnConflictClause -
-
- Create an ON CONFLICT DO NOTHING clause. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\on_conflict_nothing(" + "$" + "{" + "1:target" + "}" + ")"), - boost: 10 - }, { - label: "on_conflict_update", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- on_conflict_update(ConflictTarget $target, array $updates) : OnConflictClause -
-
- Create an ON CONFLICT DO UPDATE clause.
@param ConflictTarget $target Conflict target (columns or constraint)
@param array $updates Column updates -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\on_conflict_update(" + "$" + "{" + "1:target" + "}" + ", " + "$" + "{" + "2:updates" + "}" + ")"), - boost: 10 - }, { - label: "optional", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- optional(ScalarFunction $function) : Optional -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\optional(" + "$" + "{" + "1:function" + "}" + ")"), - boost: 10 - }, { - label: "order_by", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- order_by(Expression $expr, SortDirection $direction = Flow\\PostgreSql\\QueryBuilder\\Clause\\SortDirection::..., NullsPosition $nulls = Flow\\PostgreSql\\QueryBuilder\\Clause\\NullsPosition::...) : OrderBy -
-
- Create an ORDER BY item. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\order_by(" + "$" + "{" + "1:expr" + "}" + ", " + "$" + "{" + "2:direction" + "}" + ", " + "$" + "{" + "3:nulls" + "}" + ")"), - boost: 10 - }, { - label: "os_detector", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- os_detector() : OsDetector -
-
- Create an OsDetector.
Detects operating system information including os.type, os.name, os.version,
and os.description using PHP\'s php_uname() function. -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\os_detector()"), - boost: 10 - }, { - label: "otlp_curl_options", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- otlp_curl_options() : CurlTransportOptions -
-
- Create curl transport options for OTLP.
Returns a CurlTransportOptions builder for configuring curl transport settings
using a fluent interface.
Example usage:
\`\`\`php
$options = otlp_curl_options()
->withTimeout(60)
->withConnectTimeout(15)
->withHeader(\'Authorization\', \'Bearer token\')
->withCompression()
->withSslVerification(verifyPeer: true);
$transport = otlp_curl_transport($endpoint, $serializer, $options);
\`\`\` -
- ` - return div - }, - apply: snippet("\\Flow\\Bridge\\Telemetry\\OTLP\\DSL\\otlp_curl_options()"), - boost: 10 - }, { - label: "otlp_curl_transport", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- otlp_curl_transport(string $endpoint, Serializer $serializer, CurlTransportOptions $options = Flow\\Bridge\\Telemetry\\OTLP\\Transport\\CurlTransportOptions::...) : CurlTransport -
-
- Create an async curl transport for OTLP endpoints.
Creates a CurlTransport that uses curl_multi for non-blocking I/O.
Unlike HttpTransport (PSR-18), this transport queues requests and executes
them asynchronously. Completed requests are processed on subsequent send()
calls or on shutdown().
Requires: ext-curl PHP extension
Example usage:
\`\`\`php
// JSON over HTTP (async) with default options
$transport = otlp_curl_transport(
endpoint: \'http://localhost:4318\',
serializer: otlp_json_serializer(),
);
// Protobuf over HTTP (async) with custom options
$transport = otlp_curl_transport(
endpoint: \'http://localhost:4318\',
serializer: otlp_protobuf_serializer(),
options: otlp_curl_options()
->withTimeout(60)
->withHeader(\'Authorization\', \'Bearer token\')
->withCompression(),
);
\`\`\`
@param string $endpoint OTLP endpoint URL (e.g., \'http://localhost:4318\')
@param Serializer $serializer Serializer for encoding telemetry data (JSON or Protobuf)
@param CurlTransportOptions $options Transport configuration options -
- ` - return div - }, - apply: snippet("\\Flow\\Bridge\\Telemetry\\OTLP\\DSL\\otlp_curl_transport(" + "$" + "{" + "1:endpoint" + "}" + ", " + "$" + "{" + "2:serializer" + "}" + ", " + "$" + "{" + "3:options" + "}" + ")"), - boost: 10 - }, { - label: "otlp_grpc_transport", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- otlp_grpc_transport(string $endpoint, ProtobufSerializer $serializer, array $headers = [], bool $insecure = true) : GrpcTransport -
-
- Create a gRPC transport for OTLP endpoints.
Creates a GrpcTransport configured to send telemetry data to an OTLP-compatible
endpoint using gRPC protocol with Protobuf serialization.
Requires:
- ext-grpc PHP extension
- google/protobuf package
- open-telemetry/gen-otlp-protobuf package
Example usage:
\`\`\`php
$transport = otlp_grpc_transport(
endpoint: \'localhost:4317\',
serializer: otlp_protobuf_serializer(),
);
\`\`\`
@param string $endpoint gRPC endpoint (e.g., \'localhost:4317\')
@param ProtobufSerializer $serializer Protobuf serializer for encoding telemetry data
@param array $headers Additional headers (metadata) to include in requests
@param bool $insecure Whether to use insecure channel credentials (default true for local dev) -
- ` - return div - }, - apply: snippet("\\Flow\\Bridge\\Telemetry\\OTLP\\DSL\\otlp_grpc_transport(" + "$" + "{" + "1:endpoint" + "}" + ", " + "$" + "{" + "2:serializer" + "}" + ", " + "$" + "{" + "3:headers" + "}" + ", " + "$" + "{" + "4:insecure" + "}" + ")"), - boost: 10 - }, { - label: "otlp_http_transport", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- otlp_http_transport(ClientInterface $client, RequestFactoryInterface $requestFactory, StreamFactoryInterface $streamFactory, string $endpoint, Serializer $serializer, array $headers = []) : HttpTransport -
-
- Create an HTTP transport for OTLP endpoints.
Creates an HttpTransport configured to send telemetry data to an OTLP-compatible
endpoint using PSR-18 HTTP client. Supports both JSON and Protobuf formats.
Example usage:
\`\`\`php
// JSON over HTTP
$transport = otlp_http_transport(
client: $client,
requestFactory: $psr17Factory,
streamFactory: $psr17Factory,
endpoint: \'http://localhost:4318\',
serializer: otlp_json_serializer(),
);
// Protobuf over HTTP
$transport = otlp_http_transport(
client: $client,
requestFactory: $psr17Factory,
streamFactory: $psr17Factory,
endpoint: \'http://localhost:4318\',
serializer: otlp_protobuf_serializer(),
);
\`\`\`
@param ClientInterface $client PSR-18 HTTP client
@param RequestFactoryInterface $requestFactory PSR-17 request factory
@param StreamFactoryInterface $streamFactory PSR-17 stream factory
@param string $endpoint OTLP endpoint URL (e.g., \'http://localhost:4318\')
@param Serializer $serializer Serializer for encoding telemetry data (JSON or Protobuf)
@param array $headers Additional headers to include in requests -
- ` - return div - }, - apply: snippet("\\Flow\\Bridge\\Telemetry\\OTLP\\DSL\\otlp_http_transport(" + "$" + "{" + "1:client" + "}" + ", " + "$" + "{" + "2:requestFactory" + "}" + ", " + "$" + "{" + "3:streamFactory" + "}" + ", " + "$" + "{" + "4:endpoint" + "}" + ", " + "$" + "{" + "5:serializer" + "}" + ", " + "$" + "{" + "6:headers" + "}" + ")"), - boost: 10 - }, { - label: "otlp_json_serializer", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- otlp_json_serializer() : JsonSerializer -
-
- Create a JSON serializer for OTLP.
Returns a JsonSerializer that converts telemetry data to OTLP JSON wire format.
Use this with HttpTransport for JSON over HTTP.
Example usage:
\`\`\`php
$serializer = otlp_json_serializer();
$transport = otlp_http_transport($client, $reqFactory, $streamFactory, $endpoint, $serializer);
\`\`\` -
- ` - return div - }, - apply: snippet("\\Flow\\Bridge\\Telemetry\\OTLP\\DSL\\otlp_json_serializer()"), - boost: 10 - }, { - label: "otlp_logger_provider", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- otlp_logger_provider(LogProcessor $processor, ClockInterface $clock, ContextStorage $contextStorage = Flow\\Telemetry\\Context\\MemoryContextStorage::...) : LoggerProvider -
-
- Create a logger provider configured for OTLP export.
Example usage:
\`\`\`php
$processor = batching_log_processor(otlp_log_exporter($transport));
$provider = otlp_logger_provider($processor, $clock);
$logger = $provider->logger($resource, \'my-service\', \'1.0.0\');
\`\`\`
@param LogProcessor $processor The processor for handling log records
@param ClockInterface $clock The clock for timestamps
@param ContextStorage $contextStorage The context storage for propagating context -
- ` - return div - }, - apply: snippet("\\Flow\\Bridge\\Telemetry\\OTLP\\DSL\\otlp_logger_provider(" + "$" + "{" + "1:processor" + "}" + ", " + "$" + "{" + "2:clock" + "}" + ", " + "$" + "{" + "3:contextStorage" + "}" + ")"), - boost: 10 - }, { - label: "otlp_log_exporter", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- otlp_log_exporter(Transport $transport) : OTLPLogExporter -
-
- Create an OTLP log exporter.
Example usage:
\`\`\`php
$exporter = otlp_log_exporter($transport);
$processor = batching_log_processor($exporter);
\`\`\`
@param Transport $transport The transport for sending log data -
- ` - return div - }, - apply: snippet("\\Flow\\Bridge\\Telemetry\\OTLP\\DSL\\otlp_log_exporter(" + "$" + "{" + "1:transport" + "}" + ")"), - boost: 10 - }, { - label: "otlp_meter_provider", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- otlp_meter_provider(MetricProcessor $processor, ClockInterface $clock, AggregationTemporality $temporality = Flow\\Telemetry\\Meter\\AggregationTemporality::...) : MeterProvider -
-
- Create a meter provider configured for OTLP export.
Example usage:
\`\`\`php
$processor = batching_metric_processor(otlp_metric_exporter($transport));
$provider = otlp_meter_provider($processor, $clock);
$meter = $provider->meter($resource, \'my-service\', \'1.0.0\');
\`\`\`
@param MetricProcessor $processor The processor for handling metrics
@param ClockInterface $clock The clock for timestamps
@param AggregationTemporality $temporality The aggregation temporality for metrics -
- ` - return div - }, - apply: snippet("\\Flow\\Bridge\\Telemetry\\OTLP\\DSL\\otlp_meter_provider(" + "$" + "{" + "1:processor" + "}" + ", " + "$" + "{" + "2:clock" + "}" + ", " + "$" + "{" + "3:temporality" + "}" + ")"), - boost: 10 - }, { - label: "otlp_metric_exporter", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- otlp_metric_exporter(Transport $transport) : OTLPMetricExporter -
-
- Create an OTLP metric exporter.
Example usage:
\`\`\`php
$exporter = otlp_metric_exporter($transport);
$processor = batching_metric_processor($exporter);
\`\`\`
@param Transport $transport The transport for sending metric data -
- ` - return div - }, - apply: snippet("\\Flow\\Bridge\\Telemetry\\OTLP\\DSL\\otlp_metric_exporter(" + "$" + "{" + "1:transport" + "}" + ")"), - boost: 10 - }, { - label: "otlp_protobuf_serializer", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- otlp_protobuf_serializer() : ProtobufSerializer -
-
- Create a Protobuf serializer for OTLP.
Returns a ProtobufSerializer that converts telemetry data to OTLP Protobuf binary format.
Use this with HttpTransport for Protobuf over HTTP, or with GrpcTransport.
Requires:
- google/protobuf package
- open-telemetry/gen-otlp-protobuf package
Example usage:
\`\`\`php
$serializer = otlp_protobuf_serializer();
$transport = otlp_http_transport($client, $reqFactory, $streamFactory, $endpoint, $serializer);
\`\`\` -
- ` - return div - }, - apply: snippet("\\Flow\\Bridge\\Telemetry\\OTLP\\DSL\\otlp_protobuf_serializer()"), - boost: 10 - }, { - label: "otlp_span_exporter", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- otlp_span_exporter(Transport $transport) : OTLPSpanExporter -
-
- Create an OTLP span exporter.
Example usage:
\`\`\`php
$exporter = otlp_span_exporter($transport);
$processor = batching_span_processor($exporter);
\`\`\`
@param Transport $transport The transport for sending span data -
- ` - return div - }, - apply: snippet("\\Flow\\Bridge\\Telemetry\\OTLP\\DSL\\otlp_span_exporter(" + "$" + "{" + "1:transport" + "}" + ")"), - boost: 10 - }, { - label: "otlp_tracer_provider", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- otlp_tracer_provider(SpanProcessor $processor, ClockInterface $clock, Sampler $sampler = Flow\\Telemetry\\Tracer\\Sampler\\AlwaysOnSampler::..., ContextStorage $contextStorage = Flow\\Telemetry\\Context\\MemoryContextStorage::...) : TracerProvider -
-
- Create a tracer provider configured for OTLP export.
Example usage:
\`\`\`php
$processor = batching_span_processor(otlp_span_exporter($transport));
$provider = otlp_tracer_provider($processor, $clock);
$tracer = $provider->tracer($resource, \'my-service\', \'1.0.0\');
\`\`\`
@param SpanProcessor $processor The processor for handling spans
@param ClockInterface $clock The clock for timestamps
@param Sampler $sampler The sampler for deciding whether to record spans
@param ContextStorage $contextStorage The context storage for propagating trace context -
- ` - return div - }, - apply: snippet("\\Flow\\Bridge\\Telemetry\\OTLP\\DSL\\otlp_tracer_provider(" + "$" + "{" + "1:processor" + "}" + ", " + "$" + "{" + "2:clock" + "}" + ", " + "$" + "{" + "3:sampler" + "}" + ", " + "$" + "{" + "4:contextStorage" + "}" + ")"), - boost: 10 - }, { - label: "overwrite", - type: "function", - detail: "flow\u002Ddsl\u002Ddata\u002Dframe", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- overwrite() : SaveMode -
-
- Alias for save_mode_overwrite(). -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\overwrite()"), - boost: 10 - }, { - label: "pagination_key_asc", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pagination_key_asc(string $column, ParameterType|Type|string|int $type = Doctrine\\DBAL\\ParameterType::...) : Key -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\Adapter\\Doctrine\\pagination_key_asc(" + "$" + "{" + "1:column" + "}" + ", " + "$" + "{" + "2:type" + "}" + ")"), - boost: 10 - }, { - label: "pagination_key_desc", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pagination_key_desc(string $column, ParameterType|Type|string|int $type = Doctrine\\DBAL\\ParameterType::...) : Key -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\Adapter\\Doctrine\\pagination_key_desc(" + "$" + "{" + "1:column" + "}" + ", " + "$" + "{" + "2:type" + "}" + ")"), - boost: 10 - }, { - label: "pagination_key_set", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pagination_key_set(Key $keys) : KeySet -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\Adapter\\Doctrine\\pagination_key_set(" + "$" + "{" + "1:keys" + "}" + ")"), - boost: 10 - }, { - label: "param", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- param(int $position) : Parameter -
-
- Create a positional parameter ($1, $2, etc.). -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\param(" + "$" + "{" + "1:position" + "}" + ")"), - boost: 10 - }, { - label: "partition", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- partition(string $name, string $value) : Partition -
- ` - return div - }, - apply: snippet("\\Flow\\Filesystem\\DSL\\partition(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:value" + "}" + ")"), - boost: 10 - }, { - label: "partitions", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- partitions(Partition $partition) : Partitions -
- ` - return div - }, - apply: snippet("\\Flow\\Filesystem\\DSL\\partitions(" + "$" + "{" + "1:partition" + "}" + ")"), - boost: 10 - }, { - label: "pass_through_log_processor", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pass_through_log_processor(LogExporter $exporter) : PassThroughLogProcessor -
-
- Create a PassThroughLogProcessor.
Exports each log record immediately when processed.
Useful for debugging where immediate visibility is more important than performance.
@param LogExporter $exporter The exporter to send logs to -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\pass_through_log_processor(" + "$" + "{" + "1:exporter" + "}" + ")"), - boost: 10 - }, { - label: "pass_through_metric_processor", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pass_through_metric_processor(MetricExporter $exporter) : PassThroughMetricProcessor -
-
- Create a PassThroughMetricProcessor.
Exports each metric immediately when processed.
Useful for debugging where immediate visibility is more important than performance.
@param MetricExporter $exporter The exporter to send metrics to -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\pass_through_metric_processor(" + "$" + "{" + "1:exporter" + "}" + ")"), - boost: 10 - }, { - label: "pass_through_span_processor", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pass_through_span_processor(SpanExporter $exporter) : PassThroughSpanProcessor -
-
- Create a PassThroughSpanProcessor.
Exports each span immediately when it ends.
Useful for debugging where immediate visibility is more important than performance.
@param SpanExporter $exporter The exporter to send spans to -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\pass_through_span_processor(" + "$" + "{" + "1:exporter" + "}" + ")"), - boost: 10 - }, { - label: "path", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- path(string $path, Options|array $options = []) : Path -
-
- Path supports glob patterns.
Examples:
- path(\'*.csv\') - any csv file in current directory
- path(\'/** / *.csv\') - any csv file in any subdirectory (remove empty spaces)
- path(\'/dir/partition=* /*.parquet\') - any parquet file in given partition directory.
Glob pattern is also supported by remote filesystems like Azure
- path(\'azure-blob://directory/*.csv\') - any csv file in given directory
@param array|Path\\Options $options -
- ` - return div - }, - apply: snippet("\\Flow\\Filesystem\\DSL\\path(" + "$" + "{" + "1:path" + "}" + ", " + "$" + "{" + "2:options" + "}" + ")"), - boost: 10 - }, { - label: "path_memory", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- path_memory(string $path = '', array $options = null) : Path -
-
- Create a path to php memory stream.
@param string $path - default = \'\' - path is used as an identifier in memory filesystem, so we can write multiple files to memory at once, each path is a new handle
@param null|array{\'stream\': \'memory\'|\'temp\'} $options - when nothing is provided, \'temp\' stream is used by default
@return Path -
- ` - return div - }, - apply: snippet("\\Flow\\Filesystem\\DSL\\path_memory(" + "$" + "{" + "1:path" + "}" + ", " + "$" + "{" + "2:options" + "}" + ")"), - boost: 10 - }, { - label: "path_real", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- path_real(string $path, array $options = []) : Path -
-
- Resolve real path from given path.
@param array $options -
- ` - return div - }, - apply: snippet("\\Flow\\Filesystem\\DSL\\path_real(" + "$" + "{" + "1:path" + "}" + ", " + "$" + "{" + "2:options" + "}" + ")"), - boost: 10 - }, { - label: "path_stdout", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- path_stdout(array $options = null) : Path -
-
- Create a path to php stdout stream.
@param null|array{\'stream\': \'output\'|\'stderr\'|\'stdout\'} $options
@return Path -
- ` - return div - }, - apply: snippet("\\Flow\\Filesystem\\DSL\\path_stdout(" + "$" + "{" + "1:options" + "}" + ")"), - boost: 10 - }, { - label: "pgsql_client", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pgsql_client(ConnectionParameters $params, ValueConverters $valueConverters = null, RowMapper $mapper = null) : Client -
-
- Create a PostgreSQL client using ext-pgsql.
The client connects immediately and is ready to execute queries.
For object mapping, provide a RowMapper (use pgsql_mapper() for the default).
@param Client\\ConnectionParameters $params Connection parameters
@param null|ValueConverters $valueConverters Custom type converters (optional)
@param null|Client\\RowMapper $mapper Row mapper for object hydration (optional)
@throws ConnectionException If connection fails
@example
// Basic client
$client = pgsql_client(pgsql_connection(\'host=localhost dbname=mydb\'));
// With object mapping
$client = pgsql_client(
pgsql_connection(\'host=localhost dbname=mydb\'),
mapper: pgsql_mapper(),
); -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\pgsql_client(" + "$" + "{" + "1:params" + "}" + ", " + "$" + "{" + "2:valueConverters" + "}" + ", " + "$" + "{" + "3:mapper" + "}" + ")"), - boost: 10 - }, { - label: "pgsql_connection", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pgsql_connection(string $connectionString) : ConnectionParameters -
-
- Create connection parameters from a connection string.
Accepts libpq-style connection strings:
- Key-value format: \"host=localhost port=5432 dbname=mydb user=myuser password=secret\"
- URI format: \"postgresql://user:password@localhost:5432/dbname\"
@example
$params = pgsql_connection(\'host=localhost dbname=mydb\');
$params = pgsql_connection(\'postgresql://user:pass@localhost/mydb\'); -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\pgsql_connection(" + "$" + "{" + "1:connectionString" + "}" + ")"), - boost: 10 - }, { - label: "pgsql_connection_dsn", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pgsql_connection_dsn(string $dsn) : ConnectionParameters -
-
- Create connection parameters from a DSN string.
Parses standard PostgreSQL DSN format commonly used in environment variables
(e.g., DATABASE_URL). Supports postgres://, postgresql://, and pgsql:// schemes.
@param string $dsn DSN string in format: postgres://user:password@host:port/database?options
@throws Client\\DsnParserException If the DSN cannot be parsed
@example
$params = pgsql_connection_dsn(\'postgres://myuser:secret@localhost:5432/mydb\');
$params = pgsql_connection_dsn(\'postgresql://user:pass@db.example.com/app?sslmode=require\');
$params = pgsql_connection_dsn(\'pgsql://user:pass@localhost/mydb\'); // Symfony/Doctrine format
$params = pgsql_connection_dsn(getenv(\'DATABASE_URL\')); -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\pgsql_connection_dsn(" + "$" + "{" + "1:dsn" + "}" + ")"), - boost: 10 - }, { - label: "pgsql_connection_params", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pgsql_connection_params(string $database, string $host = 'localhost', int $port = 5432, string $user = null, string $password = null, array $options = []) : ConnectionParameters -
-
- Create connection parameters from individual values.
Allows specifying connection parameters individually for better type safety
and IDE support.
@param string $database Database name (required)
@param string $host Hostname (default: localhost)
@param int $port Port number (default: 5432)
@param null|string $user Username (optional)
@param null|string $password Password (optional)
@param array $options Additional libpq options
@example
$params = pgsql_connection_params(
database: \'mydb\',
host: \'localhost\',
user: \'myuser\',
password: \'secret\',
); -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\pgsql_connection_params(" + "$" + "{" + "1:database" + "}" + ", " + "$" + "{" + "2:host" + "}" + ", " + "$" + "{" + "3:port" + "}" + ", " + "$" + "{" + "4:user" + "}" + ", " + "$" + "{" + "5:password" + "}" + ", " + "$" + "{" + "6:options" + "}" + ")"), - boost: 10 - }, { - label: "pgsql_mapper", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pgsql_mapper() : ConstructorMapper -
-
- Create a default constructor-based row mapper.
Maps database rows directly to constructor parameters.
Column names must match parameter names exactly (1:1).
Use SQL aliases if column names differ from parameter names.
@example
// DTO where column names match parameter names
readonly class User {
public function __construct(
public int $id,
public string $name,
public string $email,
) {}
}
// Usage
$client = pgsql_client(pgsql_connection(\'...\'), mapper: pgsql_mapper());
// For snake_case columns, use SQL aliases
$user = $client->fetchInto(
User::class,
\'SELECT id, user_name AS name, user_email AS email FROM users WHERE id = $1\',
[1]
); -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\pgsql_mapper()"), - boost: 10 - }, { - label: "pgsql_type_bigint", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pgsql_type_bigint() : PostgreSqlType -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\pgsql_type_bigint()"), - boost: 10 - }, { - label: "pgsql_type_bit", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pgsql_type_bit() : PostgreSqlType -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\pgsql_type_bit()"), - boost: 10 - }, { - label: "pgsql_type_bool", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pgsql_type_bool() : PostgreSqlType -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\pgsql_type_bool()"), - boost: 10 - }, { - label: "pgsql_type_boolean", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pgsql_type_boolean() : PostgreSqlType -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\pgsql_type_boolean()"), - boost: 10 - }, { - label: "pgsql_type_bool_array", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pgsql_type_bool_array() : PostgreSqlType -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\pgsql_type_bool_array()"), - boost: 10 - }, { - label: "pgsql_type_bpchar", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pgsql_type_bpchar() : PostgreSqlType -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\pgsql_type_bpchar()"), - boost: 10 - }, { - label: "pgsql_type_bytea", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pgsql_type_bytea() : PostgreSqlType -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\pgsql_type_bytea()"), - boost: 10 - }, { - label: "pgsql_type_char", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pgsql_type_char() : PostgreSqlType -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\pgsql_type_char()"), - boost: 10 - }, { - label: "pgsql_type_cidr", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pgsql_type_cidr() : PostgreSqlType -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\pgsql_type_cidr()"), - boost: 10 - }, { - label: "pgsql_type_date", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pgsql_type_date() : PostgreSqlType -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\pgsql_type_date()"), - boost: 10 - }, { - label: "pgsql_type_double", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pgsql_type_double() : PostgreSqlType -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\pgsql_type_double()"), - boost: 10 - }, { - label: "pgsql_type_float4", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pgsql_type_float4() : PostgreSqlType -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\pgsql_type_float4()"), - boost: 10 - }, { - label: "pgsql_type_float4_array", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pgsql_type_float4_array() : PostgreSqlType -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\pgsql_type_float4_array()"), - boost: 10 - }, { - label: "pgsql_type_float8", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pgsql_type_float8() : PostgreSqlType -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\pgsql_type_float8()"), - boost: 10 - }, { - label: "pgsql_type_float8_array", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pgsql_type_float8_array() : PostgreSqlType -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\pgsql_type_float8_array()"), - boost: 10 - }, { - label: "pgsql_type_inet", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pgsql_type_inet() : PostgreSqlType -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\pgsql_type_inet()"), - boost: 10 - }, { - label: "pgsql_type_int2", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pgsql_type_int2() : PostgreSqlType -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\pgsql_type_int2()"), - boost: 10 - }, { - label: "pgsql_type_int2_array", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pgsql_type_int2_array() : PostgreSqlType -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\pgsql_type_int2_array()"), - boost: 10 - }, { - label: "pgsql_type_int4", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pgsql_type_int4() : PostgreSqlType -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\pgsql_type_int4()"), - boost: 10 - }, { - label: "pgsql_type_int4_array", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pgsql_type_int4_array() : PostgreSqlType -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\pgsql_type_int4_array()"), - boost: 10 - }, { - label: "pgsql_type_int8", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pgsql_type_int8() : PostgreSqlType -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\pgsql_type_int8()"), - boost: 10 - }, { - label: "pgsql_type_int8_array", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pgsql_type_int8_array() : PostgreSqlType -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\pgsql_type_int8_array()"), - boost: 10 - }, { - label: "pgsql_type_integer", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pgsql_type_integer() : PostgreSqlType -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\pgsql_type_integer()"), - boost: 10 - }, { - label: "pgsql_type_interval", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pgsql_type_interval() : PostgreSqlType -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\pgsql_type_interval()"), - boost: 10 - }, { - label: "pgsql_type_json", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pgsql_type_json() : PostgreSqlType -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\pgsql_type_json()"), - boost: 10 - }, { - label: "pgsql_type_jsonb", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pgsql_type_jsonb() : PostgreSqlType -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\pgsql_type_jsonb()"), - boost: 10 - }, { - label: "pgsql_type_jsonb_array", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pgsql_type_jsonb_array() : PostgreSqlType -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\pgsql_type_jsonb_array()"), - boost: 10 - }, { - label: "pgsql_type_json_array", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pgsql_type_json_array() : PostgreSqlType -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\pgsql_type_json_array()"), - boost: 10 - }, { - label: "pgsql_type_macaddr", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pgsql_type_macaddr() : PostgreSqlType -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\pgsql_type_macaddr()"), - boost: 10 - }, { - label: "pgsql_type_macaddr8", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pgsql_type_macaddr8() : PostgreSqlType -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\pgsql_type_macaddr8()"), - boost: 10 - }, { - label: "pgsql_type_money", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pgsql_type_money() : PostgreSqlType -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\pgsql_type_money()"), - boost: 10 - }, { - label: "pgsql_type_numeric", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pgsql_type_numeric() : PostgreSqlType -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\pgsql_type_numeric()"), - boost: 10 - }, { - label: "pgsql_type_oid", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pgsql_type_oid() : PostgreSqlType -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\pgsql_type_oid()"), - boost: 10 - }, { - label: "pgsql_type_real", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pgsql_type_real() : PostgreSqlType -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\pgsql_type_real()"), - boost: 10 - }, { - label: "pgsql_type_smallint", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pgsql_type_smallint() : PostgreSqlType -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\pgsql_type_smallint()"), - boost: 10 - }, { - label: "pgsql_type_text", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pgsql_type_text() : PostgreSqlType -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\pgsql_type_text()"), - boost: 10 - }, { - label: "pgsql_type_text_array", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pgsql_type_text_array() : PostgreSqlType -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\pgsql_type_text_array()"), - boost: 10 - }, { - label: "pgsql_type_time", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pgsql_type_time() : PostgreSqlType -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\pgsql_type_time()"), - boost: 10 - }, { - label: "pgsql_type_timestamp", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pgsql_type_timestamp() : PostgreSqlType -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\pgsql_type_timestamp()"), - boost: 10 - }, { - label: "pgsql_type_timestamptz", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pgsql_type_timestamptz() : PostgreSqlType -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\pgsql_type_timestamptz()"), - boost: 10 - }, { - label: "pgsql_type_timetz", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pgsql_type_timetz() : PostgreSqlType -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\pgsql_type_timetz()"), - boost: 10 - }, { - label: "pgsql_type_uuid", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pgsql_type_uuid() : PostgreSqlType -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\pgsql_type_uuid()"), - boost: 10 - }, { - label: "pgsql_type_uuid_array", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pgsql_type_uuid_array() : PostgreSqlType -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\pgsql_type_uuid_array()"), - boost: 10 - }, { - label: "pgsql_type_varbit", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pgsql_type_varbit() : PostgreSqlType -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\pgsql_type_varbit()"), - boost: 10 - }, { - label: "pgsql_type_varchar", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pgsql_type_varchar() : PostgreSqlType -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\pgsql_type_varchar()"), - boost: 10 - }, { - label: "pgsql_type_varchar_array", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pgsql_type_varchar_array() : PostgreSqlType -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\pgsql_type_varchar_array()"), - boost: 10 - }, { - label: "pgsql_type_xml", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pgsql_type_xml() : PostgreSqlType -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\pgsql_type_xml()"), - boost: 10 - }, { - label: "pie_chart", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- pie_chart(EntryReference $label, References $datasets) : PieChart -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\Adapter\\ChartJS\\pie_chart(" + "$" + "{" + "1:label" + "}" + ", " + "$" + "{" + "2:datasets" + "}" + ")"), - boost: 10 - }, { - label: "postgresql_insert_options", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- postgresql_insert_options(bool $skip_conflicts = null, string $constraint = null, array $conflict_columns = [], array $update_columns = []) : PostgreSQLInsertOptions -
-
- @param array $conflict_columns
@param array $update_columns -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\Adapter\\Doctrine\\postgresql_insert_options(" + "$" + "{" + "1:skip_conflicts" + "}" + ", " + "$" + "{" + "2:constraint" + "}" + ", " + "$" + "{" + "3:conflict_columns" + "}" + ", " + "$" + "{" + "4:update_columns" + "}" + ")"), - boost: 10 - }, { - label: "postgresql_telemetry_config", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- postgresql_telemetry_config(Telemetry $telemetry, ClockInterface $clock, PostgreSqlTelemetryOptions $options = null) : PostgreSqlTelemetryConfig -
-
- Create telemetry configuration for PostgreSQL client.
Bundles telemetry instance, clock, and options needed to instrument a PostgreSQL client.
@param Telemetry $telemetry The telemetry instance
@param ClockInterface $clock Clock for timestamps
@param null|PostgreSqlTelemetryOptions $options Telemetry options (default: all enabled)
@example
$config = postgresql_telemetry_config(
telemetry(resource([\'service.name\' => \'my-app\'])),
new SystemClock(),
); -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\postgresql_telemetry_config(" + "$" + "{" + "1:telemetry" + "}" + ", " + "$" + "{" + "2:clock" + "}" + ", " + "$" + "{" + "3:options" + "}" + ")"), - boost: 10 - }, { - label: "postgresql_telemetry_options", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- postgresql_telemetry_options(bool $traceQueries = true, bool $traceTransactions = true, bool $collectMetrics = true, bool $logQueries = false, int $maxQueryLength = 1000, bool $includeParameters = false, int $maxParameters = 10, int $maxParameterLength = 100) : PostgreSqlTelemetryOptions -
-
- Create telemetry options for PostgreSQL client instrumentation.
Controls which telemetry signals (traces, metrics, logs) are enabled
and how query information is captured.
@param bool $traceQueries Create spans for query execution (default: true)
@param bool $traceTransactions Create spans for transactions (default: true)
@param bool $collectMetrics Collect duration and row count metrics (default: true)
@param bool $logQueries Log executed queries (default: false)
@param null|int $maxQueryLength Maximum query text length in telemetry (default: 1000, null = unlimited)
@param bool $includeParameters Include query parameters in telemetry (default: false, security consideration)
@example
// Default options (traces and metrics enabled)
$options = postgresql_telemetry_options();
// Enable query logging
$options = postgresql_telemetry_options(logQueries: true);
// Disable all but metrics
$options = postgresql_telemetry_options(
traceQueries: false,
traceTransactions: false,
collectMetrics: true,
); -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\postgresql_telemetry_options(" + "$" + "{" + "1:traceQueries" + "}" + ", " + "$" + "{" + "2:traceTransactions" + "}" + ", " + "$" + "{" + "3:collectMetrics" + "}" + ", " + "$" + "{" + "4:logQueries" + "}" + ", " + "$" + "{" + "5:maxQueryLength" + "}" + ", " + "$" + "{" + "6:includeParameters" + "}" + ", " + "$" + "{" + "7:maxParameters" + "}" + ", " + "$" + "{" + "8:maxParameterLength" + "}" + ")"), - boost: 10 - }, { - label: "postgresql_update_options", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- postgresql_update_options(array $primary_key_columns = [], array $update_columns = []) : PostgreSQLUpdateOptions -
-
- @param array $primary_key_columns
@param array $update_columns -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\Adapter\\Doctrine\\postgresql_update_options(" + "$" + "{" + "1:primary_key_columns" + "}" + ", " + "$" + "{" + "2:update_columns" + "}" + ")"), - boost: 10 - }, { - label: "prepare_transaction", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- prepare_transaction(string $transactionId) : PreparedTransactionFinalStep -
-
- Create a PREPARE TRANSACTION builder.
Example: prepare_transaction(\'my_transaction\')
Produces: PREPARE TRANSACTION \'my_transaction\' -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\prepare_transaction(" + "$" + "{" + "1:transactionId" + "}" + ")"), - boost: 10 - }, { - label: "primary_key", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- primary_key(string $columns) : PrimaryKeyConstraint -
-
- Create a PRIMARY KEY constraint.
@param string ...$columns Columns that form the primary key -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\primary_key(" + "$" + "{" + "1:columns" + "}" + ")"), - boost: 10 - }, { - label: "print_rows", - type: "function", - detail: "flow\u002Ddsl\u002Ddata\u002Dframe", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- print_rows(Rows $rows, int|bool $truncate = false, Formatter $formatter = null) : string -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\print_rows(" + "$" + "{" + "1:rows" + "}" + ", " + "$" + "{" + "2:truncate" + "}" + ", " + "$" + "{" + "3:formatter" + "}" + ")"), - boost: 10 - }, { - label: "print_schema", - type: "function", - detail: "flow\u002Ddsl\u002Dschema", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- print_schema(Schema $schema, SchemaFormatter $formatter = null) : string -
-
- @param Schema $schema
@deprecated Please use schema_to_ascii($schema) instead -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\print_schema(" + "$" + "{" + "1:schema" + "}" + ", " + "$" + "{" + "2:formatter" + "}" + ")"), - boost: 10 - }, { - label: "process_detector", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- process_detector() : ProcessDetector -
-
- Create a ProcessDetector.
Detects process information including process.pid, process.executable.path,
process.runtime.name (PHP), process.runtime.version, process.command,
and process.owner (on POSIX systems). -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\process_detector()"), - boost: 10 - }, { - label: "propagation_context", - type: "function", - detail: "flow\u002Ddsl\u002Dtype", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- propagation_context(SpanContext $spanContext = null, Baggage $baggage = null) : PropagationContext -
-
- Create a PropagationContext.
Value object containing both trace context (SpanContext) and application
data (Baggage) that can be propagated across process boundaries.
@param null|SpanContext $spanContext Optional span context
@param null|Baggage $baggage Optional baggage -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\propagation_context(" + "$" + "{" + "1:spanContext" + "}" + ", " + "$" + "{" + "2:baggage" + "}" + ")"), - boost: 10 - }, { - label: "protocol", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- protocol(string $protocol) : Protocol -
- ` - return div - }, - apply: snippet("\\Flow\\Filesystem\\DSL\\protocol(" + "$" + "{" + "1:protocol" + "}" + ")"), - boost: 10 - }, { - label: "psr7_request_carrier", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- psr7_request_carrier(ServerRequestInterface $request) : RequestCarrier -
- ` - return div - }, - apply: snippet("\\Flow\\Bridge\\Psr7\\Telemetry\\DSL\\psr7_request_carrier(" + "$" + "{" + "1:request" + "}" + ")"), - boost: 10 - }, { - label: "psr7_response_carrier", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- psr7_response_carrier(ResponseInterface $response) : ResponseCarrier -
- ` - return div - }, - apply: snippet("\\Flow\\Bridge\\Psr7\\Telemetry\\DSL\\psr7_response_carrier(" + "$" + "{" + "1:response" + "}" + ")"), - boost: 10 - }, { - label: "psr18_traceable_client", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- psr18_traceable_client(ClientInterface $client, Telemetry $telemetry) : PSR18TraceableClient -
- ` - return div - }, - apply: snippet("\\Flow\\Bridge\\Psr18\\Telemetry\\DSL\\psr18_traceable_client(" + "$" + "{" + "1:client" + "}" + ", " + "$" + "{" + "2:telemetry" + "}" + ")"), - boost: 10 - }, { - label: "random_string", - type: "function", - detail: "flow\u002Ddsl\u002Ddata\u002Dframe", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- random_string(ScalarFunction|int $length, RandomValueGenerator $generator = Flow\\ETL\\NativePHPRandomValueGenerator::...) : RandomString -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\random_string(" + "$" + "{" + "1:length" + "}" + ", " + "$" + "{" + "2:generator" + "}" + ")"), - boost: 10 - }, { - label: "rank", - type: "function", - detail: "flow\u002Ddsl\u002Dwindow\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- rank() : Rank -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\rank()"), - boost: 10 - }, { - label: "raw_cond", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- raw_cond(string $sql) : RawCondition -
-
- Create a raw SQL condition (use with caution).
SECURITY WARNING: This function accepts raw SQL without parameterization.
SQL injection is possible if used with untrusted user input.
Only use with trusted, validated input.
For user-provided values, use standard condition functions with param():
\`\`\`php
// UNSAFE - SQL injection possible:
raw_cond(\"status = \'\" . $userInput . \"\'\")
// SAFE - use typed conditions:
eq(col(\'status\'), param(1))
\`\`\` -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\raw_cond(" + "$" + "{" + "1:sql" + "}" + ")"), - boost: 10 - }, { - label: "raw_expr", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- raw_expr(string $sql) : RawExpression -
-
- Create a raw SQL expression (use with caution).
SECURITY WARNING: This function accepts raw SQL without parameterization.
SQL injection is possible if used with untrusted user input.
Only use with trusted, validated input.
For user-provided values, use param() instead:
\`\`\`php
// UNSAFE - SQL injection possible:
raw_expr(\"custom_func(\'\" . $userInput . \"\')\")
// SAFE - use parameters:
func(\'custom_func\', param(1))
\`\`\` -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\raw_expr(" + "$" + "{" + "1:sql" + "}" + ")"), - boost: 10 - }, { - label: "reassign_owned", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- reassign_owned(string $roles) : ReassignOwnedToStep -
-
- Create a REASSIGN OWNED builder.
Example: reassign_owned(\'old_role\')->to(\'new_role\')
Produces: REASSIGN OWNED BY old_role TO new_role
@param string ...$roles The roles whose owned objects should be reassigned
@return ReassignOwnedToStep Builder for reassign owned options -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\reassign_owned(" + "$" + "{" + "1:roles" + "}" + ")"), - boost: 10 - }, { - label: "ref", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- ref(string $entry) : EntryReference -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\ref(" + "$" + "{" + "1:entry" + "}" + ")"), - boost: 10 - }, { - label: "refresh_materialized_view", - type: "function", - detail: "flow\u002Ddsl\u002Dschema", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- refresh_materialized_view(string $name, string $schema = null) : RefreshMatViewOptionsStep -
-
- Create a REFRESH MATERIALIZED VIEW builder.
Example: refresh_materialized_view(\'user_stats\')
Produces: REFRESH MATERIALIZED VIEW user_stats
Example: refresh_materialized_view(\'user_stats\')->concurrently()->withData()
Produces: REFRESH MATERIALIZED VIEW CONCURRENTLY user_stats WITH DATA
@param string $name View name (may include schema as \"schema.view\")
@param null|string $schema Schema name (optional, overrides parsed schema) -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\refresh_materialized_view(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:schema" + "}" + ")"), - boost: 10 - }, { - label: "refs", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- refs(Reference|string $entries) : References -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\refs(" + "$" + "{" + "1:entries" + "}" + ")"), - boost: 10 - }, { - label: "ref_action_cascade", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- ref_action_cascade() : ReferentialAction -
-
- Get a CASCADE referential action. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\ref_action_cascade()"), - boost: 10 - }, { - label: "ref_action_no_action", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- ref_action_no_action() : ReferentialAction -
-
- Get a NO ACTION referential action. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\ref_action_no_action()"), - boost: 10 - }, { - label: "ref_action_restrict", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- ref_action_restrict() : ReferentialAction -
-
- Get a RESTRICT referential action. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\ref_action_restrict()"), - boost: 10 - }, { - label: "ref_action_set_default", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- ref_action_set_default() : ReferentialAction -
-
- Get a SET DEFAULT referential action. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\ref_action_set_default()"), - boost: 10 - }, { - label: "ref_action_set_null", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- ref_action_set_null() : ReferentialAction -
-
- Get a SET NULL referential action. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\ref_action_set_null()"), - boost: 10 - }, { - label: "regex", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- regex(ScalarFunction|string $pattern, ScalarFunction|string $subject, ScalarFunction|int $flags = 0, ScalarFunction|int $offset = 0) : Regex -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\regex(" + "$" + "{" + "1:pattern" + "}" + ", " + "$" + "{" + "2:subject" + "}" + ", " + "$" + "{" + "3:flags" + "}" + ", " + "$" + "{" + "4:offset" + "}" + ")"), - boost: 10 - }, { - label: "regex_all", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- regex_all(ScalarFunction|string $pattern, ScalarFunction|string $subject, ScalarFunction|int $flags = 0, ScalarFunction|int $offset = 0) : RegexAll -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\regex_all(" + "$" + "{" + "1:pattern" + "}" + ", " + "$" + "{" + "2:subject" + "}" + ", " + "$" + "{" + "3:flags" + "}" + ", " + "$" + "{" + "4:offset" + "}" + ")"), - boost: 10 - }, { - label: "regex_imatch", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- regex_imatch(Expression $expr, Expression $pattern) : OperatorCondition -
-
- Create a POSIX regex match condition (~*).
Case-insensitive.
Example: regex_imatch(col(\'email\'), literal_string(\'.*@gmail\\\\.com\'))
Produces: email ~* \'.*@gmail\\.com\' -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\regex_imatch(" + "$" + "{" + "1:expr" + "}" + ", " + "$" + "{" + "2:pattern" + "}" + ")"), - boost: 10 - }, { - label: "regex_match", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- regex_match(ScalarFunction|string $pattern, ScalarFunction|string $subject, ScalarFunction|int $flags = 0, ScalarFunction|int $offset = 0) : RegexMatch -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\regex_match(" + "$" + "{" + "1:pattern" + "}" + ", " + "$" + "{" + "2:subject" + "}" + ", " + "$" + "{" + "3:flags" + "}" + ", " + "$" + "{" + "4:offset" + "}" + ")"), - boost: 10 - }, { - label: "regex_match", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- regex_match(Expression $expr, Expression $pattern) : OperatorCondition -
-
- Create a POSIX regex match condition (~).
Case-sensitive.
Example: regex_match(col(\'email\'), literal_string(\'.*@gmail\\\\.com\'))
Produces: email ~ \'.*@gmail\\.com\' -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\regex_match(" + "$" + "{" + "1:expr" + "}" + ", " + "$" + "{" + "2:pattern" + "}" + ")"), - boost: 10 - }, { - label: "regex_match_all", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- regex_match_all(ScalarFunction|string $pattern, ScalarFunction|string $subject, ScalarFunction|int $flags = 0, ScalarFunction|int $offset = 0) : RegexMatchAll -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\regex_match_all(" + "$" + "{" + "1:pattern" + "}" + ", " + "$" + "{" + "2:subject" + "}" + ", " + "$" + "{" + "3:flags" + "}" + ", " + "$" + "{" + "4:offset" + "}" + ")"), - boost: 10 - }, { - label: "regex_replace", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- regex_replace(ScalarFunction|string $pattern, ScalarFunction|string $replacement, ScalarFunction|string $subject, ScalarFunction|int|null $limit = null) : RegexReplace -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\regex_replace(" + "$" + "{" + "1:pattern" + "}" + ", " + "$" + "{" + "2:replacement" + "}" + ", " + "$" + "{" + "3:subject" + "}" + ", " + "$" + "{" + "4:limit" + "}" + ")"), - boost: 10 - }, { - label: "reindex_database", - type: "function", - detail: "flow\u002Ddsl\u002Dschema", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- reindex_database(string $name) : ReindexFinalStep -
-
- Start building a REINDEX DATABASE statement.
Use chainable methods: ->concurrently(), ->verbose(), ->tablespace()
Example: reindex_database(\'mydb\')->concurrently()
@param string $name The database name -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\reindex_database(" + "$" + "{" + "1:name" + "}" + ")"), - boost: 10 - }, { - label: "reindex_index", - type: "function", - detail: "flow\u002Ddsl\u002Dschema", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- reindex_index(string $name) : ReindexFinalStep -
-
- Start building a REINDEX INDEX statement.
Use chainable methods: ->concurrently(), ->verbose(), ->tablespace()
Example: reindex_index(\'idx_users_email\')->concurrently()
@param string $name The index name (may include schema: schema.index) -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\reindex_index(" + "$" + "{" + "1:name" + "}" + ")"), - boost: 10 - }, { - label: "reindex_schema", - type: "function", - detail: "flow\u002Ddsl\u002Dschema", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- reindex_schema(string $name) : ReindexFinalStep -
-
- Start building a REINDEX SCHEMA statement.
Use chainable methods: ->concurrently(), ->verbose(), ->tablespace()
Example: reindex_schema(\'public\')->concurrently()
@param string $name The schema name -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\reindex_schema(" + "$" + "{" + "1:name" + "}" + ")"), - boost: 10 - }, { - label: "reindex_table", - type: "function", - detail: "flow\u002Ddsl\u002Dschema", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- reindex_table(string $name) : ReindexFinalStep -
-
- Start building a REINDEX TABLE statement.
Use chainable methods: ->concurrently(), ->verbose(), ->tablespace()
Example: reindex_table(\'users\')->concurrently()
@param string $name The table name (may include schema: schema.table) -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\reindex_table(" + "$" + "{" + "1:name" + "}" + ")"), - boost: 10 - }, { - label: "release_savepoint", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- release_savepoint(string $name) : SavepointFinalStep -
-
- Release a SAVEPOINT.
Example: release_savepoint(\'my_savepoint\')
Produces: RELEASE my_savepoint -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\release_savepoint(" + "$" + "{" + "1:name" + "}" + ")"), - boost: 10 - }, { - label: "rename_replace", - type: "function", - detail: "flow\u002Ddsl\u002Dtransformers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- rename_replace(array|string $search, array|string $replace) : RenameReplaceEntryStrategy -
-
- @param array|string $search
@param array|string $replace -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\rename_replace(" + "$" + "{" + "1:search" + "}" + ", " + "$" + "{" + "2:replace" + "}" + ")"), - boost: 10 - }, { - label: "rename_style", - type: "function", - detail: "flow\u002Ddsl\u002Dtransformers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- rename_style(StringStyles|StringStyles $style) : RenameCaseEntryStrategy -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\rename_style(" + "$" + "{" + "1:style" + "}" + ")"), - boost: 10 - }, { - label: "reset_role", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- reset_role() : ResetRoleFinalStep -
-
- Create a RESET ROLE builder.
Example: reset_role()
Produces: RESET ROLE
@return ResetRoleFinalStep Builder for reset role -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\reset_role()"), - boost: 10 - }, { - label: "resource", - type: "function", - detail: "flow\u002Ddsl\u002Dtype", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- resource(Attributes|array $attributes = []) : Resource -
-
- Create a Resource.
@param array|bool|float|int|string>|Attributes $attributes Resource attributes -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\resource(" + "$" + "{" + "1:attributes" + "}" + ")"), - boost: 10 - }, { - label: "resource_detector", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- resource_detector(array $detectors = []) : ChainDetector -
-
- Create a resource detector chain.
When no detectors are provided, uses the default detector chain:
1. OsDetector - Operating system information
2. HostDetector - Host information
3. ProcessDetector - Process information
4. ComposerDetector - Service information from Composer
5. EnvironmentDetector - Environment variable overrides (highest precedence)
When detectors are provided, uses only those detectors.
@param array $detectors Optional custom detectors (empty = use defaults) -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\resource_detector(" + "$" + "{" + "1:detectors" + "}" + ")"), - boost: 10 - }, { - label: "retry_any_throwable", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- retry_any_throwable(int $limit) : AnyThrowable -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\retry_any_throwable(" + "$" + "{" + "1:limit" + "}" + ")"), - boost: 10 - }, { - label: "retry_on_exception_types", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- retry_on_exception_types(array $exception_types, int $limit) : OnExceptionTypes -
-
- @param array> $exception_types -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\retry_on_exception_types(" + "$" + "{" + "1:exception_types" + "}" + ", " + "$" + "{" + "2:limit" + "}" + ")"), - boost: 10 - }, { - label: "returning", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- returning(Expression $expressions) : ReturningClause -
-
- Create a RETURNING clause.
@param Expression ...$expressions Expressions to return -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\returning(" + "$" + "{" + "1:expressions" + "}" + ")"), - boost: 10 - }, { - label: "returning_all", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- returning_all() : ReturningClause -
-
- Create a RETURNING * clause. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\returning_all()"), - boost: 10 - }, { - label: "revoke", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- revoke(TablePrivilege|string $privileges) : RevokeOnStep -
-
- Create a REVOKE privileges builder.
Example: revoke(TablePrivilege::SELECT)->onTable(\'users\')->from(\'app_user\')
Produces: REVOKE SELECT ON users FROM app_user
Example: revoke(TablePrivilege::ALL)->onTable(\'users\')->from(\'app_user\')->cascade()
Produces: REVOKE ALL ON users FROM app_user CASCADE
@param string|TablePrivilege ...$privileges The privileges to revoke
@return RevokeOnStep Builder for revoke options -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\revoke(" + "$" + "{" + "1:privileges" + "}" + ")"), - boost: 10 - }, { - label: "revoke_role", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- revoke_role(string $roles) : RevokeRoleFromStep -
-
- Create a REVOKE role builder.
Example: revoke_role(\'admin\')->from(\'user1\')
Produces: REVOKE admin FROM user1
Example: revoke_role(\'admin\')->from(\'user1\')->cascade()
Produces: REVOKE admin FROM user1 CASCADE
@param string ...$roles The roles to revoke
@return RevokeRoleFromStep Builder for revoke role options -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\revoke_role(" + "$" + "{" + "1:roles" + "}" + ")"), - boost: 10 - }, { - label: "rollback", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- rollback() : RollbackOptionsStep -
-
- Create a ROLLBACK transaction builder.
Example: rollback()->toSavepoint(\'my_savepoint\')
Produces: ROLLBACK TO SAVEPOINT my_savepoint -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\rollback()"), - boost: 10 - }, { - label: "rollback_prepared", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- rollback_prepared(string $transactionId) : PreparedTransactionFinalStep -
-
- Create a ROLLBACK PREPARED builder.
Example: rollback_prepared(\'my_transaction\')
Produces: ROLLBACK PREPARED \'my_transaction\' -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\rollback_prepared(" + "$" + "{" + "1:transactionId" + "}" + ")"), - boost: 10 - }, { - label: "round", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- round(ScalarFunction|int|float $value, ScalarFunction|int $precision = 2, ScalarFunction|int $mode = 1) : Round -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\round(" + "$" + "{" + "1:value" + "}" + ", " + "$" + "{" + "2:precision" + "}" + ", " + "$" + "{" + "3:mode" + "}" + ")"), - boost: 10 - }, { - label: "row", - type: "function", - detail: "flow\u002Ddsl\u002Ddata\u002Dframe", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- row(Entry $entry) : Row -
-
- @param Entry ...$entry -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\row(" + "$" + "{" + "1:entry" + "}" + ")"), - boost: 10 - }, { - label: "rows", - type: "function", - detail: "flow\u002Ddsl\u002Ddata\u002Dframe", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- rows(Row $row) : Rows -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\rows(" + "$" + "{" + "1:row" + "}" + ")"), - boost: 10 - }, { - label: "rows_partitioned", - type: "function", - detail: "flow\u002Ddsl\u002Ddata\u002Dframe", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- rows_partitioned(array $rows, Partitions|array $partitions) : Rows -
-
- @param array $rows
@param array<\\Flow\\Filesystem\\Partition|string>|Partitions $partitions -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\rows_partitioned(" + "$" + "{" + "1:rows" + "}" + ", " + "$" + "{" + "2:partitions" + "}" + ")"), - boost: 10 - }, { - label: "row_expr", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- row_expr(array $elements) : RowExpression -
-
- Create a row expression.
@param list $elements Row elements -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\row_expr(" + "$" + "{" + "1:elements" + "}" + ")"), - boost: 10 - }, { - label: "row_number", - type: "function", - detail: "flow\u002Ddsl\u002Ddata\u002Dframe", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- row_number() : RowNumber -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\row_number()"), - boost: 10 - }, { - label: "sanitize", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- sanitize(ScalarFunction|string $value, ScalarFunction|string $placeholder = '*', ScalarFunction|int|null $skipCharacters = null) : Sanitize -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\sanitize(" + "$" + "{" + "1:value" + "}" + ", " + "$" + "{" + "2:placeholder" + "}" + ", " + "$" + "{" + "3:skipCharacters" + "}" + ")"), - boost: 10 - }, { - label: "savepoint", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- savepoint(string $name) : SavepointFinalStep -
-
- Create a SAVEPOINT.
Example: savepoint(\'my_savepoint\')
Produces: SAVEPOINT my_savepoint -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\savepoint(" + "$" + "{" + "1:name" + "}" + ")"), - boost: 10 - }, { - label: "save_mode_append", - type: "function", - detail: "flow\u002Ddsl\u002Ddata\u002Dframe", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- save_mode_append() : SaveMode -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\save_mode_append()"), - boost: 10 - }, { - label: "save_mode_exception_if_exists", - type: "function", - detail: "flow\u002Ddsl\u002Ddata\u002Dframe", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- save_mode_exception_if_exists() : SaveMode -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\save_mode_exception_if_exists()"), - boost: 10 - }, { - label: "save_mode_ignore", - type: "function", - detail: "flow\u002Ddsl\u002Ddata\u002Dframe", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- save_mode_ignore() : SaveMode -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\save_mode_ignore()"), - boost: 10 - }, { - label: "save_mode_overwrite", - type: "function", - detail: "flow\u002Ddsl\u002Ddata\u002Dframe", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- save_mode_overwrite() : SaveMode -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\save_mode_overwrite()"), - boost: 10 - }, { - label: "schema", - type: "function", - detail: "flow\u002Ddsl\u002Dschema", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- schema(Definition $definitions) : Schema -
-
- @param Definition ...$definitions
@return Schema -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\schema(" + "$" + "{" + "1:definitions" + "}" + ")"), - boost: 10 - }, { - label: "schema_evolving_validator", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- schema_evolving_validator() : EvolvingValidator -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\schema_evolving_validator()"), - boost: 10 - }, { - label: "schema_from_json", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- schema_from_json(string $schema) : Schema -
-
- @return Schema -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\schema_from_json(" + "$" + "{" + "1:schema" + "}" + ")"), - boost: 10 - }, { - label: "schema_from_parquet", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- schema_from_parquet(Schema $schema) : Schema -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\Adapter\\Parquet\\schema_from_parquet(" + "$" + "{" + "1:schema" + "}" + ")"), - boost: 10 - }, { - label: "schema_metadata", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- schema_metadata(array $metadata = []) : Metadata -
-
- @param array|bool|float|int|string> $metadata -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\schema_metadata(" + "$" + "{" + "1:metadata" + "}" + ")"), - boost: 10 - }, { - label: "schema_selective_validator", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- schema_selective_validator() : SelectiveValidator -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\schema_selective_validator()"), - boost: 10 - }, { - label: "schema_strict_validator", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- schema_strict_validator() : StrictValidator -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\schema_strict_validator()"), - boost: 10 - }, { - label: "schema_to_ascii", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- schema_to_ascii(Schema $schema, SchemaFormatter $formatter = null) : string -
-
- @param Schema $schema -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\schema_to_ascii(" + "$" + "{" + "1:schema" + "}" + ", " + "$" + "{" + "2:formatter" + "}" + ")"), - boost: 10 - }, { - label: "schema_to_json", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- schema_to_json(Schema $schema, bool $pretty = false) : string -
-
- @param Schema $schema -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\schema_to_json(" + "$" + "{" + "1:schema" + "}" + ", " + "$" + "{" + "2:pretty" + "}" + ")"), - boost: 10 - }, { - label: "schema_to_parquet", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- schema_to_parquet(Schema $schema) : Schema -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\Adapter\\Parquet\\schema_to_parquet(" + "$" + "{" + "1:schema" + "}" + ")"), - boost: 10 - }, { - label: "schema_to_php", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- schema_to_php(Schema $schema, ValueFormatter $valueFormatter = Flow\\ETL\\Schema\\Formatter\\PHPFormatter\\ValueFormatter::..., TypeFormatter $typeFormatter = Flow\\ETL\\Schema\\Formatter\\PHPFormatter\\TypeFormatter::...) : string -
-
- @param Schema $schema -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\schema_to_php(" + "$" + "{" + "1:schema" + "}" + ", " + "$" + "{" + "2:valueFormatter" + "}" + ", " + "$" + "{" + "3:typeFormatter" + "}" + ")"), - boost: 10 - }, { - label: "schema_validate", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- schema_validate(Schema $expected, Schema $given, SchemaValidator $validator = Flow\\ETL\\Schema\\Validator\\StrictValidator::...) : bool -
-
- @param Schema $expected
@param Schema $given -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\schema_validate(" + "$" + "{" + "1:expected" + "}" + ", " + "$" + "{" + "2:given" + "}" + ", " + "$" + "{" + "3:validator" + "}" + ")"), - boost: 10 - }, { - label: "select", - type: "function", - detail: "flow\u002Ddsl\u002Dtransformers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- select(Reference|string $entries) : Select -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\select(" + "$" + "{" + "1:entries" + "}" + ")"), - boost: 10 - }, { - label: "select", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- select(Expression $expressions) : SelectBuilder -
-
- Create a new SELECT query builder.
@param Expression ...$expressions Columns to select. If empty, returns SelectSelectStep. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\select(" + "$" + "{" + "1:expressions" + "}" + ")"), - boost: 10 - }, { - label: "set_role", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- set_role(string $role) : SetRoleFinalStep -
-
- Create a SET ROLE builder.
Example: set_role(\'admin\')
Produces: SET ROLE admin
@param string $role The role to set
@return SetRoleFinalStep Builder for set role -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\set_role(" + "$" + "{" + "1:role" + "}" + ")"), - boost: 10 - }, { - label: "set_session_transaction", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- set_session_transaction() : SetTransactionOptionsStep -
-
- Create a SET SESSION CHARACTERISTICS AS TRANSACTION builder.
Example: set_session_transaction()->isolationLevel(IsolationLevel::SERIALIZABLE)
Produces: SET SESSION CHARACTERISTICS AS TRANSACTION ISOLATION LEVEL SERIALIZABLE -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\set_session_transaction()"), - boost: 10 - }, { - label: "set_transaction", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- set_transaction() : SetTransactionOptionsStep -
-
- Create a SET TRANSACTION builder.
Example: set_transaction()->isolationLevel(IsolationLevel::SERIALIZABLE)->readOnly()
Produces: SET TRANSACTION ISOLATION LEVEL SERIALIZABLE, READ ONLY -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\set_transaction()"), - boost: 10 - }, { - label: "severity_filtering_log_processor", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- severity_filtering_log_processor(LogProcessor $processor, Severity $minimumSeverity = Flow\\Telemetry\\Logger\\Severity::...) : SeverityFilteringLogProcessor -
-
- Create a SeverityFilteringLogProcessor.
Filters log entries based on minimum severity level. Only entries at or above
the configured threshold are passed to the wrapped processor.
@param LogProcessor $processor The processor to wrap
@param Severity $minimumSeverity Minimum severity level (default: INFO) -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\severity_filtering_log_processor(" + "$" + "{" + "1:processor" + "}" + ", " + "$" + "{" + "2:minimumSeverity" + "}" + ")"), - boost: 10 - }, { - label: "severity_mapper", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- severity_mapper(array $customMapping = null) : SeverityMapper -
-
- Create a SeverityMapper for mapping Monolog levels to Telemetry severities.
@param null|array $customMapping Optional custom mapping (Monolog Level value => Telemetry Severity)
Example with default mapping:
\`\`\`php
$mapper = severity_mapper();
\`\`\`
Example with custom mapping:
\`\`\`php
use Monolog\\Level;
use Flow\\Telemetry\\Logger\\Severity;
$mapper = severity_mapper([
Level::Debug->value => Severity::DEBUG,
Level::Info->value => Severity::INFO,
Level::Notice->value => Severity::WARN, // Custom: NOTICE → WARN instead of INFO
Level::Warning->value => Severity::WARN,
Level::Error->value => Severity::ERROR,
Level::Critical->value => Severity::FATAL,
Level::Alert->value => Severity::FATAL,
Level::Emergency->value => Severity::FATAL,
]);
\`\`\` -
- ` - return div - }, - apply: snippet("\\Flow\\Bridge\\Monolog\\Telemetry\\DSL\\severity_mapper(" + "$" + "{" + "1:customMapping" + "}" + ")"), - boost: 10 - }, { - label: "similar_to", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- similar_to(Expression $expr, Expression $pattern) : SimilarTo -
-
- Create a SIMILAR TO condition. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\similar_to(" + "$" + "{" + "1:expr" + "}" + ", " + "$" + "{" + "2:pattern" + "}" + ")"), - boost: 10 - }, { - label: "size", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- size(mixed $value) : Size -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\size(" + "$" + "{" + "1:value" + "}" + ")"), - boost: 10 - }, { - label: "skip_rows_handler", - type: "function", - detail: "flow\u002Ddsl\u002Ddata\u002Dframe", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- skip_rows_handler() : SkipRows -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\skip_rows_handler()"), - boost: 10 - }, { - label: "span_context", - type: "function", - detail: "flow\u002Ddsl\u002Dtype", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- span_context(TraceId $traceId, SpanId $spanId, SpanId $parentSpanId = null) : SpanContext -
-
- Create a SpanContext.
@param TraceId $traceId The trace ID
@param SpanId $spanId The span ID
@param null|SpanId $parentSpanId Optional parent span ID -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\span_context(" + "$" + "{" + "1:traceId" + "}" + ", " + "$" + "{" + "2:spanId" + "}" + ", " + "$" + "{" + "3:parentSpanId" + "}" + ")"), - boost: 10 - }, { - label: "span_event", - type: "function", - detail: "flow\u002Ddsl\u002Dtype", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- span_event(string $name, DateTimeImmutable $timestamp, Attributes|array $attributes = []) : GenericEvent -
-
- Create a SpanEvent (GenericEvent) with an explicit timestamp.
@param string $name Event name
@param \\DateTimeImmutable $timestamp Event timestamp
@param array|bool|float|int|string>|Attributes $attributes Event attributes -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\span_event(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:timestamp" + "}" + ", " + "$" + "{" + "3:attributes" + "}" + ")"), - boost: 10 - }, { - label: "span_id", - type: "function", - detail: "flow\u002Ddsl\u002Dtype", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- span_id(string $hex = null) : SpanId -
-
- Create a SpanId.
If a hex string is provided, creates a SpanId from it.
Otherwise, generates a new random SpanId.
@param null|string $hex Optional 16-character hexadecimal string
@throws \\InvalidArgumentException if the hex string is invalid -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\span_id(" + "$" + "{" + "1:hex" + "}" + ")"), - boost: 10 - }, { - label: "span_limits", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- span_limits(int $attributeCountLimit = 128, int $eventCountLimit = 128, int $linkCountLimit = 128, int $attributePerEventCountLimit = 128, int $attributePerLinkCountLimit = 128, int $attributeValueLengthLimit = null) : SpanLimits -
-
- Create SpanLimits configuration.
SpanLimits controls the maximum amount of data a span can collect,
preventing unbounded memory growth and ensuring reasonable span sizes.
@param int $attributeCountLimit Maximum number of attributes per span
@param int $eventCountLimit Maximum number of events per span
@param int $linkCountLimit Maximum number of links per span
@param int $attributePerEventCountLimit Maximum number of attributes per event
@param int $attributePerLinkCountLimit Maximum number of attributes per link
@param null|int $attributeValueLengthLimit Maximum length for string attribute values (null = unlimited) -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\span_limits(" + "$" + "{" + "1:attributeCountLimit" + "}" + ", " + "$" + "{" + "2:eventCountLimit" + "}" + ", " + "$" + "{" + "3:linkCountLimit" + "}" + ", " + "$" + "{" + "4:attributePerEventCountLimit" + "}" + ", " + "$" + "{" + "5:attributePerLinkCountLimit" + "}" + ", " + "$" + "{" + "6:attributeValueLengthLimit" + "}" + ")"), - boost: 10 - }, { - label: "span_link", - type: "function", - detail: "flow\u002Ddsl\u002Dtype", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- span_link(SpanContext $context, Attributes|array $attributes = []) : SpanLink -
-
- Create a SpanLink.
@param SpanContext $context The linked span context
@param array|bool|float|int|string>|Attributes $attributes Link attributes -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\span_link(" + "$" + "{" + "1:context" + "}" + ", " + "$" + "{" + "2:attributes" + "}" + ")"), - boost: 10 - }, { - label: "split", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- split(ScalarFunction|string $value, ScalarFunction|string $separator, ScalarFunction|int $limit = 9223372036854775807) : Split -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\split(" + "$" + "{" + "1:value" + "}" + ", " + "$" + "{" + "2:separator" + "}" + ", " + "$" + "{" + "3:limit" + "}" + ")"), - boost: 10 - }, { - label: "sprintf", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- sprintf(ScalarFunction|string $format, ScalarFunction|string|int|float|null $args) : Sprintf -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\sprintf(" + "$" + "{" + "1:format" + "}" + ", " + "$" + "{" + "2:args" + "}" + ")"), - boost: 10 - }, { - label: "sqlite_insert_options", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- sqlite_insert_options(bool $skip_conflicts = null, array $conflict_columns = [], array $update_columns = []) : SqliteInsertOptions -
-
- @param array $conflict_columns
@param array $update_columns -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\Adapter\\Doctrine\\sqlite_insert_options(" + "$" + "{" + "1:skip_conflicts" + "}" + ", " + "$" + "{" + "2:conflict_columns" + "}" + ", " + "$" + "{" + "3:update_columns" + "}" + ")"), - boost: 10 - }, { - label: "sql_analyze", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- sql_analyze(Plan $plan) : PlanAnalyzer -
-
- Create a plan analyzer for analyzing EXPLAIN plans.
@param Plan $plan The execution plan to analyze
@return PlanAnalyzer The analyzer for extracting insights -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\sql_analyze(" + "$" + "{" + "1:plan" + "}" + ")"), - boost: 10 - }, { - label: "sql_deparse", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- sql_deparse(ParsedQuery $query, DeparseOptions $options = null) : string -
-
- Convert a ParsedQuery AST back to SQL string.
When called without options, returns the SQL as a simple string.
When called with DeparseOptions, applies formatting (pretty-printing, indentation, etc.).
@throws \\RuntimeException if deparsing fails -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\sql_deparse(" + "$" + "{" + "1:query" + "}" + ", " + "$" + "{" + "2:options" + "}" + ")"), - boost: 10 - }, { - label: "sql_deparse_options", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- sql_deparse_options() : DeparseOptions -
-
- Create DeparseOptions for configuring SQL formatting. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\sql_deparse_options()"), - boost: 10 - }, { - label: "sql_explain_config", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- sql_explain_config(bool $analyze = true, bool $verbose = false, bool $costs = true, bool $buffers = true, bool $timing = true, ExplainFormat $format = Flow\\PostgreSql\\QueryBuilder\\Utility\\ExplainFormat::...) : ExplainConfig -
-
- Create an ExplainConfig for customizing EXPLAIN options.
@param bool $analyze Whether to actually execute the query (ANALYZE)
@param bool $verbose Include verbose output
@param bool $costs Include cost estimates (default true)
@param bool $buffers Include buffer usage statistics (requires analyze)
@param bool $timing Include timing information (requires analyze)
@param ExplainFormat $format Output format (JSON recommended for parsing) -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\sql_explain_config(" + "$" + "{" + "1:analyze" + "}" + ", " + "$" + "{" + "2:verbose" + "}" + ", " + "$" + "{" + "3:costs" + "}" + ", " + "$" + "{" + "4:buffers" + "}" + ", " + "$" + "{" + "5:timing" + "}" + ", " + "$" + "{" + "6:format" + "}" + ")"), - boost: 10 - }, { - label: "sql_explain_modifier", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- sql_explain_modifier(ExplainConfig $config) : ExplainModifier -
-
- Create an ExplainModifier for transforming queries into EXPLAIN queries. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\sql_explain_modifier(" + "$" + "{" + "1:config" + "}" + ")"), - boost: 10 - }, { - label: "sql_explain_parse", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- sql_explain_parse(string $jsonOutput) : Plan -
-
- Parse EXPLAIN JSON output into a Plan object.
@param string $jsonOutput The JSON output from EXPLAIN (FORMAT JSON)
@return Plan The parsed execution plan -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\sql_explain_parse(" + "$" + "{" + "1:jsonOutput" + "}" + ")"), - boost: 10 - }, { - label: "sql_fingerprint", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- sql_fingerprint(string $sql) : string -
-
- Returns a fingerprint of the given SQL query.
Literal values are normalized so they won\'t affect the fingerprint. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\sql_fingerprint(" + "$" + "{" + "1:sql" + "}" + ")"), - boost: 10 - }, { - label: "sql_format", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- sql_format(string $sql, DeparseOptions $options = null) : string -
-
- Parse and format SQL query with pretty printing.
This is a convenience function that parses SQL and returns it formatted.
@param string $sql The SQL query to format
@param null|DeparseOptions $options Formatting options (defaults to pretty-print enabled)
@throws \\RuntimeException if parsing or deparsing fails -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\sql_format(" + "$" + "{" + "1:sql" + "}" + ", " + "$" + "{" + "2:options" + "}" + ")"), - boost: 10 - }, { - label: "sql_keyset_column", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- sql_keyset_column(string $column, SortOrder $order = Flow\\PostgreSql\\AST\\Transformers\\SortOrder::...) : KeysetColumn -
-
- Create a KeysetColumn for keyset pagination.
@param string $column Column name (can include table alias like \"u.id\")
@param SortOrder $order Sort order (ASC or DESC) -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\sql_keyset_column(" + "$" + "{" + "1:column" + "}" + ", " + "$" + "{" + "2:order" + "}" + ")"), - boost: 10 - }, { - label: "sql_normalize", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- sql_normalize(string $sql) : string -
-
- Normalize SQL query by replacing literal values and named parameters with positional parameters.
WHERE id = :id will be changed into WHERE id = $1
WHERE id = 1 will be changed into WHERE id = $1. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\sql_normalize(" + "$" + "{" + "1:sql" + "}" + ")"), - boost: 10 - }, { - label: "sql_normalize_utility", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- sql_normalize_utility(string $sql) : string -
-
- Normalize utility SQL statements (DDL like CREATE, ALTER, DROP).
This handles DDL statements differently from pg_normalize() which is optimized for DML. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\sql_normalize_utility(" + "$" + "{" + "1:sql" + "}" + ")"), - boost: 10 - }, { - label: "sql_parse", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- sql_parse(string $sql) : ParsedQuery -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\sql_parse(" + "$" + "{" + "1:sql" + "}" + ")"), - boost: 10 - }, { - label: "sql_parser", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- sql_parser() : Parser -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\sql_parser()"), - boost: 10 - }, { - label: "sql_query_columns", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- sql_query_columns(ParsedQuery $query) : Columns -
-
- Extract columns from a parsed SQL query. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\sql_query_columns(" + "$" + "{" + "1:query" + "}" + ")"), - boost: 10 - }, { - label: "sql_query_depth", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- sql_query_depth(string $sql) : int -
-
- Get the maximum nesting depth of a SQL query.
Example:
- \"SELECT * FROM t\" => 1
- \"SELECT * FROM (SELECT * FROM t)\" => 2
- \"SELECT * FROM (SELECT * FROM (SELECT * FROM t))\" => 3 -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\sql_query_depth(" + "$" + "{" + "1:sql" + "}" + ")"), - boost: 10 - }, { - label: "sql_query_functions", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- sql_query_functions(ParsedQuery $query) : Functions -
-
- Extract functions from a parsed SQL query. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\sql_query_functions(" + "$" + "{" + "1:query" + "}" + ")"), - boost: 10 - }, { - label: "sql_query_order_by", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- sql_query_order_by(ParsedQuery $query) : OrderBy -
-
- Extract ORDER BY clauses from a parsed SQL query. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\sql_query_order_by(" + "$" + "{" + "1:query" + "}" + ")"), - boost: 10 - }, { - label: "sql_query_tables", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- sql_query_tables(ParsedQuery $query) : Tables -
-
- Extract tables from a parsed SQL query. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\sql_query_tables(" + "$" + "{" + "1:query" + "}" + ")"), - boost: 10 - }, { - label: "sql_split", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- sql_split(string $sql) : array -
-
- Split string with multiple SQL statements into array of individual statements.
@return array -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\sql_split(" + "$" + "{" + "1:sql" + "}" + ")"), - boost: 10 - }, { - label: "sql_summary", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- sql_summary(string $sql, int $options = 0, int $truncateLimit = 0) : string -
-
- Generate a summary of parsed queries in protobuf format.
Useful for query monitoring and logging without full AST overhead. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\sql_summary(" + "$" + "{" + "1:sql" + "}" + ", " + "$" + "{" + "2:options" + "}" + ", " + "$" + "{" + "3:truncateLimit" + "}" + ")"), - boost: 10 - }, { - label: "sql_to_count_query", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- sql_to_count_query(string $sql) : string -
-
- Transform a SQL query into a COUNT query for pagination.
Wraps the query in: SELECT COUNT(*) FROM (...) AS _count_subq
Removes ORDER BY and LIMIT/OFFSET from the inner query.
@param string $sql The SQL query to transform
@return string The COUNT query -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\sql_to_count_query(" + "$" + "{" + "1:sql" + "}" + ")"), - boost: 10 - }, { - label: "sql_to_explain", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- sql_to_explain(string $sql, ExplainConfig $config = null) : string -
-
- Transform a SQL query into an EXPLAIN query.
Returns the modified SQL with EXPLAIN wrapped around it.
Defaults to EXPLAIN ANALYZE with JSON format for easy parsing.
@param string $sql The SQL query to explain
@param null|ExplainConfig $config EXPLAIN configuration (defaults to forAnalysis())
@return string The EXPLAIN query -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\sql_to_explain(" + "$" + "{" + "1:sql" + "}" + ", " + "$" + "{" + "2:config" + "}" + ")"), - boost: 10 - }, { - label: "sql_to_keyset_query", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- sql_to_keyset_query(string $sql, int $limit, array $columns, array $cursor = null) : string -
-
- Transform a SQL query into a keyset (cursor-based) paginated query.
More efficient than OFFSET for large datasets - uses indexed WHERE conditions.
Automatically detects existing query parameters and appends keyset placeholders at the end.
@param string $sql The SQL query to paginate (must have ORDER BY)
@param int $limit Maximum number of rows to return
@param list $columns Columns for keyset pagination (must match ORDER BY)
@param null|list $cursor Values from last row of previous page (null for first page)
@return string The paginated SQL query -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\sql_to_keyset_query(" + "$" + "{" + "1:sql" + "}" + ", " + "$" + "{" + "2:limit" + "}" + ", " + "$" + "{" + "3:columns" + "}" + ", " + "$" + "{" + "4:cursor" + "}" + ")"), - boost: 10 - }, { - label: "sql_to_limited_query", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- sql_to_limited_query(string $sql, int $limit) : string -
-
- Transform a SQL query to limit results to a specific number of rows.
@param string $sql The SQL query to limit
@param int $limit Maximum number of rows to return
@return string The limited SQL query -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\sql_to_limited_query(" + "$" + "{" + "1:sql" + "}" + ", " + "$" + "{" + "2:limit" + "}" + ")"), - boost: 10 - }, { - label: "sql_to_paginated_query", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- sql_to_paginated_query(string $sql, int $limit, int $offset = 0) : string -
-
- Transform a SQL query into a paginated query with LIMIT and OFFSET.
@param string $sql The SQL query to paginate
@param int $limit Maximum number of rows to return
@param int $offset Number of rows to skip (requires ORDER BY in query)
@return string The paginated SQL query -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\sql_to_paginated_query(" + "$" + "{" + "1:sql" + "}" + ", " + "$" + "{" + "2:limit" + "}" + ", " + "$" + "{" + "3:offset" + "}" + ")"), - boost: 10 - }, { - label: "star", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- star(string $table = null) : Star -
-
- Create a SELECT * expression. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\star(" + "$" + "{" + "1:table" + "}" + ")"), - boost: 10 - }, { - label: "stdout_filesystem", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- stdout_filesystem() : StdOutFilesystem -
-
- Write-only filesystem useful when we just want to write the output to stdout.
The main use case is for streaming datasets over http. -
- ` - return div - }, - apply: snippet("\\Flow\\Filesystem\\DSL\\stdout_filesystem()"), - boost: 10 - }, { - label: "string_agg", - type: "function", - detail: "flow\u002Ddsl\u002Daggregating\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- string_agg(EntryReference|string $ref, string $separator = ', ', SortOrder $sort = null) : StringAggregate -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\string_agg(" + "$" + "{" + "1:ref" + "}" + ", " + "$" + "{" + "2:separator" + "}" + ", " + "$" + "{" + "3:sort" + "}" + ")"), - boost: 10 - }, { - label: "string_entry", - type: "function", - detail: "flow\u002Ddsl\u002Dentries", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- string_entry(string $name, string $value, Metadata $metadata = null) : Entry -
-
- @return Entry -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\string_entry(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:value" + "}" + ", " + "$" + "{" + "3:metadata" + "}" + ")"), - boost: 10 - }, { - label: "string_schema", - type: "function", - detail: "flow\u002Ddsl\u002Dschema", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- string_schema(string $name, bool $nullable = false, Metadata $metadata = null) : StringDefinition -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\string_schema(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:nullable" + "}" + ", " + "$" + "{" + "3:metadata" + "}" + ")"), - boost: 10 - }, { - label: "structure_entry", - type: "function", - detail: "flow\u002Ddsl\u002Dentries", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- structure_entry(string $name, array $value, StructureType $type, Metadata $metadata = null) : Entry -
-
- @template T
@param ?array $value
@param StructureType $type
@return Entry> -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\structure_entry(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:value" + "}" + ", " + "$" + "{" + "3:type" + "}" + ", " + "$" + "{" + "4:metadata" + "}" + ")"), - boost: 10 - }, { - label: "structure_ref", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- structure_ref(string $entry) : StructureFunctions -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\structure_ref(" + "$" + "{" + "1:entry" + "}" + ")"), - boost: 10 - }, { - label: "structure_schema", - type: "function", - detail: "flow\u002Ddsl\u002Dschema", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- structure_schema(string $name, StructureType|Type $type, bool $nullable = false, Metadata $metadata = null) : StructureDefinition -
-
- @template T
@param StructureType|Type> $type
@return StructureDefinition -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\structure_schema(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:type" + "}" + ", " + "$" + "{" + "3:nullable" + "}" + ", " + "$" + "{" + "4:metadata" + "}" + ")"), - boost: 10 - }, { - label: "struct_entry", - type: "function", - detail: "flow\u002Ddsl\u002Dentries", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- struct_entry(string $name, array $value, StructureType $type, Metadata $metadata = null) : Entry -
-
- @template T
@param ?array $value
@param StructureType $type
@return Entry> -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\struct_entry(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:value" + "}" + ", " + "$" + "{" + "3:type" + "}" + ", " + "$" + "{" + "4:metadata" + "}" + ")"), - boost: 10 - }, { - label: "struct_schema", - type: "function", - detail: "flow\u002Ddsl\u002Dschema", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- struct_schema(string $name, StructureType|Type $type, bool $nullable = false, Metadata $metadata = null) : StructureDefinition -
-
- @template T
@param StructureType|Type> $type
@return StructureDefinition
@deprecated Use \`structure_schema()\` instead -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\struct_schema(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:type" + "}" + ", " + "$" + "{" + "3:nullable" + "}" + ", " + "$" + "{" + "4:metadata" + "}" + ")"), - boost: 10 - }, { - label: "str_entry", - type: "function", - detail: "flow\u002Ddsl\u002Dentries", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- str_entry(string $name, string $value, Metadata $metadata = null) : Entry -
-
- @return Entry -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\str_entry(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:value" + "}" + ", " + "$" + "{" + "3:metadata" + "}" + ")"), - boost: 10 - }, { - label: "str_schema", - type: "function", - detail: "flow\u002Ddsl\u002Dschema", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- str_schema(string $name, bool $nullable = false, Metadata $metadata = null) : StringDefinition -
-
- Alias for \`string_schema\`. -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\str_schema(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:nullable" + "}" + ", " + "$" + "{" + "3:metadata" + "}" + ")"), - boost: 10 - }, { - label: "sub_select", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- sub_select(SelectFinalStep $query) : Subquery -
-
- Create a subquery expression. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\sub_select(" + "$" + "{" + "1:query" + "}" + ")"), - boost: 10 - }, { - label: "sum", - type: "function", - detail: "flow\u002Ddsl\u002Daggregating\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- sum(EntryReference|string $ref) : Sum -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\sum(" + "$" + "{" + "1:ref" + "}" + ")"), - boost: 10 - }, { - label: "superglobal_carrier", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- superglobal_carrier() : SuperglobalCarrier -
-
- Create a SuperglobalCarrier.
Read-only carrier that extracts context from PHP superglobals
($_SERVER, $_GET, $_POST, $_COOKIE). -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\superglobal_carrier()"), - boost: 10 - }, { - label: "symfony_request_carrier", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- symfony_request_carrier(Request $request) : RequestCarrier -
- ` - return div - }, - apply: snippet("\\Flow\\Bridge\\Symfony\\HttpFoundationTelemetry\\DSL\\symfony_request_carrier(" + "$" + "{" + "1:request" + "}" + ")"), - boost: 10 - }, { - label: "symfony_response_carrier", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- symfony_response_carrier(Response $response) : ResponseCarrier -
- ` - return div - }, - apply: snippet("\\Flow\\Bridge\\Symfony\\HttpFoundationTelemetry\\DSL\\symfony_response_carrier(" + "$" + "{" + "1:response" + "}" + ")"), - boost: 10 - }, { - label: "table", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- table(string $name, string $schema = null) : Table -
-
- Create a table reference.
Supports dot notation for schema-qualified names: \"public.users\" or explicit schema parameter.
Double-quoted identifiers preserve dots: \'\"my.table\"\' creates a single identifier.
@param string $name Table name (may include schema as \"schema.table\")
@param null|string $schema Schema name (optional, overrides parsed schema) -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\table(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:schema" + "}" + ")"), - boost: 10 - }, { - label: "table_func", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- table_func(FunctionCall $function, bool $withOrdinality = false) : TableFunction -
-
- Create a table function reference.
@param FunctionCall $function The table-valued function
@param bool $withOrdinality Whether to add WITH ORDINALITY -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\table_func(" + "$" + "{" + "1:function" + "}" + ", " + "$" + "{" + "2:withOrdinality" + "}" + ")"), - boost: 10 - }, { - label: "table_schema_to_flow_schema", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- table_schema_to_flow_schema(Table $table, array $types_map = []) : Schema -
-
- Converts a Doctrine\\DBAL\\Schema\\Table to a Flow\\ETL\\Schema.
@param array>, class-string<\\Doctrine\\DBAL\\Types\\Type>> $types_map
@return Schema -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\Adapter\\Doctrine\\table_schema_to_flow_schema(" + "$" + "{" + "1:table" + "}" + ", " + "$" + "{" + "2:types_map" + "}" + ")"), - boost: 10 - }, { - label: "telemetry", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- telemetry(Resource $resource, TracerProvider $tracerProvider = null, MeterProvider $meterProvider = null, LoggerProvider $loggerProvider = null) : Telemetry -
-
- Create a new Telemetry instance with the given providers.
If providers are not specified, void providers (no-op) are used.
@param resource $resource The resource describing the entity producing telemetry
@param null|TracerProvider $tracerProvider The tracer provider (null for void/disabled)
@param null|MeterProvider $meterProvider The meter provider (null for void/disabled)
@param null|LoggerProvider $loggerProvider The logger provider (null for void/disabled) -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\telemetry(" + "$" + "{" + "1:resource" + "}" + ", " + "$" + "{" + "2:tracerProvider" + "}" + ", " + "$" + "{" + "3:meterProvider" + "}" + ", " + "$" + "{" + "4:loggerProvider" + "}" + ")"), - boost: 10 - }, { - label: "telemetry_handler", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- telemetry_handler(Logger $logger, LogRecordConverter $converter = Flow\\Bridge\\Monolog\\Telemetry\\LogRecordConverter::..., Level $level = Monolog\\Level::..., bool $bubble = true) : TelemetryHandler -
-
- Create a TelemetryHandler for forwarding Monolog logs to Flow Telemetry.
@param Logger $logger The Flow Telemetry logger to forward logs to
@param LogRecordConverter $converter Converter to transform Monolog LogRecord to Telemetry LogRecord
@param Level $level The minimum logging level at which this handler will be triggered
@param bool $bubble Whether messages handled by this handler should bubble up to other handlers
Example usage:
\`\`\`php
use Monolog\\Logger as MonologLogger;
use function Flow\\Bridge\\Monolog\\Telemetry\\DSL\\telemetry_handler;
use function Flow\\Telemetry\\DSL\\telemetry;
$telemetry = telemetry();
$logger = $telemetry->logger(\'my-app\');
$monolog = new MonologLogger(\'channel\');
$monolog->pushHandler(telemetry_handler($logger));
$monolog->info(\'User logged in\', [\'user_id\' => 123]);
// → Forwarded to Flow Telemetry with INFO severity
\`\`\`
Example with custom converter:
\`\`\`php
$converter = log_record_converter(
severityMapper: severity_mapper([
Level::Debug->value => Severity::TRACE,
])
);
$monolog->pushHandler(telemetry_handler($logger, $converter));
\`\`\` -
- ` - return div - }, - apply: snippet("\\Flow\\Bridge\\Monolog\\Telemetry\\DSL\\telemetry_handler(" + "$" + "{" + "1:logger" + "}" + ", " + "$" + "{" + "2:converter" + "}" + ", " + "$" + "{" + "3:level" + "}" + ", " + "$" + "{" + "4:bubble" + "}" + ")"), - boost: 10 - }, { - label: "telemetry_options", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- telemetry_options(bool $trace_loading = false, bool $trace_transformations = false, bool $trace_cache = false, bool $collect_metrics = false, FilesystemTelemetryOptions $filesystem = null) : TelemetryOptions -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\telemetry_options(" + "$" + "{" + "1:trace_loading" + "}" + ", " + "$" + "{" + "2:trace_transformations" + "}" + ", " + "$" + "{" + "3:trace_cache" + "}" + ", " + "$" + "{" + "4:collect_metrics" + "}" + ", " + "$" + "{" + "5:filesystem" + "}" + ")"), - boost: 10 - }, { - label: "text_search_match", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- text_search_match(Expression $document, Expression $query) : OperatorCondition -
-
- Create a full-text search match condition (@@).
Example: text_search_match(col(\'document\'), raw_expr(\"to_tsquery(\'english\', \'hello & world\')\"))
Produces: document @@ to_tsquery(\'english\', \'hello & world\') -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\text_search_match(" + "$" + "{" + "1:document" + "}" + ", " + "$" + "{" + "2:query" + "}" + ")"), - boost: 10 - }, { - label: "throw_error_handler", - type: "function", - detail: "flow\u002Ddsl\u002Ddata\u002Dframe", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- throw_error_handler() : ThrowError -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\throw_error_handler()"), - boost: 10 - }, { - label: "time_entry", - type: "function", - detail: "flow\u002Ddsl\u002Dentries", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- time_entry(string $name, DateInterval|string|null $value, Metadata $metadata = null) : Entry -
-
- @return Entry -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\time_entry(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:value" + "}" + ", " + "$" + "{" + "3:metadata" + "}" + ")"), - boost: 10 - }, { - label: "time_schema", - type: "function", - detail: "flow\u002Ddsl\u002Dschema", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- time_schema(string $name, bool $nullable = false, Metadata $metadata = null) : TimeDefinition -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\time_schema(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:nullable" + "}" + ", " + "$" + "{" + "3:metadata" + "}" + ")"), - boost: 10 - }, { - label: "to_array", - type: "function", - detail: "flow\u002Ddsl\u002Dloaders", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- to_array(array $array) : ArrayLoader -
-
- Convert rows to an array and store them in passed array variable.
@param array $array
@param-out array> $array -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\to_array(" + "$" + "{" + "1:array" + "}" + ")"), - boost: 10 - }, { - label: "to_avro", - type: "function", - detail: "flow\u002Ddsl\u002Dloaders", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- to_avro(Path|string $path, Schema $schema = null) : AvroLoader -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\Adapter\\Avro\\to_avro(" + "$" + "{" + "1:path" + "}" + ", " + "$" + "{" + "2:schema" + "}" + ")"), - boost: 10 - }, { - label: "to_branch", - type: "function", - detail: "flow\u002Ddsl\u002Dloaders", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- to_branch(ScalarFunction $condition, Loader $loader) : BranchingLoader -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\to_branch(" + "$" + "{" + "1:condition" + "}" + ", " + "$" + "{" + "2:loader" + "}" + ")"), - boost: 10 - }, { - label: "to_callable", - type: "function", - detail: "flow\u002Ddsl\u002Dloaders", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- to_callable(callable $callable) : CallbackLoader -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\to_callable(" + "$" + "{" + "1:callable" + "}" + ")"), - boost: 10 - }, { - label: "to_chartjs", - type: "function", - detail: "flow\u002Ddsl\u002Dloaders", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- to_chartjs(Chart $type) : ChartJSLoader -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\Adapter\\ChartJS\\to_chartjs(" + "$" + "{" + "1:type" + "}" + ")"), - boost: 10 - }, { - label: "to_chartjs_file", - type: "function", - detail: "flow\u002Ddsl\u002Dloaders", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- to_chartjs_file(Chart $type, Path|string|null $output = null, Path|string|null $template = null) : ChartJSLoader -
-
- @param Chart $type
@param null|Path|string $output - @deprecated use $loader->withOutputPath() instead
@param null|Path|string $template - @deprecated use $loader->withTemplate() instead -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\Adapter\\ChartJS\\to_chartjs_file(" + "$" + "{" + "1:type" + "}" + ", " + "$" + "{" + "2:output" + "}" + ", " + "$" + "{" + "3:template" + "}" + ")"), - boost: 10 - }, { - label: "to_chartjs_var", - type: "function", - detail: "flow\u002Ddsl\u002Dloaders", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- to_chartjs_var(Chart $type, array $output) : ChartJSLoader -
-
- @param Chart $type
@param array $output - @deprecated use $loader->withOutputVar() instead -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\Adapter\\ChartJS\\to_chartjs_var(" + "$" + "{" + "1:type" + "}" + ", " + "$" + "{" + "2:output" + "}" + ")"), - boost: 10 - }, { - label: "to_csv", - type: "function", - detail: "flow\u002Ddsl\u002Dloaders", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- to_csv(Path|string $uri, bool $with_header = true, string $separator = ',', string $enclosure = '\\"', string $escape = '\\\\', string $new_line_separator = '\\n', string $datetime_format = 'Y-m-d\\\\TH:i:sP') : CSVLoader -
-
- @param Path|string $uri
@param bool $with_header - @deprecated use $loader->withHeader() instead
@param string $separator - @deprecated use $loader->withSeparator() instead
@param string $enclosure - @deprecated use $loader->withEnclosure() instead
@param string $escape - @deprecated use $loader->withEscape() instead
@param string $new_line_separator - @deprecated use $loader->withNewLineSeparator() instead
@param string $datetime_format - @deprecated use $loader->withDateTimeFormat() instead -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\Adapter\\CSV\\to_csv(" + "$" + "{" + "1:uri" + "}" + ", " + "$" + "{" + "2:with_header" + "}" + ", " + "$" + "{" + "3:separator" + "}" + ", " + "$" + "{" + "4:enclosure" + "}" + ", " + "$" + "{" + "5:escape" + "}" + ", " + "$" + "{" + "6:new_line_separator" + "}" + ", " + "$" + "{" + "7:datetime_format" + "}" + ")"), - boost: 10 - }, { - label: "to_date", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- to_date(mixed $ref, ScalarFunction|string $format = 'Y-m-d', ScalarFunction|DateTimeZone $timeZone = DateTimeZone::...) : ToDate -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\to_date(" + "$" + "{" + "1:ref" + "}" + ", " + "$" + "{" + "2:format" + "}" + ", " + "$" + "{" + "3:timeZone" + "}" + ")"), - boost: 10 - }, { - label: "to_date_time", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- to_date_time(mixed $ref, ScalarFunction|string $format = 'Y-m-d H:i:s', ScalarFunction|DateTimeZone $timeZone = DateTimeZone::...) : ToDateTime -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\to_date_time(" + "$" + "{" + "1:ref" + "}" + ", " + "$" + "{" + "2:format" + "}" + ", " + "$" + "{" + "3:timeZone" + "}" + ")"), - boost: 10 - }, { - label: "to_dbal_schema_table", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- to_dbal_schema_table(Schema $schema, string $table_name, array $table_options = [], array $types_map = []) : Table -
-
- Converts a Flow\\ETL\\Schema to a Doctrine\\DBAL\\Schema\\Table.
@param Schema $schema
@param array $table_options
@param array>, class-string<\\Doctrine\\DBAL\\Types\\Type>> $types_map -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\Adapter\\Doctrine\\to_dbal_schema_table(" + "$" + "{" + "1:schema" + "}" + ", " + "$" + "{" + "2:table_name" + "}" + ", " + "$" + "{" + "3:table_options" + "}" + ", " + "$" + "{" + "4:types_map" + "}" + ")"), - boost: 10 - }, { - label: "to_dbal_table_delete", - type: "function", - detail: "flow\u002Ddsl\u002Dloaders", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- to_dbal_table_delete(Connection|array $connection, string $table) : DbalLoader -
-
- Delete rows from database table based on the provided data.
In order to control the size of the single request, use DataFrame::chunkSize() method just before calling DataFrame::load().
@param array|Connection $connection
@throws InvalidArgumentException -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\Adapter\\Doctrine\\to_dbal_table_delete(" + "$" + "{" + "1:connection" + "}" + ", " + "$" + "{" + "2:table" + "}" + ")"), - boost: 10 - }, { - label: "to_dbal_table_insert", - type: "function", - detail: "flow\u002Ddsl\u002Dloaders", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- to_dbal_table_insert(Connection|array $connection, string $table, InsertOptions $options = null) : DbalLoader -
-
- Insert new rows into a database table.
Insert can also be used as an upsert with the help of InsertOptions.
InsertOptions are platform specific, so please choose the right one for your database.
- MySQLInsertOptions
- PostgreSQLInsertOptions
- SqliteInsertOptions
In order to control the size of the single insert, use DataFrame::chunkSize() method just before calling DataFrame::load().
@param array|Connection $connection
@throws InvalidArgumentException -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\Adapter\\Doctrine\\to_dbal_table_insert(" + "$" + "{" + "1:connection" + "}" + ", " + "$" + "{" + "2:table" + "}" + ", " + "$" + "{" + "3:options" + "}" + ")"), - boost: 10 - }, { - label: "to_dbal_table_update", - type: "function", - detail: "flow\u002Ddsl\u002Dloaders", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- to_dbal_table_update(Connection|array $connection, string $table, UpdateOptions $options = null) : DbalLoader -
-
- Update existing rows in database.
In order to control the size of the single request, use DataFrame::chunkSize() method just before calling DataFrame::load().
@param array|Connection $connection
@throws InvalidArgumentException -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\Adapter\\Doctrine\\to_dbal_table_update(" + "$" + "{" + "1:connection" + "}" + ", " + "$" + "{" + "2:table" + "}" + ", " + "$" + "{" + "3:options" + "}" + ")"), - boost: 10 - }, { - label: "to_dbal_transaction", - type: "function", - detail: "flow\u002Ddsl\u002Dloaders", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- to_dbal_transaction(Connection|array $connection, Loader $loaders) : TransactionalDbalLoader -
-
- Execute multiple loaders within a database transaction.
Each batch of rows will be processed in its own transaction.
If any loader fails, the entire batch will be rolled back.
@param array|Connection $connection
@param Loader ...$loaders - Loaders to execute within the transaction
@throws InvalidArgumentException -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\Adapter\\Doctrine\\to_dbal_transaction(" + "$" + "{" + "1:connection" + "}" + ", " + "$" + "{" + "2:loaders" + "}" + ")"), - boost: 10 - }, { - label: "to_entry", - type: "function", - detail: "flow\u002Ddsl\u002Ddata\u002Dframe", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- to_entry(string $name, mixed $data, EntryFactory $entryFactory) : Entry -
-
- @param array $data
@return Entry -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\to_entry(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:data" + "}" + ", " + "$" + "{" + "3:entryFactory" + "}" + ")"), - boost: 10 - }, { - label: "to_es_bulk_index", - type: "function", - detail: "flow\u002Ddsl\u002Dloaders", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- to_es_bulk_index(array $config, string $index, IdFactory $id_factory, array $parameters = []) : ElasticsearchLoader -
-
- https://www.elastic.co/guide/en/elasticsearch/reference/master/docs-bulk.html.
In order to control the size of the single request, use DataFrame::chunkSize() method just before calling DataFrame::load().
@param array{
hosts?: array,
connectionParams?: array,
retries?: int,
sniffOnStart?: bool,
sslCert?: array,
sslKey?: array,
sslVerification?: bool|string,
elasticMetaHeader?: bool,
includePortInHostHeader?: bool
} $config
@param string $index
@param IdFactory $id_factory
@param array $parameters - https://www.elastic.co/guide/en/elasticsearch/reference/master/docs-bulk.html - @deprecated use withParameters method instead -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\Adapter\\Elasticsearch\\to_es_bulk_index(" + "$" + "{" + "1:config" + "}" + ", " + "$" + "{" + "2:index" + "}" + ", " + "$" + "{" + "3:id_factory" + "}" + ", " + "$" + "{" + "4:parameters" + "}" + ")"), - boost: 10 - }, { - label: "to_es_bulk_update", - type: "function", - detail: "flow\u002Ddsl\u002Dloaders", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- to_es_bulk_update(array $config, string $index, IdFactory $id_factory, array $parameters = []) : ElasticsearchLoader -
-
- https://www.elastic.co/guide/en/elasticsearch/reference/master/docs-bulk.html.
In order to control the size of the single request, use DataFrame::chunkSize() method just before calling DataFrame::load().
@param array{
hosts?: array,
connectionParams?: array,
retries?: int,
sniffOnStart?: bool,
sslCert?: array,
sslKey?: array,
sslVerification?: bool|string,
elasticMetaHeader?: bool,
includePortInHostHeader?: bool
} $config
@param string $index
@param IdFactory $id_factory
@param array $parameters - https://www.elastic.co/guide/en/elasticsearch/reference/master/docs-bulk.html - @deprecated use withParameters method instead -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\Adapter\\Elasticsearch\\to_es_bulk_update(" + "$" + "{" + "1:config" + "}" + ", " + "$" + "{" + "2:index" + "}" + ", " + "$" + "{" + "3:id_factory" + "}" + ", " + "$" + "{" + "4:parameters" + "}" + ")"), - boost: 10 - }, { - label: "to_excel", - type: "function", - detail: "flow\u002Ddsl\u002Dloaders", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- to_excel(Path|string $path) : ExcelLoader -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\Adapter\\Excel\\DSL\\to_excel(" + "$" + "{" + "1:path" + "}" + ")"), - boost: 10 - }, { - label: "to_json", - type: "function", - detail: "flow\u002Ddsl\u002Dloaders", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- to_json(Path|string $path, int $flags = 4194304, string $date_time_format = 'Y-m-d\\\\TH:i:sP', bool $put_rows_in_new_lines = false) : JsonLoader -
-
- @param Path|string $path
@param int $flags - PHP JSON Flags - @deprecate use withFlags method instead
@param string $date_time_format - format for DateTimeInterface::format() - @deprecate use withDateTimeFormat method instead
@param bool $put_rows_in_new_lines - if you want to put each row in a new line - @deprecate use withRowsInNewLines method instead
@return JsonLoader -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\Adapter\\JSON\\to_json(" + "$" + "{" + "1:path" + "}" + ", " + "$" + "{" + "2:flags" + "}" + ", " + "$" + "{" + "3:date_time_format" + "}" + ", " + "$" + "{" + "4:put_rows_in_new_lines" + "}" + ")"), - boost: 10 - }, { - label: "to_json_lines", - type: "function", - detail: "flow\u002Ddsl\u002Dloaders", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- to_json_lines(Path|string $path) : JsonLinesLoader -
-
- Used to write to a JSON lines https://jsonlines.org/ formatted file.
@param Path|string $path
@return JsonLinesLoader -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\Adapter\\JSON\\to_json_lines(" + "$" + "{" + "1:path" + "}" + ")"), - boost: 10 - }, { - label: "to_memory", - type: "function", - detail: "flow\u002Ddsl\u002Dloaders", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- to_memory(Memory $memory) : MemoryLoader -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\to_memory(" + "$" + "{" + "1:memory" + "}" + ")"), - boost: 10 - }, { - label: "to_output", - type: "function", - detail: "flow\u002Ddsl\u002Dloaders", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- to_output(int|bool $truncate = 20, Output $output = Flow\\ETL\\Loader\\StreamLoader\\Output::..., Formatter $formatter = Flow\\ETL\\Formatter\\AsciiTableFormatter::..., SchemaFormatter $schemaFormatter = Flow\\ETL\\Row\\Formatter\\ASCIISchemaFormatter::...) : StreamLoader -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\to_output(" + "$" + "{" + "1:truncate" + "}" + ", " + "$" + "{" + "2:output" + "}" + ", " + "$" + "{" + "3:formatter" + "}" + ", " + "$" + "{" + "4:schemaFormatter" + "}" + ")"), - boost: 10 - }, { - label: "to_parquet", - type: "function", - detail: "flow\u002Ddsl\u002Dloaders", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- to_parquet(Path|string $path, Options $options = null, Compressions $compressions = Flow\\Parquet\\ParquetFile\\Compressions::..., Schema $schema = null) : ParquetLoader -
-
- @param Path|string $path
@param null|Options $options - @deprecated use \`withOptions\` method instead
@param Compressions $compressions - @deprecated use \`withCompressions\` method instead
@param null|Schema $schema - @deprecated use \`withSchema\` method instead -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\Adapter\\Parquet\\to_parquet(" + "$" + "{" + "1:path" + "}" + ", " + "$" + "{" + "2:options" + "}" + ", " + "$" + "{" + "3:compressions" + "}" + ", " + "$" + "{" + "4:schema" + "}" + ")"), - boost: 10 - }, { - label: "to_stderr", - type: "function", - detail: "flow\u002Ddsl\u002Dloaders", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- to_stderr(int|bool $truncate = 20, Output $output = Flow\\ETL\\Loader\\StreamLoader\\Output::..., Formatter $formatter = Flow\\ETL\\Formatter\\AsciiTableFormatter::..., SchemaFormatter $schemaFormatter = Flow\\ETL\\Row\\Formatter\\ASCIISchemaFormatter::...) : StreamLoader -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\to_stderr(" + "$" + "{" + "1:truncate" + "}" + ", " + "$" + "{" + "2:output" + "}" + ", " + "$" + "{" + "3:formatter" + "}" + ", " + "$" + "{" + "4:schemaFormatter" + "}" + ")"), - boost: 10 - }, { - label: "to_stdout", - type: "function", - detail: "flow\u002Ddsl\u002Dloaders", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- to_stdout(int|bool $truncate = 20, Output $output = Flow\\ETL\\Loader\\StreamLoader\\Output::..., Formatter $formatter = Flow\\ETL\\Formatter\\AsciiTableFormatter::..., SchemaFormatter $schemaFormatter = Flow\\ETL\\Row\\Formatter\\ASCIISchemaFormatter::...) : StreamLoader -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\to_stdout(" + "$" + "{" + "1:truncate" + "}" + ", " + "$" + "{" + "2:output" + "}" + ", " + "$" + "{" + "3:formatter" + "}" + ", " + "$" + "{" + "4:schemaFormatter" + "}" + ")"), - boost: 10 - }, { - label: "to_stream", - type: "function", - detail: "flow\u002Ddsl\u002Dloaders", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- to_stream(string $uri, int|bool $truncate = 20, Output $output = Flow\\ETL\\Loader\\StreamLoader\\Output::..., string $mode = 'w', Formatter $formatter = Flow\\ETL\\Formatter\\AsciiTableFormatter::..., SchemaFormatter $schemaFormatter = Flow\\ETL\\Row\\Formatter\\ASCIISchemaFormatter::...) : StreamLoader -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\to_stream(" + "$" + "{" + "1:uri" + "}" + ", " + "$" + "{" + "2:truncate" + "}" + ", " + "$" + "{" + "3:output" + "}" + ", " + "$" + "{" + "4:mode" + "}" + ", " + "$" + "{" + "5:formatter" + "}" + ", " + "$" + "{" + "6:schemaFormatter" + "}" + ")"), - boost: 10 - }, { - label: "to_text", - type: "function", - detail: "flow\u002Ddsl\u002Dloaders", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- to_text(Path|string $path, string $new_line_separator = '\\n') : Loader -
-
- @param Path|string $path
@param string $new_line_separator - default PHP_EOL - @deprecated use withNewLineSeparator method instead
@return Loader -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\Adapter\\Text\\to_text(" + "$" + "{" + "1:path" + "}" + ", " + "$" + "{" + "2:new_line_separator" + "}" + ")"), - boost: 10 - }, { - label: "to_timezone", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- to_timezone(ScalarFunction|DateTimeInterface $value, ScalarFunction|DateTimeZone|string $timeZone) : ToTimeZone -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\to_timezone(" + "$" + "{" + "1:value" + "}" + ", " + "$" + "{" + "2:timeZone" + "}" + ")"), - boost: 10 - }, { - label: "to_transformation", - type: "function", - detail: "flow\u002Ddsl\u002Dloaders", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- to_transformation(Transformer|Transformation $transformer, Loader $loader) : TransformerLoader -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\to_transformation(" + "$" + "{" + "1:transformer" + "}" + ", " + "$" + "{" + "2:loader" + "}" + ")"), - boost: 10 - }, { - label: "to_xml", - type: "function", - detail: "flow\u002Ddsl\u002Dloaders", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- to_xml(Path|string $path, string $root_element_name = 'rows', string $row_element_name = 'row', string $attribute_prefix = '_', string $date_time_format = 'Y-m-d\\\\TH:i:s.uP', XMLWriter $xml_writer = Flow\\ETL\\Adapter\\XML\\XMLWriter\\DOMDocumentWriter::...) : XMLLoader -
-
- @param Path|string $path
@param string $root_element_name - @deprecated use \`withRootElementName()\` method instead
@param string $row_element_name - @deprecated use \`withRowElementName()\` method instead
@param string $attribute_prefix - @deprecated use \`withAttributePrefix()\` method instead
@param string $date_time_format - @deprecated use \`withDateTimeFormat()\` method instead
@param XMLWriter $xml_writer -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\Adapter\\XML\\to_xml(" + "$" + "{" + "1:path" + "}" + ", " + "$" + "{" + "2:root_element_name" + "}" + ", " + "$" + "{" + "3:row_element_name" + "}" + ", " + "$" + "{" + "4:attribute_prefix" + "}" + ", " + "$" + "{" + "5:date_time_format" + "}" + ", " + "$" + "{" + "6:xml_writer" + "}" + ")"), - boost: 10 - }, { - label: "traceable_filesystem", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- traceable_filesystem(Filesystem $filesystem, FilesystemTelemetryConfig $telemetryConfig) : TraceableFilesystem -
-
- Wrap a filesystem with telemetry tracing support.
All filesystem and stream operations will be traced according to the configuration. -
- ` - return div - }, - apply: snippet("\\Flow\\Filesystem\\DSL\\traceable_filesystem(" + "$" + "{" + "1:filesystem" + "}" + ", " + "$" + "{" + "2:telemetryConfig" + "}" + ")"), - boost: 10 - }, { - label: "traceable_postgresql_client", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- traceable_postgresql_client(Client $client, PostgreSqlTelemetryConfig $telemetryConfig) : TraceableClient -
-
- Wrap a PostgreSQL client with telemetry instrumentation.
Returns a decorator that adds spans, metrics, and logs to all
query and transaction operations following OpenTelemetry conventions.
@param Client\\Client $client The PostgreSQL client to instrument
@param PostgreSqlTelemetryConfig $telemetryConfig Telemetry configuration
@example
$client = pgsql_client(pgsql_connection(\'host=localhost dbname=mydb\'));
$traceableClient = traceable_postgresql_client(
$client,
postgresql_telemetry_config(
telemetry(resource([\'service.name\' => \'my-app\'])),
new SystemClock(),
postgresql_telemetry_options(
traceQueries: true,
traceTransactions: true,
collectMetrics: true,
logQueries: true,
maxQueryLength: 500,
),
),
);
// All operations now traced
$traceableClient->transaction(function (Client $client) {
$user = $client->fetchOne(\'SELECT * FROM users WHERE id = $1\', [123]);
$client->execute(\'UPDATE users SET last_login = NOW() WHERE id = $1\', [123]);
}); -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\traceable_postgresql_client(" + "$" + "{" + "1:client" + "}" + ", " + "$" + "{" + "2:telemetryConfig" + "}" + ")"), - boost: 10 - }, { - label: "tracer_provider", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- tracer_provider(SpanProcessor $processor, ClockInterface $clock, ContextStorage $contextStorage, Sampler $sampler = Flow\\Telemetry\\Tracer\\Sampler\\AlwaysOnSampler::..., SpanLimits $limits = Flow\\Telemetry\\Tracer\\SpanLimits::...) : TracerProvider -
-
- Create a TracerProvider.
Creates a provider that uses a SpanProcessor for processing spans.
For void/disabled tracing, pass void_processor().
For memory-based testing, pass memory_processor() with exporters.
@param SpanProcessor $processor The processor for spans
@param ClockInterface $clock The clock for timestamps
@param ContextStorage $contextStorage Storage for context propagation
@param Sampler $sampler Sampling strategy for spans
@param SpanLimits $limits Limits for span attributes, events, and links -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\tracer_provider(" + "$" + "{" + "1:processor" + "}" + ", " + "$" + "{" + "2:clock" + "}" + ", " + "$" + "{" + "3:contextStorage" + "}" + ", " + "$" + "{" + "4:sampler" + "}" + ", " + "$" + "{" + "5:limits" + "}" + ")"), - boost: 10 - }, { - label: "trace_based_exemplar_filter", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- trace_based_exemplar_filter() : TraceBasedExemplarFilter -
-
- Create a TraceBasedExemplarFilter.
Records exemplars only when the span is sampled (has SAMPLED trace flag).
This is the default filter, balancing exemplar collection with performance. -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\trace_based_exemplar_filter()"), - boost: 10 - }, { - label: "trace_id", - type: "function", - detail: "flow\u002Ddsl\u002Dtype", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- trace_id(string $hex = null) : TraceId -
-
- Create a TraceId.
If a hex string is provided, creates a TraceId from it.
Otherwise, generates a new random TraceId.
@param null|string $hex Optional 32-character hexadecimal string
@throws \\InvalidArgumentException if the hex string is invalid -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\trace_id(" + "$" + "{" + "1:hex" + "}" + ")"), - boost: 10 - }, { - label: "transaction_snapshot", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- transaction_snapshot(string $snapshotId) : SetTransactionFinalStep -
-
- Create a SET TRANSACTION SNAPSHOT builder.
Example: transaction_snapshot(\'00000003-0000001A-1\')
Produces: SET TRANSACTION SNAPSHOT \'00000003-0000001A-1\' -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\transaction_snapshot(" + "$" + "{" + "1:snapshotId" + "}" + ")"), - boost: 10 - }, { - label: "truncate_table", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- truncate_table(string $tables) : TruncateFinalStep -
-
- Create a TRUNCATE TABLE builder.
@param string ...$tables Table names to truncate -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\truncate_table(" + "$" + "{" + "1:tables" + "}" + ")"), - boost: 10 - }, { - label: "typed", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- typed(mixed $value, PostgreSqlType $targetType) : TypedValue -
-
- Wrap a value with explicit PostgreSQL type information for parameter binding.
Use when auto-detection isn\'t sufficient or when you need to specify
the exact PostgreSQL type (since one PHP type can map to multiple PostgreSQL types):
- int could be INT2, INT4, or INT8
- string could be TEXT, VARCHAR, or CHAR
- array must always use typed() since auto-detection cannot determine element type
- DateTimeInterface could be TIMESTAMP or TIMESTAMPTZ
- Json could be JSON or JSONB
@param mixed $value The value to bind
@param PostgreSqlType $targetType The PostgreSQL type to convert the value to
@example
$client->fetch(
\'SELECT * FROM users WHERE id = $1 AND tags = $2\',
[
typed(\'550e8400-e29b-41d4-a716-446655440000\', PostgreSqlType::UUID),
typed([\'tag1\', \'tag2\'], PostgreSqlType::TEXT_ARRAY),
]
); -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\typed(" + "$" + "{" + "1:value" + "}" + ", " + "$" + "{" + "2:targetType" + "}" + ")"), - boost: 10 - }, { - label: "types", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- types(Type $types) : Types -
-
- @template T
@param Type ...$types
@return Types -
- ` - return div - }, - apply: snippet("\\Flow\\Types\\DSL\\types(" + "$" + "{" + "1:types" + "}" + ")"), - boost: 10 - }, { - label: "type_array", - type: "function", - detail: "flow\u002Ddsl\u002Dtype", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- type_array() : Type -
-
- @return Type> -
- ` - return div - }, - apply: snippet("\\Flow\\Types\\DSL\\type_array()"), - boost: 10 - }, { - label: "type_attr", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- type_attr(string $name, DataType $type) : TypeAttribute -
-
- Creates a type attribute for composite types.
Example: type_attr(\'name\', data_type_text())
Produces: name text
Example: type_attr(\'description\', data_type_text())->collate(\'en_US\')
Produces: description text COLLATE \"en_US\"
@param string $name The attribute name
@param DataType $type The attribute type
@return TypeAttribute Type attribute value object -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\type_attr(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:type" + "}" + ")"), - boost: 10 - }, { - label: "type_boolean", - type: "function", - detail: "flow\u002Ddsl\u002Dtype", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- type_boolean() : Type -
-
- @return Type -
- ` - return div - }, - apply: snippet("\\Flow\\Types\\DSL\\type_boolean()"), - boost: 10 - }, { - label: "type_callable", - type: "function", - detail: "flow\u002Ddsl\u002Dtype", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- type_callable() : Type -
-
- @return Type -
- ` - return div - }, - apply: snippet("\\Flow\\Types\\DSL\\type_callable()"), - boost: 10 - }, { - label: "type_class_string", - type: "function", - detail: "flow\u002Ddsl\u002Dtype", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- type_class_string(string $class = null) : Type -
-
- @template T of object
@param null|class-string $class
@return ($class is null ? Type : Type>) -
- ` - return div - }, - apply: snippet("\\Flow\\Types\\DSL\\type_class_string(" + "$" + "{" + "1:class" + "}" + ")"), - boost: 10 - }, { - label: "type_date", - type: "function", - detail: "flow\u002Ddsl\u002Dtype", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- type_date() : Type -
-
- @deprecated please use \\Flow\\Types\\DSL\\type_date() : DateType
@return Type<\\DateTimeInterface> -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\type_date()"), - boost: 10 - }, { - label: "type_date", - type: "function", - detail: "flow\u002Ddsl\u002Dtype", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- type_date() : Type -
-
- @return Type<\\DateTimeInterface> -
- ` - return div - }, - apply: snippet("\\Flow\\Types\\DSL\\type_date()"), - boost: 10 - }, { - label: "type_datetime", - type: "function", - detail: "flow\u002Ddsl\u002Dtype", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- type_datetime() : Type -
-
- @return Type<\\DateTimeInterface> -
- ` - return div - }, - apply: snippet("\\Flow\\Types\\DSL\\type_datetime()"), - boost: 10 - }, { - label: "type_enum", - type: "function", - detail: "flow\u002Ddsl\u002Dtype", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- type_enum(string $class) : Type -
-
- @template T of UnitEnum
@param class-string $class
@return Type -
- ` - return div - }, - apply: snippet("\\Flow\\Types\\DSL\\type_enum(" + "$" + "{" + "1:class" + "}" + ")"), - boost: 10 - }, { - label: "type_equals", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- type_equals(Type $left, Type $right) : bool -
-
- @param Type $left
@param Type $right -
- ` - return div - }, - apply: snippet("\\Flow\\Types\\DSL\\type_equals(" + "$" + "{" + "1:left" + "}" + ", " + "$" + "{" + "2:right" + "}" + ")"), - boost: 10 - }, { - label: "type_float", - type: "function", - detail: "flow\u002Ddsl\u002Dtype", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- type_float() : Type -
-
- @return Type -
- ` - return div - }, - apply: snippet("\\Flow\\Types\\DSL\\type_float()"), - boost: 10 - }, { - label: "type_from_array", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- type_from_array(array $data) : Type -
-
- @param array $data
@return Type -
- ` - return div - }, - apply: snippet("\\Flow\\Types\\DSL\\type_from_array(" + "$" + "{" + "1:data" + "}" + ")"), - boost: 10 - }, { - label: "type_html", - type: "function", - detail: "flow\u002Ddsl\u002Dtype", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- type_html() : Type -
-
- @return Type -
- ` - return div - }, - apply: snippet("\\Flow\\Types\\DSL\\type_html()"), - boost: 10 - }, { - label: "type_html_element", - type: "function", - detail: "flow\u002Ddsl\u002Dtype", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- type_html_element() : Type -
-
- @return Type -
- ` - return div - }, - apply: snippet("\\Flow\\Types\\DSL\\type_html_element()"), - boost: 10 - }, { - label: "type_instance_of", - type: "function", - detail: "flow\u002Ddsl\u002Dtype", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- type_instance_of(string $class) : Type -
-
- @template T of object
@param class-string $class
@return Type -
- ` - return div - }, - apply: snippet("\\Flow\\Types\\DSL\\type_instance_of(" + "$" + "{" + "1:class" + "}" + ")"), - boost: 10 - }, { - label: "type_int", - type: "function", - detail: "flow\u002Ddsl\u002Dtype", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- type_int() : Type -
-
- @deprecated please use \\Flow\\Types\\DSL\\type_integer() : IntegerType
@return Type -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\type_int()"), - boost: 10 - }, { - label: "type_integer", - type: "function", - detail: "flow\u002Ddsl\u002Dtype", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- type_integer() : Type -
-
- @return Type -
- ` - return div - }, - apply: snippet("\\Flow\\Types\\DSL\\type_integer()"), - boost: 10 - }, { - label: "type_intersection", - type: "function", - detail: "flow\u002Ddsl\u002Dtype", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- type_intersection(Type $first, Type $second, Type $types) : Type -
-
- @template T
@param Type $first
@param Type $second
@param Type ...$types
@return Type -
- ` - return div - }, - apply: snippet("\\Flow\\Types\\DSL\\type_intersection(" + "$" + "{" + "1:first" + "}" + ", " + "$" + "{" + "2:second" + "}" + ", " + "$" + "{" + "3:types" + "}" + ")"), - boost: 10 - }, { - label: "type_is", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- type_is(Type $type, string $typeClass) : bool -
-
- @template T
@param Type $type
@param class-string> $typeClass -
- ` - return div - }, - apply: snippet("\\Flow\\Types\\DSL\\type_is(" + "$" + "{" + "1:type" + "}" + ", " + "$" + "{" + "2:typeClass" + "}" + ")"), - boost: 10 - }, { - label: "type_is_any", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- type_is_any(Type $type, string $typeClass, string $typeClasses) : bool -
-
- @template T
@param Type $type
@param class-string> $typeClass
@param class-string> ...$typeClasses -
- ` - return div - }, - apply: snippet("\\Flow\\Types\\DSL\\type_is_any(" + "$" + "{" + "1:type" + "}" + ", " + "$" + "{" + "2:typeClass" + "}" + ", " + "$" + "{" + "3:typeClasses" + "}" + ")"), - boost: 10 - }, { - label: "type_is_nullable", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- type_is_nullable(Type $type) : bool -
-
- @template T
@param Type $type -
- ` - return div - }, - apply: snippet("\\Flow\\Types\\DSL\\type_is_nullable(" + "$" + "{" + "1:type" + "}" + ")"), - boost: 10 - }, { - label: "type_json", - type: "function", - detail: "flow\u002Ddsl\u002Dtype", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- type_json() : Type -
-
- @return Type -
- ` - return div - }, - apply: snippet("\\Flow\\Types\\DSL\\type_json()"), - boost: 10 - }, { - label: "type_list", - type: "function", - detail: "flow\u002Ddsl\u002Dtype", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- type_list(Type $element) : ListType -
-
- @template T
@param Type $element
@return ListType -
- ` - return div - }, - apply: snippet("\\Flow\\Types\\DSL\\type_list(" + "$" + "{" + "1:element" + "}" + ")"), - boost: 10 - }, { - label: "type_literal", - type: "function", - detail: "flow\u002Ddsl\u002Dtype", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- type_literal(string|int|float|bool $value) : LiteralType -
-
- @template T of bool|float|int|string
@param T $value
@return LiteralType -
- ` - return div - }, - apply: snippet("\\Flow\\Types\\DSL\\type_literal(" + "$" + "{" + "1:value" + "}" + ")"), - boost: 10 - }, { - label: "type_map", - type: "function", - detail: "flow\u002Ddsl\u002Dtype", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- type_map(Type $key_type, Type $value_type) : MapType -
-
- @template TKey of array-key
@template TValue
@param Type $key_type
@param Type $value_type
@return MapType -
- ` - return div - }, - apply: snippet("\\Flow\\Types\\DSL\\type_map(" + "$" + "{" + "1:key_type" + "}" + ", " + "$" + "{" + "2:value_type" + "}" + ")"), - boost: 10 - }, { - label: "type_mixed", - type: "function", - detail: "flow\u002Ddsl\u002Dtype", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- type_mixed() : Type -
-
- @return Type -
- ` - return div - }, - apply: snippet("\\Flow\\Types\\DSL\\type_mixed()"), - boost: 10 - }, { - label: "type_non_empty_string", - type: "function", - detail: "flow\u002Ddsl\u002Dtype", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- type_non_empty_string() : Type -
-
- @return Type -
- ` - return div - }, - apply: snippet("\\Flow\\Types\\DSL\\type_non_empty_string()"), - boost: 10 - }, { - label: "type_null", - type: "function", - detail: "flow\u002Ddsl\u002Dtype", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- type_null() : Type -
-
- @return Type -
- ` - return div - }, - apply: snippet("\\Flow\\Types\\DSL\\type_null()"), - boost: 10 - }, { - label: "type_numeric_string", - type: "function", - detail: "flow\u002Ddsl\u002Dtype", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- type_numeric_string() : Type -
-
- @return Type -
- ` - return div - }, - apply: snippet("\\Flow\\Types\\DSL\\type_numeric_string()"), - boost: 10 - }, { - label: "type_object", - type: "function", - detail: "flow\u002Ddsl\u002Dtype", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- type_object() : Type -
-
- @return Type - - ` - return div - }, - apply: snippet("\\Flow\\Types\\DSL\\type_object()"), - boost: 10 - }, { - label: "type_optional", - type: "function", - detail: "flow\u002Ddsl\u002Dtype", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- type_optional(Type $type) : Type -
-
- @template T
@param Type $type
@return Type -
- ` - return div - }, - apply: snippet("\\Flow\\Types\\DSL\\type_optional(" + "$" + "{" + "1:type" + "}" + ")"), - boost: 10 - }, { - label: "type_positive_integer", - type: "function", - detail: "flow\u002Ddsl\u002Dtype", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- type_positive_integer() : Type -
-
- @return Type> -
- ` - return div - }, - apply: snippet("\\Flow\\Types\\DSL\\type_positive_integer()"), - boost: 10 - }, { - label: "type_resource", - type: "function", - detail: "flow\u002Ddsl\u002Dtype", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- type_resource() : Type -
-
- @return Type -
- ` - return div - }, - apply: snippet("\\Flow\\Types\\DSL\\type_resource()"), - boost: 10 - }, { - label: "type_scalar", - type: "function", - detail: "flow\u002Ddsl\u002Dtype", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- type_scalar() : Type -
-
- @return Type -
- ` - return div - }, - apply: snippet("\\Flow\\Types\\DSL\\type_scalar()"), - boost: 10 - }, { - label: "type_string", - type: "function", - detail: "flow\u002Ddsl\u002Dtype", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- type_string() : Type -
-
- @return Type -
- ` - return div - }, - apply: snippet("\\Flow\\Types\\DSL\\type_string()"), - boost: 10 - }, { - label: "type_structure", - type: "function", - detail: "flow\u002Ddsl\u002Dtype", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- type_structure(array $elements = [], array $optional_elements = [], bool $allow_extra = false) : StructureType -
-
- @template T
@param array> $elements
@param array> $optional_elements
@return StructureType -
- ` - return div - }, - apply: snippet("\\Flow\\Types\\DSL\\type_structure(" + "$" + "{" + "1:elements" + "}" + ", " + "$" + "{" + "2:optional_elements" + "}" + ", " + "$" + "{" + "3:allow_extra" + "}" + ")"), - boost: 10 - }, { - label: "type_time", - type: "function", - detail: "flow\u002Ddsl\u002Dtype", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- type_time() : Type -
-
- @return Type<\\DateInterval> -
- ` - return div - }, - apply: snippet("\\Flow\\Types\\DSL\\type_time()"), - boost: 10 - }, { - label: "type_time_zone", - type: "function", - detail: "flow\u002Ddsl\u002Dtype", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- type_time_zone() : Type -
-
- @return Type<\\DateTimeZone> -
- ` - return div - }, - apply: snippet("\\Flow\\Types\\DSL\\type_time_zone()"), - boost: 10 - }, { - label: "type_union", - type: "function", - detail: "flow\u002Ddsl\u002Dtype", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- type_union(Type $first, Type $second, Type $types) : Type -
-
- @template T
@template T
@template T
@param Type $first
@param Type $second
@param Type ...$types
@return Type -
- ` - return div - }, - apply: snippet("\\Flow\\Types\\DSL\\type_union(" + "$" + "{" + "1:first" + "}" + ", " + "$" + "{" + "2:second" + "}" + ", " + "$" + "{" + "3:types" + "}" + ")"), - boost: 10 - }, { - label: "type_uuid", - type: "function", - detail: "flow\u002Ddsl\u002Dtype", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- type_uuid() : Type -
-
- @return Type -
- ` - return div - }, - apply: snippet("\\Flow\\Types\\DSL\\type_uuid()"), - boost: 10 - }, { - label: "type_xml", - type: "function", - detail: "flow\u002Ddsl\u002Dtype", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- type_xml() : Type -
-
- @return Type<\\DOMDocument> -
- ` - return div - }, - apply: snippet("\\Flow\\Types\\DSL\\type_xml()"), - boost: 10 - }, { - label: "type_xml_element", - type: "function", - detail: "flow\u002Ddsl\u002Dtype", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- type_xml_element() : Type -
-
- @return Type<\\DOMElement> -
- ` - return div - }, - apply: snippet("\\Flow\\Types\\DSL\\type_xml_element()"), - boost: 10 - }, { - label: "ulid", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- ulid(ScalarFunction|string|null $value = null) : Ulid -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\ulid(" + "$" + "{" + "1:value" + "}" + ")"), - boost: 10 - }, { - label: "unique_constraint", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- unique_constraint(string $columns) : UniqueConstraint -
-
- Create a UNIQUE constraint.
@param string ...$columns Columns that must be unique together -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\unique_constraint(" + "$" + "{" + "1:columns" + "}" + ")"), - boost: 10 - }, { - label: "update", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- update() : UpdateTableStep -
-
- Create a new UPDATE query builder. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\update()"), - boost: 10 - }, { - label: "upper", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- upper(ScalarFunction|string $value) : ToUpper -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\upper(" + "$" + "{" + "1:value" + "}" + ")"), - boost: 10 - }, { - label: "uuid_entry", - type: "function", - detail: "flow\u002Ddsl\u002Dentries", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- uuid_entry(string $name, Uuid|string|null $value, Metadata $metadata = null) : Entry -
-
- @return Entry -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\uuid_entry(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:value" + "}" + ", " + "$" + "{" + "3:metadata" + "}" + ")"), - boost: 10 - }, { - label: "uuid_schema", - type: "function", - detail: "flow\u002Ddsl\u002Dschema", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- uuid_schema(string $name, bool $nullable = false, Metadata $metadata = null) : UuidDefinition -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\uuid_schema(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:nullable" + "}" + ", " + "$" + "{" + "3:metadata" + "}" + ")"), - boost: 10 - }, { - label: "uuid_v4", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- uuid_v4() : Uuid -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\uuid_v4()"), - boost: 10 - }, { - label: "uuid_v7", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- uuid_v7(ScalarFunction|DateTimeInterface|null $value = null) : Uuid -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\uuid_v7(" + "$" + "{" + "1:value" + "}" + ")"), - boost: 10 - }, { - label: "vacuum", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- vacuum() : VacuumFinalStep -
-
- Create a VACUUM builder.
Example: vacuum()->table(\'users\')
Produces: VACUUM users -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\vacuum()"), - boost: 10 - }, { - label: "values_table", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- values_table(RowExpression $rows) : ValuesTable -
-
- Create a VALUES clause as a table reference.
Usage:
select()->from(
values_table(
row_expr([literal(1), literal(\'Alice\')]),
row_expr([literal(2), literal(\'Bob\')])
)->as(\'t\', [\'id\', \'name\'])
)
Generates: SELECT * FROM (VALUES (1, \'Alice\'), (2, \'Bob\')) AS t(id, name) -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\values_table(" + "$" + "{" + "1:rows" + "}" + ")"), - boost: 10 - }, { - label: "value_normalizer", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- value_normalizer() : ValueNormalizer -
-
- Create a ValueNormalizer for converting arbitrary PHP values to Telemetry attribute types.
The normalizer handles:
- null → \'null\' string
- scalars (string, int, float, bool) → unchanged
- DateTimeInterface → unchanged
- Throwable → unchanged
- arrays → recursively normalized
- objects with __toString() → string cast
- objects without __toString() → class name
- other types → get_debug_type() result
Example usage:
\`\`\`php
$normalizer = value_normalizer();
$normalized = $normalizer->normalize($value);
\`\`\` -
- ` - return div - }, - apply: snippet("\\Flow\\Bridge\\Monolog\\Telemetry\\DSL\\value_normalizer()"), - boost: 10 - }, { - label: "void_log_exporter", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- void_log_exporter() : VoidLogExporter -
-
- Create a VoidLogExporter.
No-op log exporter that discards all data.
Use this when telemetry export is disabled to minimize overhead. -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\void_log_exporter()"), - boost: 10 - }, { - label: "void_log_processor", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- void_log_processor() : VoidLogProcessor -
-
- Create a VoidLogProcessor.
No-op log processor that discards all data.
Use this when logging is disabled to minimize overhead. -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\void_log_processor()"), - boost: 10 - }, { - label: "void_metric_exporter", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- void_metric_exporter() : VoidMetricExporter -
-
- Create a VoidMetricExporter.
No-op metric exporter that discards all data.
Use this when telemetry export is disabled to minimize overhead. -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\void_metric_exporter()"), - boost: 10 - }, { - label: "void_metric_processor", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- void_metric_processor() : VoidMetricProcessor -
-
- Create a VoidMetricProcessor.
No-op metric processor that discards all data.
Use this when metrics collection is disabled to minimize overhead. -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\void_metric_processor()"), - boost: 10 - }, { - label: "void_span_exporter", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- void_span_exporter() : VoidSpanExporter -
-
- Create a VoidSpanExporter.
No-op span exporter that discards all data.
Use this when telemetry export is disabled to minimize overhead. -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\void_span_exporter()"), - boost: 10 - }, { - label: "void_span_processor", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- void_span_processor() : VoidSpanProcessor -
-
- Create a VoidSpanProcessor.
No-op span processor that discards all data.
Use this when tracing is disabled to minimize overhead. -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\void_span_processor()"), - boost: 10 - }, { - label: "w3c_baggage", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- w3c_baggage() : W3CBaggage -
-
- Create a W3CBaggage propagator.
Implements W3C Baggage specification for propagating application-specific
key-value pairs using the baggage header. -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\w3c_baggage()"), - boost: 10 - }, { - label: "w3c_trace_context", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- w3c_trace_context() : W3CTraceContext -
-
- Create a W3CTraceContext propagator.
Implements W3C Trace Context specification for propagating trace context
using traceparent and tracestate headers. -
- ` - return div - }, - apply: snippet("\\Flow\\Telemetry\\DSL\\w3c_trace_context()"), - boost: 10 - }, { - label: "when", - type: "function", - detail: "flow\u002Ddsl\u002Dscalar\u002Dfunctions", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- when(mixed $condition, mixed $then, mixed $else = null) : When -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\when(" + "$" + "{" + "1:condition" + "}" + ", " + "$" + "{" + "2:then" + "}" + ", " + "$" + "{" + "3:else" + "}" + ")"), - boost: 10 - }, { - label: "when", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- when(Expression $condition, Expression $result) : WhenClause -
-
- Create a WHEN clause for CASE expression. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\when(" + "$" + "{" + "1:condition" + "}" + ", " + "$" + "{" + "2:result" + "}" + ")"), - boost: 10 - }, { - label: "window", - type: "function", - detail: "flow\u002Ddsl\u002Ddata\u002Dframe", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- window() : Window -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\window()"), - boost: 10 - }, { - label: "window_def", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- window_def(string $name, array $partitionBy = [], array $orderBy = [], WindowFrame $frame = null) : WindowDefinition -
-
- Create a window definition for WINDOW clause.
@param string $name Window name
@param list $partitionBy PARTITION BY expressions
@param list $orderBy ORDER BY items
@param null|WindowFrame $frame Window frame specification -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\window_def(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:partitionBy" + "}" + ", " + "$" + "{" + "3:orderBy" + "}" + ", " + "$" + "{" + "4:frame" + "}" + ")"), - boost: 10 - }, { - label: "window_frame", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- window_frame(FrameMode $mode, FrameBound $start, FrameBound $end = null, FrameExclusion $exclusion = Flow\\PostgreSql\\QueryBuilder\\Clause\\FrameExclusion::...) : WindowFrame -
-
- Create a window frame specification. -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\window_frame(" + "$" + "{" + "1:mode" + "}" + ", " + "$" + "{" + "2:start" + "}" + ", " + "$" + "{" + "3:end" + "}" + ", " + "$" + "{" + "4:exclusion" + "}" + ")"), - boost: 10 - }, { - label: "window_func", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- window_func(string $name, array $args = [], array $partitionBy = [], array $orderBy = []) : WindowFunction -
-
- Create a window function.
@param string $name Function name
@param list $args Function arguments
@param list $partitionBy PARTITION BY expressions
@param list $orderBy ORDER BY items -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\window_func(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:args" + "}" + ", " + "$" + "{" + "3:partitionBy" + "}" + ", " + "$" + "{" + "4:orderBy" + "}" + ")"), - boost: 10 - }, { - label: "with", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- with(CTE $ctes) : WithBuilder -
-
- Create a WITH clause builder for CTEs.
Example: with(cte(\'users\', $subquery))->select(star())->from(table(\'users\'))
Example: with(cte(\'a\', $q1), cte(\'b\', $q2))->recursive()->select(...)->from(table(\'a\')) -
- ` - return div - }, - apply: snippet("\\Flow\\PostgreSql\\DSL\\with(" + "$" + "{" + "1:ctes" + "}" + ")"), - boost: 10 - }, { - label: "with_entry", - type: "function", - detail: "flow\u002Ddsl\u002Dhelpers", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- with_entry(string $name, ScalarFunction $function) : WithEntry -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\with_entry(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:function" + "}" + ")"), - boost: 10 - }, { - label: "write_with_retries", - type: "function", - detail: "flow\u002Ddsl\u002Dloaders", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- write_with_retries(Loader $loader, RetryStrategy $retry_strategy = Flow\\ETL\\Retry\\RetryStrategy\\AnyThrowable::..., DelayFactory $delay_factory = Flow\\ETL\\Retry\\DelayFactory\\Fixed\\FixedMilliseconds::..., Sleep $sleep = Flow\\ETL\\Time\\SystemSleep::...) : RetryLoader -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\write_with_retries(" + "$" + "{" + "1:loader" + "}" + ", " + "$" + "{" + "2:retry_strategy" + "}" + ", " + "$" + "{" + "3:delay_factory" + "}" + ", " + "$" + "{" + "4:sleep" + "}" + ")"), - boost: 10 - }, { - label: "xml_element_entry", - type: "function", - detail: "flow\u002Ddsl\u002Dentries", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- xml_element_entry(string $name, DOMElement|string|null $value, Metadata $metadata = null) : Entry -
-
- @return Entry -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\xml_element_entry(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:value" + "}" + ", " + "$" + "{" + "3:metadata" + "}" + ")"), - boost: 10 - }, { - label: "xml_element_schema", - type: "function", - detail: "flow\u002Ddsl\u002Dschema", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- xml_element_schema(string $name, bool $nullable = false, Metadata $metadata = null) : XMLElementDefinition -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\xml_element_schema(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:nullable" + "}" + ", " + "$" + "{" + "3:metadata" + "}" + ")"), - boost: 10 - }, { - label: "xml_entry", - type: "function", - detail: "flow\u002Ddsl\u002Dentries", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- xml_entry(string $name, DOMDocument|string|null $value, Metadata $metadata = null) : Entry -
-
- @return Entry -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\xml_entry(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:value" + "}" + ", " + "$" + "{" + "3:metadata" + "}" + ")"), - boost: 10 - }, { - label: "xml_schema", - type: "function", - detail: "flow\u002Ddsl\u002Dschema", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- xml_schema(string $name, bool $nullable = false, Metadata $metadata = null) : XMLDefinition -
- ` - return div - }, - apply: snippet("\\Flow\\ETL\\DSL\\xml_schema(" + "$" + "{" + "1:name" + "}" + ", " + "$" + "{" + "2:nullable" + "}" + ", " + "$" + "{" + "3:metadata" + "}" + ")"), - boost: 10 - } ] - -/** - * DSL function completion source for CodeMirror - * @param {CompletionContext} context - * @returns {CompletionResult|null} - */ -export function dslCompletions(context) { - // Get text before cursor to check context - const maxLookback = 100 - const docText = context.state.doc.toString() - const startPos = Math.max(0, context.pos - maxLookback) - const textBefore = docText.slice(startPos, context.pos) - - // Don't show DSL functions after -> (method chaining context) - // DSL functions are standalone, not methods - if (new RegExp('->\\w*$').test(textBefore)) { - return null - } - - // Match word being typed - const word = context.matchBefore(/\w+/) - - // If no word and not explicit, don't show completions - if (!word && !context.explicit) { - return null - } - - // Filter functions based on what's being typed - const prefix = word ? word.text.toLowerCase() : '' - const options = dslFunctions.filter(func => - !prefix || func.label.toLowerCase().startsWith(prefix) - ) - - return { - from: word ? word.from : context.pos, - options: options, - validFor: new RegExp('^\\w*$') // Reuse while typing word characters - } -} diff --git a/web/landing/tests/Flow/Website/Tests/Fixtures/Completers/flow.js b/web/landing/tests/Flow/Website/Tests/Fixtures/Completers/flow.js deleted file mode 100644 index 1c8793bb3b..0000000000 --- a/web/landing/tests/Flow/Website/Tests/Fixtures/Completers/flow.js +++ /dev/null @@ -1,188 +0,0 @@ -/** - * CodeMirror Completer for Flow PHP Flow Methods - * - * Flow methods: 5 - * Flow-returning functions: 2 - * - * This completer triggers after Flow-returning functions: df()->, data_frame()-> - */ - -import { CompletionContext, snippet } from "@codemirror/autocomplete" - -// Map of Flow-returning functions from dsl.json (df, data_frame) -const flowFunctions = [ - "df", "data_frame"] - -// Flow methods -const flowMethods = [ - { - label: "setUp", - type: "method", - detail: "Flow\\\\ETL\\\\Flow", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- setUp(ConfigBuilder|Config $config) : self -
- ` - return div - }, - apply: snippet("setUp(" + "$" + "{" + "1:config" + "}" + ")"), - boost: 10 - }, { - label: "extract", - type: "method", - detail: "Flow\\\\ETL\\\\Flow", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- extract(Extractor $extractor) : DataFrame -
- ` - return div - }, - apply: snippet("extract(" + "$" + "{" + "1:extractor" + "}" + ")"), - boost: 10 - }, { - label: "from", - type: "method", - detail: "Flow\\\\ETL\\\\Flow", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- from(Extractor $extractor) : DataFrame -
- ` - return div - }, - apply: snippet("from(" + "$" + "{" + "1:extractor" + "}" + ")"), - boost: 10 - }, { - label: "process", - type: "method", - detail: "Flow\\\\ETL\\\\Flow", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- process(Rows $rows) : DataFrame -
- ` - return div - }, - apply: snippet("process(" + "$" + "{" + "1:rows" + "}" + ")"), - boost: 10 - }, { - label: "read", - type: "method", - detail: "Flow\\\\ETL\\\\Flow", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- read(Extractor $extractor) : DataFrame -
-
- Alias for Flow::extract function. -
- ` - return div - }, - apply: snippet("read(" + "$" + "{" + "1:extractor" + "}" + ")"), - boost: 10 - } ] - -/** - * Flow method completion source for CodeMirror - * @param {CompletionContext} context - * @returns {CompletionResult|null} - */ -export function flowCompletions(context) { - // Get text before cursor (potentially across multiple lines) - // Look back up to 2000 characters to find the pattern - const maxLookback = 2000 - const docText = context.state.doc.toString() - const startPos = Math.max(0, context.pos - maxLookback) - const textBefore = docText.slice(startPos, context.pos) - - // Check if we're directly after -> (method chaining context) - if (!new RegExp('->\\w*$').test(textBefore)) { - return null - } - - // Check if we're after a Flow-returning function: df( or data_frame( - // Find all matching functions and check if any are at top level with -> - const flowFuncPattern = new RegExp('\\b(' + flowFunctions.join('|') + ')\\s*\\(', 'g') - let matches = [] - let match - - while ((match = flowFuncPattern.exec(textBefore)) !== null) { - matches.push({ name: match[1], index: match.index, endOfName: match.index + match[0].length }) - } - - // Walk backwards from cursor tracking parenthesis depth - let depth = 0 - let i = textBefore.length - 1 - - // Skip back past the -> and any word being typed - while (i >= 0 && /[\w>-]/.test(textBefore[i])) { - i-- - } - - // Now count parentheses going backwards - while (i >= 0) { - if (textBefore[i] === ')') depth++ - else if (textBefore[i] === '(') { - depth-- - // If we're back to depth 0, check if this ( belongs to a Flow function - if (depth === 0) { - // Look backwards to find the function name - let funcEnd = i - while (funcEnd > 0 && /\s/.test(textBefore[funcEnd - 1])) { - funcEnd-- - } - let funcStart = funcEnd - while (funcStart > 0 && /\w/.test(textBefore[funcStart - 1])) { - funcStart-- - } - const funcName = textBefore.slice(funcStart, funcEnd) - - // Check if this is a Flow-returning function - if (flowFunctions.includes(funcName)) { - // This is it! We're directly after this function call - return continueWithCompletions() - } - // If not, we're inside some other call - return null - } - } - i-- - } - - return null - - function continueWithCompletions() { - // Match word being typed (method name after ->) - const word = context.matchBefore(/\w*/) - - // If no word and not explicit, don't show completions - if (!word && !context.explicit) { - return null - } - - // Filter methods based on what's being typed - const prefix = word ? word.text.toLowerCase() : '' - const options = flowMethods.filter(method => - !prefix || method.label.toLowerCase().startsWith(prefix) - ) - - return { - from: word ? word.from : context.pos, - options: options, - validFor: new RegExp('^\\w*$') // Reuse while typing word characters - } - } -} diff --git a/web/landing/tests/Flow/Website/Tests/Fixtures/Completers/scalarfunctionchain.js b/web/landing/tests/Flow/Website/Tests/Fixtures/Completers/scalarfunctionchain.js deleted file mode 100644 index 11e3e46b35..0000000000 --- a/web/landing/tests/Flow/Website/Tests/Fixtures/Completers/scalarfunctionchain.js +++ /dev/null @@ -1,2065 +0,0 @@ -/** - * CodeMirror Completer for Flow PHP ScalarFunctionChain Methods - * - * ScalarFunctionChain methods: 124 - * ScalarFunctionChain-returning functions: 53 - * - * This completer triggers after ScalarFunctionChain-returning DSL functions - */ - -import { CompletionContext, snippet } from "@codemirror/autocomplete" - -// DSL functions that return ScalarFunctionChain (have scalar_function_chain: true) -const scalarFunctionChainFunctions = [ - "col", "entry", "ref", "optional", "lit", "exists", "when", "array_get", "array_get_collection", "array_get_collection_first", "array_exists", "array_merge", "array_merge_collection", "array_key_rename", "array_keys_style_convert", "array_sort", "array_reverse", "now", "between", "to_date_time", "to_date", "date_time_format", "split", "combine", "concat", "concat_ws", "hash", "cast", "coalesce", "call", "array_unpack", "array_expand", "size", "uuid_v4", "uuid_v7", "ulid", "lower", "capitalize", "upper", "not", "to_timezone", "regex_replace", "regex_match_all", "regex_match", "regex", "regex_all", "sprintf", "sanitize", "round", "number_format", "greatest", "least", "match_cases"] - -// ScalarFunctionChain methods -const scalarFunctionChainMethods = [ - { - label: "and", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- and(ScalarFunction $function) : All -
- ` - return div - }, - apply: snippet("and(" + "$" + "{" + "1:function" + "}" + ")"), - boost: 10 - }, { - label: "andNot", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- andNot(ScalarFunction $function) : All -
- ` - return div - }, - apply: snippet("andNot(" + "$" + "{" + "1:function" + "}" + ")"), - boost: 10 - }, { - label: "append", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- append(ScalarFunction|string $suffix) : Append -
- ` - return div - }, - apply: snippet("append(" + "$" + "{" + "1:suffix" + "}" + ")"), - boost: 10 - }, { - label: "arrayFilter", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- arrayFilter(mixed $value) : ArrayFilter -
-
- Filters an array by removing all elements that matches passed value.
Applicable to all data structures that can be converted to an array:
- json
- list
- map
- structure. -
- ` - return div - }, - apply: snippet("arrayFilter(" + "$" + "{" + "1:value" + "}" + ")"), - boost: 10 - }, { - label: "arrayGet", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- arrayGet(ScalarFunction|string $path) : ArrayGet -
- ` - return div - }, - apply: snippet("arrayGet(" + "$" + "{" + "1:path" + "}" + ")"), - boost: 10 - }, { - label: "arrayGetCollection", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- arrayGetCollection(ScalarFunction|array $keys) : ArrayGetCollection -
-
- @param array $keys -
- ` - return div - }, - apply: snippet("arrayGetCollection(" + "$" + "{" + "1:keys" + "}" + ")"), - boost: 10 - }, { - label: "arrayGetCollectionFirst", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- arrayGetCollectionFirst(string $keys) : ArrayGetCollection -
- ` - return div - }, - apply: snippet("arrayGetCollectionFirst(" + "$" + "{" + "1:keys" + "}" + ")"), - boost: 10 - }, { - label: "arrayKeep", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- arrayKeep(mixed $value) : ArrayKeep -
-
- Filters an array by keeping only elements that matches passed value.
Applicable to all data structures that can be converted to an array:
- json
- list
- map
- structure. -
- ` - return div - }, - apply: snippet("arrayKeep(" + "$" + "{" + "1:value" + "}" + ")"), - boost: 10 - }, { - label: "arrayKeys", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- arrayKeys() : ArrayKeys -
-
- Returns all keys from an array, ignoring the values.
Applicable to all data structures that can be converted to an array:
- json
- list
- map
- structure. -
- ` - return div - }, - apply: snippet("arrayKeys()"), - boost: 10 - }, { - label: "arrayMerge", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- arrayMerge(ScalarFunction|array $ref) : ArrayMerge -
-
- @param array $ref -
- ` - return div - }, - apply: snippet("arrayMerge(" + "$" + "{" + "1:ref" + "}" + ")"), - boost: 10 - }, { - label: "arrayMergeCollection", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- arrayMergeCollection() : ArrayMergeCollection -
- ` - return div - }, - apply: snippet("arrayMergeCollection()"), - boost: 10 - }, { - label: "arrayPathExists", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- arrayPathExists(ScalarFunction|string $path) : ArrayPathExists -
- ` - return div - }, - apply: snippet("arrayPathExists(" + "$" + "{" + "1:path" + "}" + ")"), - boost: 10 - }, { - label: "arrayReverse", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- arrayReverse(ScalarFunction|bool $preserveKeys = false) : ArrayReverse -
- ` - return div - }, - apply: snippet("arrayReverse(" + "$" + "{" + "1:preserveKeys" + "}" + ")"), - boost: 10 - }, { - label: "arraySort", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- arraySort(ScalarFunction|Sort|null $sortFunction = null, ScalarFunction|int|null $flags = null, ScalarFunction|bool $recursive = true) : ArraySort -
- ` - return div - }, - apply: snippet("arraySort(" + "$" + "{" + "1:sortFunction" + "}" + ", " + "$" + "{" + "2:flags" + "}" + ", " + "$" + "{" + "3:recursive" + "}" + ")"), - boost: 10 - }, { - label: "arrayValues", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- arrayValues() : ArrayValues -
-
- Returns all values from an array, ignoring the keys.
Applicable to all data structures that can be converted to an array:
- json
- list
- map
- structure. -
- ` - return div - }, - apply: snippet("arrayValues()"), - boost: 10 - }, { - label: "ascii", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- ascii() : Ascii -
- ` - return div - }, - apply: snippet("ascii()"), - boost: 10 - }, { - label: "between", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- between(mixed $lowerBoundRef, mixed $upperBoundRef, ScalarFunction|Boundary $boundary = Flow\\ETL\\Function\\Between\\Boundary::...) : Between -
-
- @param mixed|ScalarFunction $lowerBoundRef
@param mixed|ScalarFunction $upperBoundRef
@param Boundary|ScalarFunction $boundary -
- ` - return div - }, - apply: snippet("between(" + "$" + "{" + "1:lowerBoundRef" + "}" + ", " + "$" + "{" + "2:upperBoundRef" + "}" + ", " + "$" + "{" + "3:boundary" + "}" + ")"), - boost: 10 - }, { - label: "binaryLength", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- binaryLength() : BinaryLength -
- ` - return div - }, - apply: snippet("binaryLength()"), - boost: 10 - }, { - label: "call", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- call(ScalarFunction|callable $callable, array $arguments = [], string|int $refAlias = 0, Type $returnType = null) : CallUserFunc -
-
- @param array $arguments
@param Type $returnType -
- ` - return div - }, - apply: snippet("call(" + "$" + "{" + "1:callable" + "}" + ", " + "$" + "{" + "2:arguments" + "}" + ", " + "$" + "{" + "3:refAlias" + "}" + ", " + "$" + "{" + "4:returnType" + "}" + ")"), - boost: 10 - }, { - label: "capitalize", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- capitalize() : Capitalize -
- ` - return div - }, - apply: snippet("capitalize()"), - boost: 10 - }, { - label: "cast", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- cast(Type|string $type) : Cast -
-
- @param string|Type $type -
- ` - return div - }, - apply: snippet("cast(" + "$" + "{" + "1:type" + "}" + ")"), - boost: 10 - }, { - label: "chunk", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- chunk(ScalarFunction|int $size) : Chunk -
- ` - return div - }, - apply: snippet("chunk(" + "$" + "{" + "1:size" + "}" + ")"), - boost: 10 - }, { - label: "coalesce", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- coalesce(ScalarFunction $params) : Coalesce -
- ` - return div - }, - apply: snippet("coalesce(" + "$" + "{" + "1:params" + "}" + ")"), - boost: 10 - }, { - label: "codePointLength", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- codePointLength() : CodePointLength -
- ` - return div - }, - apply: snippet("codePointLength()"), - boost: 10 - }, { - label: "collapseWhitespace", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- collapseWhitespace() : CollapseWhitespace -
- ` - return div - }, - apply: snippet("collapseWhitespace()"), - boost: 10 - }, { - label: "concat", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- concat(ScalarFunction|string $params) : Concat -
- ` - return div - }, - apply: snippet("concat(" + "$" + "{" + "1:params" + "}" + ")"), - boost: 10 - }, { - label: "concatWithSeparator", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- concatWithSeparator(ScalarFunction|string $separator, ScalarFunction|string $params) : ConcatWithSeparator -
- ` - return div - }, - apply: snippet("concatWithSeparator(" + "$" + "{" + "1:separator" + "}" + ", " + "$" + "{" + "2:params" + "}" + ")"), - boost: 10 - }, { - label: "contains", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- contains(ScalarFunction|string $needle) : Contains -
- ` - return div - }, - apply: snippet("contains(" + "$" + "{" + "1:needle" + "}" + ")"), - boost: 10 - }, { - label: "dateFormat", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- dateFormat(string $format = 'Y-m-d') : DateTimeFormat -
- ` - return div - }, - apply: snippet("dateFormat(" + "$" + "{" + "1:format" + "}" + ")"), - boost: 10 - }, { - label: "dateTimeFormat", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- dateTimeFormat(string $format = 'Y-m-d H:i:s') : DateTimeFormat -
- ` - return div - }, - apply: snippet("dateTimeFormat(" + "$" + "{" + "1:format" + "}" + ")"), - boost: 10 - }, { - label: "divide", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- divide(ScalarFunction|string|int|float $value, ScalarFunction|int|null $scale = null, ScalarFunction|Rounding|null $rounding = null) : Divide -
- ` - return div - }, - apply: snippet("divide(" + "$" + "{" + "1:value" + "}" + ", " + "$" + "{" + "2:scale" + "}" + ", " + "$" + "{" + "3:rounding" + "}" + ")"), - boost: 10 - }, { - label: "domElementAttribute", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- domElementAttribute(ScalarFunction|string $attribute) : DOMElementAttributeValue -
-
- @deprecated Use domElementAttributeValue instead -
- ` - return div - }, - apply: snippet("domElementAttribute(" + "$" + "{" + "1:attribute" + "}" + ")"), - boost: 10 - }, { - label: "domElementAttributesCount", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- domElementAttributesCount() : DOMElementAttributesCount -
- ` - return div - }, - apply: snippet("domElementAttributesCount()"), - boost: 10 - }, { - label: "domElementAttributeValue", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- domElementAttributeValue(ScalarFunction|string $attribute) : DOMElementAttributeValue -
- ` - return div - }, - apply: snippet("domElementAttributeValue(" + "$" + "{" + "1:attribute" + "}" + ")"), - boost: 10 - }, { - label: "domElementNextSibling", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- domElementNextSibling(bool $allowOnlyElement = false) : DOMElementNextSibling -
- ` - return div - }, - apply: snippet("domElementNextSibling(" + "$" + "{" + "1:allowOnlyElement" + "}" + ")"), - boost: 10 - }, { - label: "domElementParent", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- domElementParent() : DOMElementParent -
- ` - return div - }, - apply: snippet("domElementParent()"), - boost: 10 - }, { - label: "domElementPreviousSibling", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- domElementPreviousSibling(bool $allowOnlyElement = false) : DOMElementPreviousSibling -
- ` - return div - }, - apply: snippet("domElementPreviousSibling(" + "$" + "{" + "1:allowOnlyElement" + "}" + ")"), - boost: 10 - }, { - label: "domElementValue", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- domElementValue() : DOMElementValue -
- ` - return div - }, - apply: snippet("domElementValue()"), - boost: 10 - }, { - label: "endsWith", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- endsWith(ScalarFunction|string $needle) : EndsWith -
- ` - return div - }, - apply: snippet("endsWith(" + "$" + "{" + "1:needle" + "}" + ")"), - boost: 10 - }, { - label: "ensureEnd", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- ensureEnd(ScalarFunction|string $suffix) : EnsureEnd -
- ` - return div - }, - apply: snippet("ensureEnd(" + "$" + "{" + "1:suffix" + "}" + ")"), - boost: 10 - }, { - label: "ensureStart", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- ensureStart(ScalarFunction|string $prefix) : EnsureStart -
- ` - return div - }, - apply: snippet("ensureStart(" + "$" + "{" + "1:prefix" + "}" + ")"), - boost: 10 - }, { - label: "equals", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- equals(mixed $ref) : Equals -
- ` - return div - }, - apply: snippet("equals(" + "$" + "{" + "1:ref" + "}" + ")"), - boost: 10 - }, { - label: "exists", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- exists() : Exists -
- ` - return div - }, - apply: snippet("exists()"), - boost: 10 - }, { - label: "expand", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- expand(ArrayExpand $expand = Flow\\ETL\\Function\\ArrayExpand\\ArrayExpand::...) : ArrayExpand -
-
- Expands each value into entry, if there are more than one value, multiple rows will be created.
Array keys are ignored, only values are used to create new rows.
Before:
+--+-------------------+
|id| array|
+--+-------------------+
| 1|{\"a\":1,\"b\":2,\"c\":3}|
+--+-------------------+
After:
+--+--------+
|id|expanded|
+--+--------+
| 1| 1|
| 1| 2|
| 1| 3|
+--+--------+ -
- ` - return div - }, - apply: snippet("expand(" + "$" + "{" + "1:expand" + "}" + ")"), - boost: 10 - }, { - label: "greaterThan", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- greaterThan(mixed $ref) : GreaterThan -
- ` - return div - }, - apply: snippet("greaterThan(" + "$" + "{" + "1:ref" + "}" + ")"), - boost: 10 - }, { - label: "greaterThanEqual", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- greaterThanEqual(mixed $ref) : GreaterThanEqual -
- ` - return div - }, - apply: snippet("greaterThanEqual(" + "$" + "{" + "1:ref" + "}" + ")"), - boost: 10 - }, { - label: "hash", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- hash(Algorithm $algorithm = Flow\\ETL\\Hash\\NativePHPHash::...) : Hash -
- ` - return div - }, - apply: snippet("hash(" + "$" + "{" + "1:algorithm" + "}" + ")"), - boost: 10 - }, { - label: "htmlQuerySelector", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- htmlQuerySelector(ScalarFunction|string $path) : HTMLQuerySelector -
- ` - return div - }, - apply: snippet("htmlQuerySelector(" + "$" + "{" + "1:path" + "}" + ")"), - boost: 10 - }, { - label: "htmlQuerySelectorAll", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- htmlQuerySelectorAll(ScalarFunction|string $path) : HTMLQuerySelectorAll -
- ` - return div - }, - apply: snippet("htmlQuerySelectorAll(" + "$" + "{" + "1:path" + "}" + ")"), - boost: 10 - }, { - label: "indexOf", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- indexOf(ScalarFunction|string $needle, ScalarFunction|bool $ignoreCase = false, ScalarFunction|int $offset = 0) : IndexOf -
-
- Returns the index of given $needle in string. -
- ` - return div - }, - apply: snippet("indexOf(" + "$" + "{" + "1:needle" + "}" + ", " + "$" + "{" + "2:ignoreCase" + "}" + ", " + "$" + "{" + "3:offset" + "}" + ")"), - boost: 10 - }, { - label: "indexOfLast", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- indexOfLast(ScalarFunction|string $needle, ScalarFunction|bool $ignoreCase = false, ScalarFunction|int $offset = 0) : IndexOfLast -
-
- Returns the last index of given $needle in string. -
- ` - return div - }, - apply: snippet("indexOfLast(" + "$" + "{" + "1:needle" + "}" + ", " + "$" + "{" + "2:ignoreCase" + "}" + ", " + "$" + "{" + "3:offset" + "}" + ")"), - boost: 10 - }, { - label: "isEmpty", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- isEmpty() : IsEmpty -
- ` - return div - }, - apply: snippet("isEmpty()"), - boost: 10 - }, { - label: "isEven", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- isEven() : Equals -
- ` - return div - }, - apply: snippet("isEven()"), - boost: 10 - }, { - label: "isFalse", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- isFalse() : Same -
- ` - return div - }, - apply: snippet("isFalse()"), - boost: 10 - }, { - label: "isIn", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- isIn(ScalarFunction|array $haystack) : IsIn -
-
- @param array $haystack -
- ` - return div - }, - apply: snippet("isIn(" + "$" + "{" + "1:haystack" + "}" + ")"), - boost: 10 - }, { - label: "isNotNull", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- isNotNull() : IsNotNull -
- ` - return div - }, - apply: snippet("isNotNull()"), - boost: 10 - }, { - label: "isNotNumeric", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- isNotNumeric() : IsNotNumeric -
- ` - return div - }, - apply: snippet("isNotNumeric()"), - boost: 10 - }, { - label: "isNull", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- isNull() : IsNull -
- ` - return div - }, - apply: snippet("isNull()"), - boost: 10 - }, { - label: "isNumeric", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- isNumeric() : IsNumeric -
- ` - return div - }, - apply: snippet("isNumeric()"), - boost: 10 - }, { - label: "isOdd", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- isOdd() : NotEquals -
- ` - return div - }, - apply: snippet("isOdd()"), - boost: 10 - }, { - label: "isTrue", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- isTrue() : Same -
- ` - return div - }, - apply: snippet("isTrue()"), - boost: 10 - }, { - label: "isType", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- isType(Type|string $types) : IsType -
-
- @param string|Type $types -
- ` - return div - }, - apply: snippet("isType(" + "$" + "{" + "1:types" + "}" + ")"), - boost: 10 - }, { - label: "isUtf8", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- isUtf8() : IsUtf8 -
-
- Check string is utf8 and returns true or false. -
- ` - return div - }, - apply: snippet("isUtf8()"), - boost: 10 - }, { - label: "jsonDecode", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- jsonDecode(ScalarFunction|int $flags = 4194304) : JsonDecode -
- ` - return div - }, - apply: snippet("jsonDecode(" + "$" + "{" + "1:flags" + "}" + ")"), - boost: 10 - }, { - label: "jsonEncode", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- jsonEncode(ScalarFunction|int $flags = 4194304) : JsonEncode -
- ` - return div - }, - apply: snippet("jsonEncode(" + "$" + "{" + "1:flags" + "}" + ")"), - boost: 10 - }, { - label: "lessThan", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- lessThan(mixed $ref) : LessThan -
- ` - return div - }, - apply: snippet("lessThan(" + "$" + "{" + "1:ref" + "}" + ")"), - boost: 10 - }, { - label: "lessThanEqual", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- lessThanEqual(ScalarFunction $ref) : LessThanEqual -
- ` - return div - }, - apply: snippet("lessThanEqual(" + "$" + "{" + "1:ref" + "}" + ")"), - boost: 10 - }, { - label: "literal", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- literal(mixed $value) : Literal -
- ` - return div - }, - apply: snippet("literal(" + "$" + "{" + "1:value" + "}" + ")"), - boost: 10 - }, { - label: "lower", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- lower() : ToLower -
- ` - return div - }, - apply: snippet("lower()"), - boost: 10 - }, { - label: "minus", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- minus(ScalarFunction|int|float $ref) : Minus -
- ` - return div - }, - apply: snippet("minus(" + "$" + "{" + "1:ref" + "}" + ")"), - boost: 10 - }, { - label: "mod", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- mod(ScalarFunction|int $value) : Mod -
- ` - return div - }, - apply: snippet("mod(" + "$" + "{" + "1:value" + "}" + ")"), - boost: 10 - }, { - label: "modifyDateTime", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- modifyDateTime(ScalarFunction|string $modifier) : ModifyDateTime -
- ` - return div - }, - apply: snippet("modifyDateTime(" + "$" + "{" + "1:modifier" + "}" + ")"), - boost: 10 - }, { - label: "multiply", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- multiply(ScalarFunction|int|float $value) : Multiply -
- ` - return div - }, - apply: snippet("multiply(" + "$" + "{" + "1:value" + "}" + ")"), - boost: 10 - }, { - label: "notEquals", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- notEquals(mixed $value) : NotEquals -
- ` - return div - }, - apply: snippet("notEquals(" + "$" + "{" + "1:value" + "}" + ")"), - boost: 10 - }, { - label: "notSame", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- notSame(mixed $value) : NotSame -
- ` - return div - }, - apply: snippet("notSame(" + "$" + "{" + "1:value" + "}" + ")"), - boost: 10 - }, { - label: "numberFormat", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- numberFormat(ScalarFunction|int $decimals = 2, ScalarFunction|string $decimalSeparator = '.', ScalarFunction|string $thousandsSeparator = ',') : NumberFormat -
- ` - return div - }, - apply: snippet("numberFormat(" + "$" + "{" + "1:decimals" + "}" + ", " + "$" + "{" + "2:decimalSeparator" + "}" + ", " + "$" + "{" + "3:thousandsSeparator" + "}" + ")"), - boost: 10 - }, { - label: "onEach", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- onEach(ScalarFunction $function, ScalarFunction|bool $preserveKeys = true) : OnEach -
-
- Execute a scalar function on each element of an array/list/map/structure entry.
In order to use this function, you need to provide a reference to the \"element\" that will be used in the function.
Example: $df->withEntry(\'array\', ref(\'array\')->onEach(ref(\'element\')->cast(type_string()))) -
- ` - return div - }, - apply: snippet("onEach(" + "$" + "{" + "1:function" + "}" + ", " + "$" + "{" + "2:preserveKeys" + "}" + ")"), - boost: 10 - }, { - label: "or", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- or(ScalarFunction $function) : Any -
- ` - return div - }, - apply: snippet("or(" + "$" + "{" + "1:function" + "}" + ")"), - boost: 10 - }, { - label: "orNot", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- orNot(ScalarFunction $function) : Any -
- ` - return div - }, - apply: snippet("orNot(" + "$" + "{" + "1:function" + "}" + ")"), - boost: 10 - }, { - label: "plus", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- plus(ScalarFunction|int|float $ref) : Plus -
- ` - return div - }, - apply: snippet("plus(" + "$" + "{" + "1:ref" + "}" + ")"), - boost: 10 - }, { - label: "power", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- power(ScalarFunction|int $value) : Power -
- ` - return div - }, - apply: snippet("power(" + "$" + "{" + "1:value" + "}" + ")"), - boost: 10 - }, { - label: "prepend", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- prepend(ScalarFunction|string $prefix) : Prepend -
- ` - return div - }, - apply: snippet("prepend(" + "$" + "{" + "1:prefix" + "}" + ")"), - boost: 10 - }, { - label: "regex", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- regex(ScalarFunction|string $pattern, ScalarFunction|int $flags = 0, ScalarFunction|int $offset = 0) : Regex -
- ` - return div - }, - apply: snippet("regex(" + "$" + "{" + "1:pattern" + "}" + ", " + "$" + "{" + "2:flags" + "}" + ", " + "$" + "{" + "3:offset" + "}" + ")"), - boost: 10 - }, { - label: "regexAll", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- regexAll(ScalarFunction|string $pattern, ScalarFunction|int $flags = 0, ScalarFunction|int $offset = 0) : RegexAll -
- ` - return div - }, - apply: snippet("regexAll(" + "$" + "{" + "1:pattern" + "}" + ", " + "$" + "{" + "2:flags" + "}" + ", " + "$" + "{" + "3:offset" + "}" + ")"), - boost: 10 - }, { - label: "regexMatch", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- regexMatch(ScalarFunction|string $pattern, ScalarFunction|int $flags = 0, ScalarFunction|int $offset = 0) : RegexMatch -
- ` - return div - }, - apply: snippet("regexMatch(" + "$" + "{" + "1:pattern" + "}" + ", " + "$" + "{" + "2:flags" + "}" + ", " + "$" + "{" + "3:offset" + "}" + ")"), - boost: 10 - }, { - label: "regexMatchAll", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- regexMatchAll(ScalarFunction|string $pattern, ScalarFunction|int $flags = 0, ScalarFunction|int $offset = 0) : RegexMatchAll -
- ` - return div - }, - apply: snippet("regexMatchAll(" + "$" + "{" + "1:pattern" + "}" + ", " + "$" + "{" + "2:flags" + "}" + ", " + "$" + "{" + "3:offset" + "}" + ")"), - boost: 10 - }, { - label: "regexReplace", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- regexReplace(ScalarFunction|string $pattern, ScalarFunction|string $replacement, ScalarFunction|int|null $limit = null) : RegexReplace -
- ` - return div - }, - apply: snippet("regexReplace(" + "$" + "{" + "1:pattern" + "}" + ", " + "$" + "{" + "2:replacement" + "}" + ", " + "$" + "{" + "3:limit" + "}" + ")"), - boost: 10 - }, { - label: "repeat", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- repeat(ScalarFunction|int $times) : Repeat -
- ` - return div - }, - apply: snippet("repeat(" + "$" + "{" + "1:times" + "}" + ")"), - boost: 10 - }, { - label: "reverse", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- reverse() : Reverse -
- ` - return div - }, - apply: snippet("reverse()"), - boost: 10 - }, { - label: "round", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- round(ScalarFunction|int $precision = 2, ScalarFunction|int $mode = 1) : Round -
- ` - return div - }, - apply: snippet("round(" + "$" + "{" + "1:precision" + "}" + ", " + "$" + "{" + "2:mode" + "}" + ")"), - boost: 10 - }, { - label: "same", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- same(mixed $value) : Same -
- ` - return div - }, - apply: snippet("same(" + "$" + "{" + "1:value" + "}" + ")"), - boost: 10 - }, { - label: "sanitize", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- sanitize(ScalarFunction|string $placeholder = '*', ScalarFunction|int|null $skipCharacters = null) : Sanitize -
- ` - return div - }, - apply: snippet("sanitize(" + "$" + "{" + "1:placeholder" + "}" + ", " + "$" + "{" + "2:skipCharacters" + "}" + ")"), - boost: 10 - }, { - label: "size", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- size() : Size -
- ` - return div - }, - apply: snippet("size()"), - boost: 10 - }, { - label: "slug", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- slug(ScalarFunction|string $separator = '-', ScalarFunction|string|null $locale = null, ScalarFunction|array|null $symbolsMap = null) : Slug -
-
- @param null|array $symbolsMap -
- ` - return div - }, - apply: snippet("slug(" + "$" + "{" + "1:separator" + "}" + ", " + "$" + "{" + "2:locale" + "}" + ", " + "$" + "{" + "3:symbolsMap" + "}" + ")"), - boost: 10 - }, { - label: "split", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- split(ScalarFunction|string $separator, ScalarFunction|int $limit = 9223372036854775807) : Split -
- ` - return div - }, - apply: snippet("split(" + "$" + "{" + "1:separator" + "}" + ", " + "$" + "{" + "2:limit" + "}" + ")"), - boost: 10 - }, { - label: "sprintf", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- sprintf(ScalarFunction|string|int|float|null $params) : Sprintf -
- ` - return div - }, - apply: snippet("sprintf(" + "$" + "{" + "1:params" + "}" + ")"), - boost: 10 - }, { - label: "startsWith", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- startsWith(ScalarFunction|string $needle) : StartsWith -
- ` - return div - }, - apply: snippet("startsWith(" + "$" + "{" + "1:needle" + "}" + ")"), - boost: 10 - }, { - label: "stringAfter", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- stringAfter(ScalarFunction|string $needle, ScalarFunction|bool $includeNeedle = false) : StringAfter -
-
- Returns the contents found after the first occurrence of the given string. -
- ` - return div - }, - apply: snippet("stringAfter(" + "$" + "{" + "1:needle" + "}" + ", " + "$" + "{" + "2:includeNeedle" + "}" + ")"), - boost: 10 - }, { - label: "stringAfterLast", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- stringAfterLast(ScalarFunction|string $needle, ScalarFunction|bool $includeNeedle = false) : StringAfterLast -
-
- Returns the contents found after the last occurrence of the given string. -
- ` - return div - }, - apply: snippet("stringAfterLast(" + "$" + "{" + "1:needle" + "}" + ", " + "$" + "{" + "2:includeNeedle" + "}" + ")"), - boost: 10 - }, { - label: "stringBefore", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- stringBefore(ScalarFunction|string $needle, ScalarFunction|bool $includeNeedle = false) : StringBefore -
-
- Returns the contents found before the first occurrence of the given string. -
- ` - return div - }, - apply: snippet("stringBefore(" + "$" + "{" + "1:needle" + "}" + ", " + "$" + "{" + "2:includeNeedle" + "}" + ")"), - boost: 10 - }, { - label: "stringBeforeLast", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- stringBeforeLast(ScalarFunction|string $needle, ScalarFunction|bool $includeNeedle = false) : StringBeforeLast -
-
- Returns the contents found before the last occurrence of the given string. -
- ` - return div - }, - apply: snippet("stringBeforeLast(" + "$" + "{" + "1:needle" + "}" + ", " + "$" + "{" + "2:includeNeedle" + "}" + ")"), - boost: 10 - }, { - label: "stringContainsAny", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- stringContainsAny(ScalarFunction|array $needles) : StringContainsAny -
-
- @param array|ScalarFunction $needles -
- ` - return div - }, - apply: snippet("stringContainsAny(" + "$" + "{" + "1:needles" + "}" + ")"), - boost: 10 - }, { - label: "stringEqualsTo", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- stringEqualsTo(ScalarFunction|string $string) : StringEqualsTo -
- ` - return div - }, - apply: snippet("stringEqualsTo(" + "$" + "{" + "1:string" + "}" + ")"), - boost: 10 - }, { - label: "stringFold", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- stringFold() : StringFold -
-
- Returns a string that you can use in case-insensitive comparisons. -
- ` - return div - }, - apply: snippet("stringFold()"), - boost: 10 - }, { - label: "stringMatch", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- stringMatch(ScalarFunction|string $pattern) : StringMatch -
- ` - return div - }, - apply: snippet("stringMatch(" + "$" + "{" + "1:pattern" + "}" + ")"), - boost: 10 - }, { - label: "stringMatchAll", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- stringMatchAll(ScalarFunction|string $pattern) : StringMatchAll -
- ` - return div - }, - apply: snippet("stringMatchAll(" + "$" + "{" + "1:pattern" + "}" + ")"), - boost: 10 - }, { - label: "stringNormalize", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- stringNormalize(ScalarFunction|int $form = 16) : StringNormalize -
- ` - return div - }, - apply: snippet("stringNormalize(" + "$" + "{" + "1:form" + "}" + ")"), - boost: 10 - }, { - label: "stringStyle", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- stringStyle(ScalarFunction|StringStyles|StringStyles|string $style) : StringStyle -
-
- Covert string to a style from enum list, passed in parameter.
Can be string \"upper\" or StringStyles::UPPER for Upper (example). -
- ` - return div - }, - apply: snippet("stringStyle(" + "$" + "{" + "1:style" + "}" + ")"), - boost: 10 - }, { - label: "stringTitle", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- stringTitle(ScalarFunction|bool $allWords = false) : StringTitle -
-
- Changes all graphemes/code points to \"title case\". -
- ` - return div - }, - apply: snippet("stringTitle(" + "$" + "{" + "1:allWords" + "}" + ")"), - boost: 10 - }, { - label: "stringWidth", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- stringWidth() : StringWidth -
- ` - return div - }, - apply: snippet("stringWidth()"), - boost: 10 - }, { - label: "strPad", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- strPad(int $length, string $pad_string = ' ', int $type = 1) : StrPad -
- ` - return div - }, - apply: snippet("strPad(" + "$" + "{" + "1:length" + "}" + ", " + "$" + "{" + "2:pad_string" + "}" + ", " + "$" + "{" + "3:type" + "}" + ")"), - boost: 10 - }, { - label: "strPadBoth", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- strPadBoth(int $length, string $pad_string = ' ') : StrPad -
- ` - return div - }, - apply: snippet("strPadBoth(" + "$" + "{" + "1:length" + "}" + ", " + "$" + "{" + "2:pad_string" + "}" + ")"), - boost: 10 - }, { - label: "strPadLeft", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- strPadLeft(int $length, string $pad_string = ' ') : StrPad -
- ` - return div - }, - apply: snippet("strPadLeft(" + "$" + "{" + "1:length" + "}" + ", " + "$" + "{" + "2:pad_string" + "}" + ")"), - boost: 10 - }, { - label: "strPadRight", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- strPadRight(int $length, string $pad_string = ' ') : StrPad -
- ` - return div - }, - apply: snippet("strPadRight(" + "$" + "{" + "1:length" + "}" + ", " + "$" + "{" + "2:pad_string" + "}" + ")"), - boost: 10 - }, { - label: "strReplace", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- strReplace(ScalarFunction|array|string $search, ScalarFunction|array|string $replace) : StrReplace -
-
- @param array|ScalarFunction|string $search
@param array|ScalarFunction|string $replace -
- ` - return div - }, - apply: snippet("strReplace(" + "$" + "{" + "1:search" + "}" + ", " + "$" + "{" + "2:replace" + "}" + ")"), - boost: 10 - }, { - label: "toDate", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- toDate(ScalarFunction|string $format = 'Y-m-d\\\\TH:i:sP', ScalarFunction|DateTimeZone $timeZone = DateTimeZone::...) : ToDate -
-
- @param ScalarFunction|string $format - current format of the date that will be used to create DateTimeImmutable instance -
- ` - return div - }, - apply: snippet("toDate(" + "$" + "{" + "1:format" + "}" + ", " + "$" + "{" + "2:timeZone" + "}" + ")"), - boost: 10 - }, { - label: "toDateTime", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- toDateTime(ScalarFunction|string $format = 'Y-m-d H:i:s', ScalarFunction|DateTimeZone $timeZone = DateTimeZone::...) : ToDateTime -
-
- @param ScalarFunction|string $format - current format of the date that will be used to create DateTimeImmutable instance
@param \\DateTimeZone|ScalarFunction $timeZone -
- ` - return div - }, - apply: snippet("toDateTime(" + "$" + "{" + "1:format" + "}" + ", " + "$" + "{" + "2:timeZone" + "}" + ")"), - boost: 10 - }, { - label: "trim", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- trim(Type $type = Flow\\ETL\\Function\\Trim\\Type::..., string $characters = ' \\t\\n\\r\\0 ') : Trim -
- ` - return div - }, - apply: snippet("trim(" + "$" + "{" + "1:type" + "}" + ", " + "$" + "{" + "2:characters" + "}" + ")"), - boost: 10 - }, { - label: "truncate", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- truncate(ScalarFunction|int $length, ScalarFunction|string $ellipsis = '...') : Truncate -
- ` - return div - }, - apply: snippet("truncate(" + "$" + "{" + "1:length" + "}" + ", " + "$" + "{" + "2:ellipsis" + "}" + ")"), - boost: 10 - }, { - label: "unicodeLength", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- unicodeLength() : UnicodeLength -
- ` - return div - }, - apply: snippet("unicodeLength()"), - boost: 10 - }, { - label: "unpack", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- unpack(ScalarFunction|array $skipKeys = [], ScalarFunction|string|null $entryPrefix = null) : ArrayUnpack -
-
- @param array $skipKeys -
- ` - return div - }, - apply: snippet("unpack(" + "$" + "{" + "1:skipKeys" + "}" + ", " + "$" + "{" + "2:entryPrefix" + "}" + ")"), - boost: 10 - }, { - label: "upper", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- upper() : ToUpper -
- ` - return div - }, - apply: snippet("upper()"), - boost: 10 - }, { - label: "wordwrap", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- wordwrap(ScalarFunction|int $width, ScalarFunction|string $break = '\\n', ScalarFunction|bool $cut = false) : Wordwrap -
- ` - return div - }, - apply: snippet("wordwrap(" + "$" + "{" + "1:width" + "}" + ", " + "$" + "{" + "2:break" + "}" + ", " + "$" + "{" + "3:cut" + "}" + ")"), - boost: 10 - }, { - label: "xpath", - type: "method", - detail: "Flow\\\\ETL\\\\Function\\\\ScalarFunctionChain", - info: () => { - const div = document.createElement("div") - div.innerHTML = ` -
- xpath(string $string) : XPath -
- ` - return div - }, - apply: snippet("xpath(" + "$" + "{" + "1:string" + "}" + ")"), - boost: 10 - } ] - -/** - * ScalarFunctionChain method completion source for CodeMirror - * @param {CompletionContext} context - * @returns {CompletionResult|null} - */ -export function scalarFunctionChainCompletions(context) { - // Get text before cursor (potentially across multiple lines) - // Look back up to 2000 characters to find the pattern - const maxLookback = 2000 - const docText = context.state.doc.toString() - const startPos = Math.max(0, context.pos - maxLookback) - const textBefore = docText.slice(startPos, context.pos) - - // Check if we're directly after -> (method chaining context) - if (!new RegExp('->\\w*$').test(textBefore)) { - return null - } - - // Check if we're after a ScalarFunctionChain-returning function - // Pattern: any of the DSL functions with scalar_function_chain: true - if (scalarFunctionChainFunctions.length === 0) { - return null - } - - // Find all matching functions and check if any are at top level with -> - const functionPattern = new RegExp('\\b(' + scalarFunctionChainFunctions.join('|') + ')\\s*\\(', 'g') - let matches = [] - let match - - while ((match = functionPattern.exec(textBefore)) !== null) { - matches.push({ name: match[1], index: match.index, endOfName: match.index + match[0].length }) - } - - // Walk backwards from cursor tracking parenthesis depth - let depth = 0 - let i = textBefore.length - 1 - - // Skip back past the -> and any word being typed - while (i >= 0 && /[\w>-]/.test(textBefore[i])) { - i-- - } - - // Now count parentheses going backwards - while (i >= 0) { - if (textBefore[i] === ')') depth++ - else if (textBefore[i] === '(') { - depth-- - // If we're back to depth 0, check if this ( belongs to a ScalarFunctionChain function - if (depth === 0) { - // Look backwards to find the function name - let funcEnd = i - while (funcEnd > 0 && /\s/.test(textBefore[funcEnd - 1])) { - funcEnd-- - } - let funcStart = funcEnd - while (funcStart > 0 && /\w/.test(textBefore[funcStart - 1])) { - funcStart-- - } - const funcName = textBefore.slice(funcStart, funcEnd) - - // Check if this is a ScalarFunctionChain-returning function - if (scalarFunctionChainFunctions.includes(funcName)) { - // This is it! We're directly after this function call - return continueWithCompletions() - } - // If not, we're inside some other call - return null - } - } - i-- - } - - return null - - function continueWithCompletions() { - // Match word being typed (method name after ->) - const word = context.matchBefore(/\w*/) - - // If no word and not explicit, don't show completions - if (!word && !context.explicit) { - return null - } - - // Filter methods based on what's being typed - const prefix = word ? word.text.toLowerCase() : '' - const options = scalarFunctionChainMethods.filter(method => - !prefix || method.label.toLowerCase().startsWith(prefix) - ) - - return { - from: word ? word.from : context.pos, - options: options, - validFor: new RegExp('^\\w*$') // Reuse while typing word characters - } - } -} diff --git a/web/landing/tests/Flow/Website/Tests/Integration/Command/CompleterCommandTestCase.php b/web/landing/tests/Flow/Website/Tests/Integration/Command/CompleterCommandTestCase.php index 0919b0f0eb..59c7cb99c3 100644 --- a/web/landing/tests/Flow/Website/Tests/Integration/Command/CompleterCommandTestCase.php +++ b/web/landing/tests/Flow/Website/Tests/Integration/Command/CompleterCommandTestCase.php @@ -21,17 +21,6 @@ protected function setUp() : void $this->application = new Application(self::$kernel); } - protected function assertGeneratedFileMatchesFixture(string $generatedPath, string $fixturePath) : void - { - static::assertFileExists($generatedPath, 'Generated file does not exist'); - static::assertFileExists($fixturePath, 'Fixture file does not exist'); - - $generatedContent = \file_get_contents($generatedPath); - $fixtureContent = \file_get_contents($fixturePath); - - static::assertSame($fixtureContent, $generatedContent, 'Generated file content does not match fixture'); - } - protected function executeCommand(string $commandName) : CommandTester { $command = $this->application->find($commandName); @@ -41,11 +30,6 @@ protected function executeCommand(string $commandName) : CommandTester return $commandTester; } - protected function getFixturePath(string $filename) : string - { - return __DIR__ . '/../../Fixtures/Completers/' . $filename; - } - protected function getOutputPath(string $filename) : string { return self::$kernel->getProjectDir() . '/assets/codemirror/completions/' . $filename; diff --git a/web/landing/tests/Flow/Website/Tests/Integration/Command/GenerateDSLCompleterCommandTest.php b/web/landing/tests/Flow/Website/Tests/Integration/Command/GenerateDSLCompleterCommandTest.php index 33d1db48b6..23865d424d 100644 --- a/web/landing/tests/Flow/Website/Tests/Integration/Command/GenerateDSLCompleterCommandTest.php +++ b/web/landing/tests/Flow/Website/Tests/Integration/Command/GenerateDSLCompleterCommandTest.php @@ -16,6 +16,19 @@ public function test_command_executes_successfully() : void self::assertStringContainsString('Generated DSL completer', $commandTester->getDisplay()); } + public function test_generated_js_contains_core_dsl_functions() : void + { + $this->executeCommand('app:generate:dsl-completer'); + + $content = \file_get_contents($this->getOutputPath('dsl.js')); + + $coreFunctions = ['data_frame', 'from_array', 'to_output', 'ref', 'lit', 'collect']; + + foreach ($coreFunctions as $function) { + self::assertStringContainsString('label: "' . $function . '"', $content, "Missing core DSL function: {$function}"); + } + } + public function test_generated_js_contains_required_structure() : void { $this->executeCommand('app:generate:dsl-completer'); @@ -28,13 +41,15 @@ public function test_generated_js_contains_required_structure() : void self::assertStringContainsString('export function', $content); } - public function test_generated_output_matches_expected_fixture() : void + public function test_generated_js_has_valid_completion_structure() : void { $this->executeCommand('app:generate:dsl-completer'); - $this->assertGeneratedFileMatchesFixture( - $this->getOutputPath('dsl.js'), - $this->getFixturePath('dsl.js') - ); + $content = \file_get_contents($this->getOutputPath('dsl.js')); + + self::assertMatchesRegularExpression('/label:\s*"[a-z_]+"/i', $content, 'Completions should have label property'); + self::assertMatchesRegularExpression('/type:\s*"function"/i', $content, 'Completions should have type property'); + self::assertStringContainsString('detail: "flow\\u002D', $content, 'Completions should have detail property with flow- prefix'); + self::assertMatchesRegularExpression('/apply:\s*snippet\(/i', $content, 'Completions should use snippet() for apply'); } } diff --git a/web/landing/tests/Flow/Website/Tests/Integration/Command/GenerateDataFrameCompleterCommandTest.php b/web/landing/tests/Flow/Website/Tests/Integration/Command/GenerateDataFrameCompleterCommandTest.php index e71c13558d..4aaf3bbd94 100644 --- a/web/landing/tests/Flow/Website/Tests/Integration/Command/GenerateDataFrameCompleterCommandTest.php +++ b/web/landing/tests/Flow/Website/Tests/Integration/Command/GenerateDataFrameCompleterCommandTest.php @@ -16,6 +16,19 @@ public function test_command_executes_successfully() : void self::assertStringContainsString('Generated DataFrame completer', $commandTester->getDisplay()); } + public function test_generated_js_contains_core_dataframe_methods() : void + { + $this->executeCommand('app:generate:data-frame-completer'); + + $content = \file_get_contents($this->getOutputPath('dataframe.js')); + + $coreMethods = ['write', 'collect', 'fetch', 'run', 'withEntry', 'select', 'drop', 'filter', 'limit']; + + foreach ($coreMethods as $method) { + self::assertStringContainsString('label: "' . $method . '"', $content, "Missing core DataFrame method: {$method}"); + } + } + public function test_generated_js_contains_required_structure() : void { $this->executeCommand('app:generate:data-frame-completer'); @@ -28,13 +41,15 @@ public function test_generated_js_contains_required_structure() : void self::assertStringContainsString('export function', $content); } - public function test_generated_output_matches_expected_fixture() : void + public function test_generated_js_has_valid_completion_structure() : void { $this->executeCommand('app:generate:data-frame-completer'); - $this->assertGeneratedFileMatchesFixture( - $this->getOutputPath('dataframe.js'), - $this->getFixturePath('dataframe.js') - ); + $content = \file_get_contents($this->getOutputPath('dataframe.js')); + + self::assertMatchesRegularExpression('/label:\s*"[a-zA-Z]+"/i', $content, 'Completions should have label property'); + self::assertMatchesRegularExpression('/type:\s*"method"/i', $content, 'Completions should have type: method'); + self::assertStringContainsString('ETL', $content); + self::assertStringContainsString('DataFrame"', $content, 'Completions should reference DataFrame class'); } } diff --git a/web/landing/tests/Flow/Website/Tests/Integration/Command/GenerateFlowCompleterCommandTest.php b/web/landing/tests/Flow/Website/Tests/Integration/Command/GenerateFlowCompleterCommandTest.php index f141562fd3..ed7b6d323e 100644 --- a/web/landing/tests/Flow/Website/Tests/Integration/Command/GenerateFlowCompleterCommandTest.php +++ b/web/landing/tests/Flow/Website/Tests/Integration/Command/GenerateFlowCompleterCommandTest.php @@ -16,6 +16,19 @@ public function test_command_executes_successfully() : void self::assertStringContainsString('Generated Flow completer', $commandTester->getDisplay()); } + public function test_generated_js_contains_core_flow_methods() : void + { + $this->executeCommand('app:generate:flow-completer'); + + $content = \file_get_contents($this->getOutputPath('flow.js')); + + $coreMethods = ['setUp', 'extract', 'from', 'process', 'read']; + + foreach ($coreMethods as $method) { + self::assertStringContainsString('label: "' . $method . '"', $content, "Missing core Flow method: {$method}"); + } + } + public function test_generated_js_contains_required_structure() : void { $this->executeCommand('app:generate:flow-completer'); @@ -28,13 +41,14 @@ public function test_generated_js_contains_required_structure() : void self::assertStringContainsString('export function', $content); } - public function test_generated_output_matches_expected_fixture() : void + public function test_generated_js_has_valid_completion_structure() : void { $this->executeCommand('app:generate:flow-completer'); - $this->assertGeneratedFileMatchesFixture( - $this->getOutputPath('flow.js'), - $this->getFixturePath('flow.js') - ); + $content = \file_get_contents($this->getOutputPath('flow.js')); + + self::assertMatchesRegularExpression('/label:\s*"[a-zA-Z]+"/i', $content, 'Completions should have label property'); + self::assertMatchesRegularExpression('/type:\s*"method"/i', $content, 'Completions should have type: method'); + self::assertMatchesRegularExpression('/apply:\s*snippet\(/i', $content, 'Completions should use snippet() for apply'); } } diff --git a/web/landing/tests/Flow/Website/Tests/Integration/Command/GenerateScalarFunctionChainCompleterCommandTest.php b/web/landing/tests/Flow/Website/Tests/Integration/Command/GenerateScalarFunctionChainCompleterCommandTest.php index be31462d07..9104501fbf 100644 --- a/web/landing/tests/Flow/Website/Tests/Integration/Command/GenerateScalarFunctionChainCompleterCommandTest.php +++ b/web/landing/tests/Flow/Website/Tests/Integration/Command/GenerateScalarFunctionChainCompleterCommandTest.php @@ -16,6 +16,19 @@ public function test_command_executes_successfully() : void self::assertStringContainsString('Generated ScalarFunctionChain completer', $commandTester->getDisplay()); } + public function test_generated_js_contains_core_chain_methods() : void + { + $this->executeCommand('app:generate:scalar-function-chain-completer'); + + $content = \file_get_contents($this->getOutputPath('scalarfunctionchain.js')); + + $coreMethods = ['equals', 'isNull', 'isNotNull', 'cast', 'trim', 'lower', 'upper']; + + foreach ($coreMethods as $method) { + self::assertStringContainsString('label: "' . $method . '"', $content, "Missing core ScalarFunctionChain method: {$method}"); + } + } + public function test_generated_js_contains_required_structure() : void { $this->executeCommand('app:generate:scalar-function-chain-completer'); @@ -28,13 +41,14 @@ public function test_generated_js_contains_required_structure() : void self::assertStringContainsString('export function', $content); } - public function test_generated_output_matches_expected_fixture() : void + public function test_generated_js_has_valid_completion_structure() : void { $this->executeCommand('app:generate:scalar-function-chain-completer'); - $this->assertGeneratedFileMatchesFixture( - $this->getOutputPath('scalarfunctionchain.js'), - $this->getFixturePath('scalarfunctionchain.js') - ); + $content = \file_get_contents($this->getOutputPath('scalarfunctionchain.js')); + + self::assertMatchesRegularExpression('/label:\s*"[a-zA-Z]+"/i', $content, 'Completions should have label property'); + self::assertMatchesRegularExpression('/type:\s*"method"/i', $content, 'Completions should have type: method'); + self::assertStringContainsString('ScalarFunctionChain"', $content, 'Completions should reference ScalarFunctionChain class'); } }