Zephir\ClassMethod::getModifiers PHP Method

getModifiers() public method

Returns the C-modifier flags
public getModifiers ( ) : string
return string
    public function getModifiers()
    {
        $modifiers = array();
        foreach ($this->visibility as $visibility) {
            switch ($visibility) {
                case 'public':
                    $modifiers['ZEND_ACC_PUBLIC'] = $visibility;
                    break;
                case 'protected':
                    $modifiers['ZEND_ACC_PROTECTED'] = $visibility;
                    break;
                case 'private':
                    $modifiers['ZEND_ACC_PRIVATE'] = $visibility;
                    break;
                case 'static':
                    $modifiers['ZEND_ACC_STATIC'] = $visibility;
                    break;
                case 'final':
                    $modifiers['ZEND_ACC_FINAL'] = $visibility;
                    break;
                case 'abstract':
                    $modifiers['ZEND_ACC_ABSTRACT'] = $visibility;
                    break;
                case 'deprecated':
                    $modifiers['ZEND_ACC_DEPRECATED'] = $visibility;
                    break;
                case 'inline':
                    break;
                case 'scoped':
                    break;
                case 'internal':
                    break;
                default:
                    throw new Exception('Unknown modifier "' . $visibility . '"');
            }
        }
        if ($this->name == '__construct') {
            $modifiers['ZEND_ACC_CTOR'] = true;
        } else {
            if ($this->name == '__destruct') {
                $modifiers['ZEND_ACC_DTOR'] = true;
            }
        }
        return join('|', array_keys($modifiers));
    }