aboutsummaryrefslogtreecommitdiffstats
path: root/docs/source/lang/api
diff options
context:
space:
mode:
authorMarti Bolivar <mbolivar@leaflabs.com>2011-06-10 10:25:17 -0400
committerMarti Bolivar <mbolivar@leaflabs.com>2011-06-10 10:43:01 -0400
commitc765320c83dd25f026eb86785e55773b72a6bcd2 (patch)
treeae62b828ff6a9e46bc903621fbde190a76e4c032 /docs/source/lang/api
parent6cc1ea450b288d76d2b2d66176abba78dea6e467 (diff)
downloadlibrambutan-c765320c83dd25f026eb86785e55773b72a6bcd2.tar.gz
librambutan-c765320c83dd25f026eb86785e55773b72a6bcd2.zip
Docs: move ASSERT() to its own page.
ASSERT() was previously documented in language.rst. Move it to a new lang/api/assert.rst.
Diffstat (limited to 'docs/source/lang/api')
-rw-r--r--docs/source/lang/api/assert.rst30
1 files changed, 30 insertions, 0 deletions
diff --git a/docs/source/lang/api/assert.rst b/docs/source/lang/api/assert.rst
new file mode 100644
index 0000000..76330b6
--- /dev/null
+++ b/docs/source/lang/api/assert.rst
@@ -0,0 +1,30 @@
+.. highlight:: cpp
+
+.. _lang-assert:
+
+``ASSERT(...)``
+===============
+
+ASSERT() can be very useful for basic program debugging. It accepts a
+boolean; for example::
+
+ ASSERT(state == WAIT);
+
+Zero is false and any other number is true. If the boolean is true,
+the assertion passes and the program continues as usual. If it is
+false, the assertion fails: the program is halted, debug information
+is printed to USART2, and the status LED begins to throb (it's
+noticeably different from blinking). The debug information is printed
+at 9600 baud and consists of the filename and line number where the
+ASSERT() failed.
+
+Including assertions in a program increases the program size. When
+using libmaple **from the command line only**, they can be disabled by
+making the definition ::
+
+ #define DEBUG_LEVEL DEBUG_NONE
+
+before including either wirish.h or libmaple.h. In this case, all
+assertions will pass without any lost clock cycles. Note that this
+will **not work in the IDE**; even with this definition, assertions
+will still be enabled.