Funkce pro správu chyb

(alert string)
 
Argumenty:
 
string
- řetězec, který se zobrazí v dialogovém boxu
 
Popis:
  - zobrazí dialogový box s chybovou nebo varovnou hláškou
 
Návratová hodnota:
  - nil
 
Příklady:
  (alert "That function is not available.")
    zobrazí zprávu v dialogovém boxu
  (alert "That function\nis not available.")
    zobrazí víceřádkovou zprávu

(*error* string)
 
Argumenty:
 
string
- řetězec popis chyby
 
Popis:
  - uživatelem definovaná funkce pro zprávu chyby
 
Návratová hodnota:
  - nemá návratovou hodnotu, jen když se používá ve spojení s funkcí vl_exit_with_value
 
Příklady:
  Následující funkce provádí stejnou funkci jako standardní správce chyb AutoLISPu - vypíše "error:" následovaný popisem chyby:
    (defun *error* (msg)
    (princ "error: ")
    (princ msg)
    (princ)
    )

(exit)
 
Popis:
  - ukončí aktuální aplikaci
  - vrátí chybovou zprávu quit/exit abort a vrátí se do příkazové řadky AutoCADu

(quit)
 
Popis:
  - ukončí aktuální aplikaci
  - vrátí chybovou zprávu quit/exit abort a vrátí se do příkazové řadky AutoCADu

(vl-catch-all-apply 'function list)
 
Argumenty:
 
'function
- funkce, argumentem může být buď defun nebo lambda výraz
 
list
- seznam obsahující argumty, které mají být předány funkci
 
Popis:
  - předá seznam argumentů dané funkce a odchytí všechny výjimky
 
Návratová hodnota:
  - výsledek volání funkce - bylo-li volání úspěšné
  - object chyby - v případě, že je volání neúspěšné
 
Příklady:
  Je-li volání funkce vl-catch-all-apply úspěšně dokončené má stejnou funkci jako fce apply:
  _$ (setq catchit (apply '/ '(50 5)))
    vrací 10
  _$ (setq catchit (vl-catch-all-apply '/ '(50 5)))
    vrací 10
 
  Hlavní síla funkce vl-catch-all-apply je odchycení chyby a pokračování ve zpracování:
  _$ (setq catchit (apply '/ '(50 0)))
    vrací ; error: divide by zero a ukončí běh programu
  _$ (setq catchit (vl-catch-all-apply '/ '(50 0)))
    vrací objekt chyby #<catch-all-apply-error>
 
  K prohlédnutí vráceného chybového objektu použijeme funkci vl-catch-all-error-message se jménem objektu:
  _$ (vl-catch-all-error-message catchit)
    vrací "divide by zero"

Podívejte se na funkci vl-catch-all-error-p.

(vl-catch-all-error-message error-obj)
 
Argumenty:
 
error-obj
- objekt chyby vrácený funkcí vl-catch-all-apply
 
Popis:
  - určí kdy argument je objekt chyby vrácený od vl-catch-all-apply
 
Návratová hodnota:
  - řetězec - obsahující chybovou zprávu
 
Příklady:
  Dělení nulou s použitím vl-catch-all-apply:
  _$ (setq catchit (vl-catch-all-apply '/ '(50 0)))
    vrací objekt chyby #<catch-all-apply-error>
 
  Funkce vl-catch-all-apply odchytí všechny výjimky a v případě chyby vrátí chybový objekt. K prohlédnutí vráceného chybového objektu použijeme funkci vl-catch-all-error-message se jménem objektu:
  _$ (vl-catch-all-error-message catchit)
    vrací "divide by zero"

Podívej se na funkci vl-catch-all-error-p.

(vl-catch-all-error-p arg)
 
Argumenty:
 
arg
- libovolný argument
 
Popis:
  - určí kdy argument je objekt chyby vrácený od vl-catch-all-apply
 
Návratová hodnota:
  - T - je-li argument objektem chyby vrácený funkcí vl-catch-all-apply
  - nil - v opačném případě
 
Příklady:
  Dělení nulou s použitím vl-catch-all-apply:
  _$ (setq catchit (vl-catch-all-apply '/ '(50 0)))
    vrací objekt chyby #<catch-all-apply-error>
 
  Použití funkce vl-catch-all-error-p pro zjištění zda hodnota vrácená funkcí vl-catch-all-apply je objekt chyby:
  _$ (vl-catch-all-error-p catchit)
    vrací T

Podívejte se na funkci vl-catch-all-error-message.