GraphQL   A
last analyzed

Complexity

Total Complexity 3

Size/Duplication

Total Lines 24
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 3

Test Coverage

Coverage 71.43%

Importance

Changes 1
Bugs 0 Features 0
Metric Value
wmc 3
c 1
b 0
f 0
lcom 0
cbo 3
dl 0
loc 24
ccs 5
cts 7
cp 0.7143
rs 10

1 Method

Rating   Name   Duplication   Size   Complexity  
A execute() 0 12 3
1
<?php
2
3
namespace Fubhy\GraphQL;
4
5
use Fubhy\GraphQL\Executor\Executor;
6
use Fubhy\GraphQL\Language\Parser;
7
use Fubhy\GraphQL\Language\Source;
8
9
class GraphQL
10
{
11
    /**
12
     * @param Schema $schema
13
     * @param $request
14
     * @param mixed $root
15
     * @param array|null $variables
16
     * @param string|null $operation
17
     *
18
     * @return array
19
     */
20 90
    public static function execute(Schema $schema, $request, $root = NULL, $variables = NULL, $operation = NULL)
21
    {
22
        try {
23 90
            $source = new Source($request ?: '', 'GraphQL request');
24 90
            $parser = new Parser();
25
26 90
            $ast = $parser->parse($source);
27 90
            return Executor::execute($schema, $root, $ast, $operation, $variables);
28
        } catch (\Exception $exception) {
29
            return ['errors' => $exception->getMessage()];
30
        }
31
    }
32
}
33