Vala: вызов метода создания суперкласса в конструкторе - PullRequest
0 голосов
/ 28 октября 2018

Я пытался инициализировать родительский класс, используя его метод создания.

class A {
    public A.creator (int x, int y) {
        // do some magic
    }
}

class B : A {
    public B.creator (int x, int y) {
        // I want to do something like
        base.creator (x, y);
    }
}

Я столкнулся с ошибкой при попытке запустить приведенный выше код.

error: chain up to 'A.creator' not supported

Как правильно сделать это в Вала?

1 Ответ

0 голосов
/ 29 октября 2018

Когда я пытаюсь скомпилировать ваш код, я получаю:

chain.vala:1.1-1.7: error: Class name `A' is too short
class A {
^^^^^^^
chain.vala:7.1-7.11: error: Class name `B' is too short
class B : A {
^^^^^^^^^^^
Compilation failed: 2 error(s), 0 warning(s)

После переименования A в Aaa и B в Bbb код прекрасно компилируется с valac 0.36.15.

Моей первой мыслью было, что вам, возможно, придется вывести A из Object, но, очевидно, это не так.

...