diff options
| author | Marti Bolivar <mbolivar@mit.edu> | 2010-12-21 10:27:37 -0500 | 
|---|---|---|
| committer | Marti Bolivar <mbolivar@mit.edu> | 2010-12-21 10:27:37 -0500 | 
| commit | c45bccad44187da27505cf5808424e709e3f54a1 (patch) | |
| tree | 18a459a50f8d0551ba046e30462c93999d982725 /docs/source/lang/api/constrain.rst | |
| parent | 84fd2532a7f23d20354ff590790b3f892cb7e7d7 (diff) | |
| parent | d5ad2a27f4e69e6cc9324331945937c983c30366 (diff) | |
| download | librambutan-c45bccad44187da27505cf5808424e709e3f54a1.tar.gz librambutan-c45bccad44187da27505cf5808424e709e3f54a1.zip  | |
Merge branch 'master' into debug-serialusb.
Chose debug-serialusb version in cases of conflict.
Conflicts:
	libmaple/usb/usb_callbacks.c
Diffstat (limited to 'docs/source/lang/api/constrain.rst')
| -rw-r--r-- | docs/source/lang/api/constrain.rst | 69 | 
1 files changed, 69 insertions, 0 deletions
diff --git a/docs/source/lang/api/constrain.rst b/docs/source/lang/api/constrain.rst new file mode 100644 index 0000000..d19b61c --- /dev/null +++ b/docs/source/lang/api/constrain.rst @@ -0,0 +1,69 @@ +.. highlight:: cpp + +.. _lang-constrain: + +constrain() +=========== + +(Macro) Constrains a number to be within a range. + +Syntax +------ + +:: + +    constrain(x, a, b) + + +Parameters +---------- + +**x**: the number to constrain + +**a**: the lower end of the range + +**b**: the upper end of the range + +Returns +------- + +**x**: if **x** is between **a** and **b** + +**a**: if **x** is less than **a** + +**b**: if **x** is greater than **b** + +Example +------- + +:: + +    // limits range of sensor values to between 10 and 150: +    sensVal = constrain(sensVal, 10, 150); + + +Warning +------- + +Because of the way ``constrain()`` is implemented, avoid using other +functions or causing side effects inside the parentheses, as it may +lead to incorrect results:: + +    constrain(x,a++,b);   // avoid this - yields incorrect results + +    constrain(x,a,b);     // use this instead- +    a++;                  // keep other math outside constrain() + +Arduino Compatibility +--------------------- + +Maple's implementation of ``constrain()`` is compatible with Arduino. + +See also +-------- + +-  :ref:`min() <lang-min>` +-  :ref:`max() <lang-max>` + + +.. include:: cc-attribution.txt  | 
