aboutsummaryrefslogtreecommitdiffstats
path: root/docs/source/lang/api/sq.rst
diff options
context:
space:
mode:
Diffstat (limited to 'docs/source/lang/api/sq.rst')
-rw-r--r--docs/source/lang/api/sq.rst45
1 files changed, 45 insertions, 0 deletions
diff --git a/docs/source/lang/api/sq.rst b/docs/source/lang/api/sq.rst
new file mode 100644
index 0000000..96724d3
--- /dev/null
+++ b/docs/source/lang/api/sq.rst
@@ -0,0 +1,45 @@
+.. highlight:: cpp
+
+.. _lang-sq:
+
+sq()
+====
+
+(Macro) computes the square of a number.
+
+Syntax
+------
+
+::
+
+ sq(a)
+
+Parameters
+----------
+
+**a**: the number.
+
+Returns
+-------
+
+**a** squared (**a** × **a**).
+
+Warning
+-------
+
+Because of the way ``sq()`` is implemented, avoid using other
+functions or causing side effects inside the parentheses, as it may
+lead to incorrect results::
+
+ b = sq(a++); // avoid this - yields incorrect results
+
+ b = sq(a); // use this instead -
+ a++; // keep other operations outside sq()
+
+
+Arduino Compatibility
+---------------------
+
+Maple's implementation of ``sq()`` is compatible with Arduino.
+
+.. include:: /arduino-cc-attribution.txt