in lib/generator.js [1463:1476]
visitMethodCall(ast, level) {
assert.equal(ast.left.type, 'method_call');
const name = _name(ast.left.id);
if (name.startsWith('$') && this.builtin[name]) {
const method = name.replace('$', '');
this.builtin[name][method](ast.args, level);
return;
} else if (ast.isStatic) {
this.emit(`self::${name}`);
} else {
this.emit(`$this->${name}`);
}
this.visitArgs(ast.args, level);
}