2014-04-08 16:04:32 +00:00
|
|
|
<?php
|
|
|
|
|
|
|
|
class Scribunto_LuaParserFunctionsLibrary extends Scribunto_LuaLibraryBase {
|
|
|
|
public function register() {
|
|
|
|
$lib = array(
|
|
|
|
'expr' => array( $this, 'expr' ),
|
|
|
|
);
|
|
|
|
|
2014-10-03 14:47:45 +00:00
|
|
|
return $this->getEngine()->registerInterface( __DIR__ . '/mw.ext.ParserFunctions.lua', $lib, array() );
|
2014-04-08 16:04:32 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
public function expr( $expression = null ) {
|
|
|
|
$this->checkType( 'mw.ext.ParserFunctions.expr', 1, $expression, 'string' );
|
|
|
|
try {
|
|
|
|
return array( ExtParserFunctions::getExprParser()->doExpression( $expression ) );
|
|
|
|
} catch ( ExprError $e ) {
|
|
|
|
throw new Scribunto_LuaError( $e->getMessage() );
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|