30 lines
744 B
PHP
30 lines
744 B
PHP
<?php
|
|
/**
|
|
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
* SPDX-License-Identifier: Apache-2.0.
|
|
*/
|
|
namespace AWS\CRT\Internal;
|
|
|
|
use \RuntimeException;
|
|
|
|
/**
|
|
* @internal
|
|
* Forwards calls on to awscrt PHP extension functions
|
|
*/
|
|
final class Extension {
|
|
function __construct() {
|
|
if (!extension_loaded('awscrt')) {
|
|
throw new RuntimeException('awscrt extension is not loaded');
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Forwards any call made on this object to the extension function of the
|
|
* same name with the supplied arguments. Argument type hinting and checking
|
|
* occurs at the CRT wrapper.
|
|
*/
|
|
function __call($name, $args) {
|
|
return call_user_func_array($name, $args);
|
|
}
|
|
}
|