Lade...
 

return

return

return
Mit dem InstantView Befehl return wird die aktuelle Prozedur/Message sofort verlassen. Der Stack wird durch den Befehl nicht verändert.

Define(CheckSlotsCosts)
  Var(tmpObject, hasNoCosts, vessel, slotName)
  TRUE -> hasNoCosts
  -> tmpObject
  allSlots iterate(UNSAFE)
  {
    -> vessel
    // Only .capturedCosts-slot

    vessel Copy(Name()) Dup -> slotName

    ".capturedCosts" StringFind ifnot

    {

      slotName ".jobTime" StringFind ifnot continue // Continue the iteration now!

    }
    tmpObject slotName Copy(STACK) Call(IsZero) ifnot { FALSE -> hasNoCosts break } // Break the iteration now!


  }
  hasNoCosts if { T("Hat keine Kosten!", "Has no costs!") return } // Leave procedure now!

  T("Übergebene Position hat Kosten!", "Given object has costs!")
;

 

Achtung: In Iterate-Schleifen (wie im Beispiel) verlässt return grundsätzlich die umschließende Prozedur/Message. Wird jedoch die (veraltete) Variante iterate(PROZEDUR) verwendet, dann verlässt return innerhalb dieser Prozedur nur die Prozedur selbst und hat dann den gleichen Effekt, wie continue in einer regulären iterate-Schleife.

Siehe auch

Weiter Beispiele