midrange.com code scratchpad
Name:
Short circuit test
Scriptlanguage:
Plain Text
Tabwidth:
4
Date:
11/25/2008 01:41:21 pm
IP:
Logged
Description:
Tests short circuiting evaluation in a logical expression
Code:
  1.      D*--------------------------------------------------
  2.      D* Procedure name: sub1
  3.      D* Purpose:
  4.      D* Returns:
  5.      D* Parameter:      value
  6.      D*--------------------------------------------------
  7.      D sub1            PR              N
  8.      D  value                         5A   CONST
  9.  
  10.      D*--------------------------------------------------
  11.      D* Procedure name: sub1
  12.      D* Purpose:
  13.      D* Returns:
  14.      D* Parameter:      value
  15.      D*--------------------------------------------------
  16.      D sub2            PR              N
  17.      D  value                         5A   CONST
  18.  
  19.      D ind             S               N
  20.  
  21.       /free
  22.        ind = sub1('FALSE') and sub2('TRUE');
  23.       /end-free
  24.  
  25.  
  26.  
  27.      P*--------------------------------------------------
  28.      P* Procedure name: sub1
  29.      P* Purpose:
  30.      P* Returns:
  31.      P* Parameter:      value
  32.      P*--------------------------------------------------
  33.      P sub1            B
  34.      D sub1            PI              N
  35.      D  value                         5A   CONST
  36.  
  37.  
  38.       /FREE
  39.  
  40.        if (value = 'TRUE');
  41.          return *ON;
  42.        endif;
  43.  
  44.        return *OFF;
  45.       /END-FREE
  46.      P sub1            E
  47.  
  48.      P*--------------------------------------------------
  49.      P* Procedure name: sub1
  50.      P* Purpose:
  51.      P* Returns:
  52.      P* Parameter:      value
  53.      P*--------------------------------------------------
  54.      P sub2            B
  55.      D sub2            PI              N
  56.      D  value                         5A   CONST
  57.  
  58.  
  59.       /FREE
  60.  
  61.        return sub1(value);
  62.       /END-FREE
  63.      P sub2            E
  64.  
  65.  
© 2004-2019 by midrange.com generated in 0.007s valid xhtml & css