public function compileFunction($name, $arguments, $funcArguments)
    {
        if (!Str::startsWith($name, 'str_') || function_exists($name)) {
            return null;
        }

        $name = substr($name, 4);

        if (method_exists(Str::class, $name) && Reflexion::getReflectionMethod(Str::class, $name)->isPublic()) {
            return Str::class . '::' . $name . '(' . $arguments . ')';
        }

        return null;
    }
public function compileFunction($name, $arguments, $funcArguments)
    {
        if (!Str::startsWith($name, 'str_') || function_exists($name)) {
            return null;
        }

        $name = substr($name, 4);

        if (method_exists(Str::class, $name) && Reflexion::getReflectionMethod(Str::class, $name)->isPublic()) {
            return Str::class . '::' . $name . '(' . $arguments . ')';
        }

        return null;
    }
public function compileFunction ( $ name , $ arguments , $ funcArguments ) { if ( ! Str :: startsWith ( $ name , 'str_' ) || function_exists ( $ name ) ) { return null ; } $ name = substr ( $ name , 4 ) ; if ( method_exists ( Str :: class , $ name ) && Reflexion :: getReflectionMethod ( Str :: class , $ name ) -> isPublic ( ) ) { return Str :: class . '::' . $ name . '(' . $ arguments . ')' ; } return null ; }
This method is called on any attempt to compile a function call

@param $name
@param $arguments

@return null|string
This method is called on any attempt to compile a function call