Ошибка компиляции «Ожидается [или =» в языке Jack. Где в строке ошибка и почему? - PullRequest
0 голосов
/ 28 апреля 2020

Цель состоит в том, чтобы вставить номер по порядку в связанный список. Я написал код на основе моих знаний в C. Я не знаю много синтаксиса в Джеке. Я пытался найти информацию, но не смог найти ничего полезного.

In List.jack (line 41): In subroutine insertInOrder: Expected [ or =

Метод содержит:

class List {
    field int data;
    field List next;

    /* Creates a new List object. */
    constructor List new(int car, List cdr) {
        let data = car;
        let next = cdr;
        return this;

    /* Inserts the argument in the right position of the list (ascending order)*/
    method void insertInOrder(int ins){
        var List prev, curr, insert;
        let prev = this;
        let curr = prev.next();
        while (ins > prev.data()){
            if (ins < curr.data()){
                let insert = List.new(ins, curr);
                let prev.next() = insert;
            }
            else{
                let prev = prev.next();
                let curr = prev.next();
            }
        }
        return;
    }

и проблема в строке:

let prev.next() = insert;

Как понять ошибку?

...