listLength

Количество аргументов возвращено в индивидуально настраиваемые операции индексации

Описание

пример

n = listLength(obj,indexOp,indexContext) возвращает количество выходных параметров n ожидаемый от индивидуально настраиваемой операции индексации выполняется на obj. indexOp объект описывает типы индексации операций и индексов, на которые ссылаются, и indexContext экземпляр идентифицирует, происходит ли операция индексации в операторе, выражении или присвоении.

Примеры

свернуть все

В примере, показанном в matlab.mixin.indexing.RedefinesDot, ScalarStructClass наследовался RedefinesDot реализовывать пользовательскую точечную индексацию. AddedFields свойство ScalarStructClass struct, и в случаях, куда операция индексации возвращает или присваивает списку, разделенному запятыми, класс вызывает dotListLength метод.

В свою очередь, dotListLength поворот вызывает listLength на AddedFields свойство.

methods (Access=protected)
        
  ...
        
  function n = dotListLength(obj,indexOp,indexContext)
    n = listLength(obj.AddedFields,indexOp,indexContext);
  end
end

Для полного внедрения ScalarStructClass, смотрите Настраивают Индексацию Точки в Скалярном Классе.

Входные параметры

свернуть все

Объект, индексируемый в.

На тип индексации операции и индексов ссылаются в виде массива IndexingOperation объекты.

Контекст, в котором операция индексации происходит в виде одного из этих членов перечисления:

  • matlab.indexing.IndexingContext.Statement — Индексируемая ссылка используется в качестве оператора (например, obj.a)

  • matlab.indexing.IndexingContext.Expression — Индексируемая ссылка, используемая в качестве аргумента к функции (например, func(obj.a))

  • matlab.indexing.IndexingContext.Assignment — Индексируемое присвоение (например, [obj.a] = deal(x)).

Выходные аргументы

свернуть все

Количество значений, чтобы возвратиться из операции индексации в виде неотрицательного целого числа.

Введенный в R2021b