\doxysection{print.\+c}
\hypertarget{print_8c_source}{}\label{print_8c_source}\index{workspace/post-\/scarcity/src/io/print.c@{workspace/post-\/scarcity/src/io/print.c}}
\mbox{\hyperlink{print_8c}{Go to the documentation of this file.}}
\begin{DoxyCode}{0}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00001}00001\ \textcolor{comment}{/*}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00002}00002\ \textcolor{comment}{\ *\ print.c}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00003}00003\ \textcolor{comment}{\ *}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00004}00004\ \textcolor{comment}{\ *\ First\ pass\ at\ a\ printer,\ for\ bootstrapping.}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00005}00005\ \textcolor{comment}{\ *}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00006}00006\ \textcolor{comment}{\ *\ (c)\ 2017\ Simon\ Brooke\ <simon@journeyman.cc>}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00007}00007\ \textcolor{comment}{\ *\ Licensed\ under\ GPL\ version\ 2.0,\ or,\ at\ your\ option,\ any\ later\ version.}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00008}00008\ \textcolor{comment}{\ */}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00009}00009\ }
\DoxyCodeLine{\Hypertarget{print_8c_source_l00010}00010\ \textcolor{preprocessor}{\#include\ <ctype.h>}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00011}00011\ \textcolor{preprocessor}{\#include\ <stdio.h>}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00012}00012\ \textcolor{preprocessor}{\#include\ <stdlib.h>}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00013}00013\ \textcolor{preprocessor}{\#include\ <string.h>}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00014}00014\ \textcolor{comment}{/*}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00015}00015\ \textcolor{comment}{\ *\ wide\ characters}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00016}00016\ \textcolor{comment}{\ */}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00017}00017\ \textcolor{preprocessor}{\#include\ <wchar.h>}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00018}00018\ \textcolor{preprocessor}{\#include\ <wctype.h>}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00019}00019\ }
\DoxyCodeLine{\Hypertarget{print_8c_source_l00020}00020\ \textcolor{preprocessor}{\#include\ "{}\mbox{\hyperlink{conspage_8h}{memory/conspage.h}}"{}}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00021}00021\ \textcolor{preprocessor}{\#include\ "{}\mbox{\hyperlink{consspaceobject_8h}{memory/consspaceobject.h}}"{}}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00022}00022\ \textcolor{preprocessor}{\#include\ "{}\mbox{\hyperlink{hashmap_8h}{memory/hashmap.h}}"{}}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00023}00023\ \textcolor{preprocessor}{\#include\ "{}\mbox{\hyperlink{integer_8h}{arith/integer.h}}"{}}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00024}00024\ \textcolor{preprocessor}{\#include\ "{}\mbox{\hyperlink{intern_8h}{ops/intern.h}}"{}}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00025}00025\ \textcolor{preprocessor}{\#include\ "{}\mbox{\hyperlink{stack_8h}{memory/stack.h}}"{}}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00026}00026\ \textcolor{preprocessor}{\#include\ "{}\mbox{\hyperlink{print_8h}{io/print.h}}"{}}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00027}00027\ \textcolor{preprocessor}{\#include\ "{}\mbox{\hyperlink{psse__time_8h}{time/psse\_time.h}}"{}}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00028}00028\ \textcolor{preprocessor}{\#include\ "{}\mbox{\hyperlink{vectorspace_8h}{memory/vectorspace.h}}"{}}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00029}00029\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00030}00030\ \textcolor{comment}{/**}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00031}00031\ \textcolor{comment}{\ *\ print\ all\ the\ characters\ in\ the\ symbol\ or\ string\ indicated\ by\ \`{}pointer`}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00032}00032\ \textcolor{comment}{\ *\ onto\ this\ \`{}output`;\ if\ \`{}pointer`\ does\ not\ indicate\ a\ string\ or\ symbol,}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00033}00033\ \textcolor{comment}{\ *\ don't\ print\ anything\ but\ just\ return.}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00034}00034\ \textcolor{comment}{\ */}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00035}\mbox{\hyperlink{print_8c_ac2d8fe22fdcb308c4818226e70ad097e}{00035}}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{print_8c_ac2d8fe22fdcb308c4818226e70ad097e}{print\_string\_contents}}(\ \mbox{\hyperlink{fopen_8h_structfcurl__data}{URL\_FILE}}\ *output,\ \textcolor{keyword}{struct}\ \mbox{\hyperlink{consspaceobject_8h_structcons__pointer}{cons\_pointer}}\ pointer\ )\ \{}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00036}00036\ \ \ \ \ \textcolor{keywordflow}{while}\ (\ \mbox{\hyperlink{consspaceobject_8h_ab57f7feed314b0b9efa64d4cb3102759}{stringp}}(\ pointer\ )\ ||\ \mbox{\hyperlink{consspaceobject_8h_a868a73028c615e36d3ec378406b725b8}{symbolp}}(\ pointer\ )\ ||\ \mbox{\hyperlink{consspaceobject_8h_ac3918851cf96819107a5dd7c0ea8e9af}{keywordp}}(\ pointer\ )\ )\ \{}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00037}00037\ \ \ \ \ \ \ \ \ \textcolor{keyword}{struct\ }\mbox{\hyperlink{consspaceobject_8h_structcons__space__object}{cons\_space\_object}}\ *cell\ =\ \&\mbox{\hyperlink{consspaceobject_8h_af31e1da9438d7ae4410864ecc901b131}{pointer2cell}}(\ pointer\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00038}00038\ \ \ \ \ \ \ \ \ \textcolor{keywordtype}{wchar\_t}\ c\ =\ cell-\/>\mbox{\hyperlink{consspaceobject_8h_a259b3afe36776f8ba8498fdf95904f25}{payload}}.string.character;}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00039}00039\ }
\DoxyCodeLine{\Hypertarget{print_8c_source_l00040}00040\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (\ c\ !=\ \textcolor{charliteral}{'\(\backslash\)0'}\ )\ \{}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00041}00041\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{fopen_8h_a014681924c4591cdcc58d12017611e31}{url\_fputwc}}(\ c,\ output\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00042}00042\ \ \ \ \ \ \ \ \ \}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00043}00043\ \ \ \ \ \ \ \ \ pointer\ =\ cell-\/>\mbox{\hyperlink{consspaceobject_8h_a259b3afe36776f8ba8498fdf95904f25}{payload}}.string.cdr;}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00044}00044\ \ \ \ \ \}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00045}00045\ \}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00046}00046\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00047}00047\ \textcolor{comment}{/**}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00048}00048\ \textcolor{comment}{\ *\ print\ all\ the\ characters\ in\ the\ string\ indicated\ by\ \`{}pointer`\ onto}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00049}00049\ \textcolor{comment}{\ *\ the\ stream\ at\ this\ \`{}output`,\ prepending\ and\ appending\ double\ quote}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00050}00050\ \textcolor{comment}{\ *\ characters.}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00051}00051\ \textcolor{comment}{\ */}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00052}\mbox{\hyperlink{print_8c_a0b378eb705a92dd36e5cea43b2eecfc8}{00052}}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{print_8c_a0b378eb705a92dd36e5cea43b2eecfc8}{print\_string}}(\ \mbox{\hyperlink{fopen_8h_structfcurl__data}{URL\_FILE}}\ *output,\ \textcolor{keyword}{struct}\ \mbox{\hyperlink{consspaceobject_8h_structcons__pointer}{cons\_pointer}}\ pointer\ )\ \{}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00053}00053\ \ \ \ \ \mbox{\hyperlink{fopen_8h_a014681924c4591cdcc58d12017611e31}{url\_fputwc}}(\ btowc(\ \textcolor{charliteral}{'"{}'}\ ),\ output\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00054}00054\ \ \ \ \ \mbox{\hyperlink{print_8c_ac2d8fe22fdcb308c4818226e70ad097e}{print\_string\_contents}}(\ output,\ pointer\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00055}00055\ \ \ \ \ \mbox{\hyperlink{fopen_8h_a014681924c4591cdcc58d12017611e31}{url\_fputwc}}(\ btowc(\ \textcolor{charliteral}{'"{}'}\ ),\ output\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00056}00056\ \}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00057}00057\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00058}00058\ \textcolor{comment}{/**}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00059}00059\ \textcolor{comment}{\ *\ Print\ a\ single\ list\ cell\ (cons\ cell)\ indicated\ by\ \`{}pointer`\ to\ the}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00060}00060\ \textcolor{comment}{\ *\ stream\ indicated\ by\ \`{}output`.\ if\ \`{}initial\_space`\ is\ \`{}true`,\ prepend}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00061}00061\ \textcolor{comment}{\ *\ a\ space\ character.}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00062}00062\ \textcolor{comment}{\ */}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00063}00063\ \textcolor{keywordtype}{void}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00064}\mbox{\hyperlink{print_8c_a351a6d7266d9f087c704ebf693c17e27}{00064}}\ \mbox{\hyperlink{print_8c_a351a6d7266d9f087c704ebf693c17e27}{print\_list\_contents}}(\ \mbox{\hyperlink{fopen_8h_structfcurl__data}{URL\_FILE}}\ *output,\ \textcolor{keyword}{struct}\ \mbox{\hyperlink{consspaceobject_8h_structcons__pointer}{cons\_pointer}}\ pointer,}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00065}00065\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordtype}{bool}\ initial\_space\ )\ \{}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00066}00066\ \ \ \ \ \textcolor{keyword}{struct\ }\mbox{\hyperlink{consspaceobject_8h_structcons__space__object}{cons\_space\_object}}\ *cell\ =\ \&\mbox{\hyperlink{consspaceobject_8h_af31e1da9438d7ae4410864ecc901b131}{pointer2cell}}(\ pointer\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00067}00067\ }
\DoxyCodeLine{\Hypertarget{print_8c_source_l00068}00068\ \ \ \ \ \textcolor{keywordflow}{switch}\ (\ cell-\/>\mbox{\hyperlink{consspaceobject_8h_a21cb645ce4ae20308447dcd59534bf38}{tag}}.value\ )\ \{}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00069}00069\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{case}\ \mbox{\hyperlink{consspaceobject_8h_a6a5f5b042aa23509409e0fd00a91ac2e}{CONSTV}}:}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00070}00070\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (\ initial\_space\ )\ \{}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00071}00071\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{fopen_8h_a014681924c4591cdcc58d12017611e31}{url\_fputwc}}(\ btowc(\ \textcolor{charliteral}{'\ '}\ ),\ output\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00072}00072\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00073}00073\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{print_8c_ad0e1c7bb094ddb18a30d5141e836991b}{print}}(\ output,\ cell-\/>\mbox{\hyperlink{consspaceobject_8h_a259b3afe36776f8ba8498fdf95904f25}{payload}}.cons.car\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00074}00074\ }
\DoxyCodeLine{\Hypertarget{print_8c_source_l00075}00075\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{print_8c_a351a6d7266d9f087c704ebf693c17e27}{print\_list\_contents}}(\ output,\ cell-\/>\mbox{\hyperlink{consspaceobject_8h_a259b3afe36776f8ba8498fdf95904f25}{payload}}.cons.cdr,\ \textcolor{keyword}{true}\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00076}00076\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{break};}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00077}00077\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{case}\ \mbox{\hyperlink{consspaceobject_8h_aa460b371cdb05b1db5afb10c39af3c47}{NILTV}}:}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00078}00078\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{break};}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00079}00079\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{default}:}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00080}00080\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{fopen_8h_ac88d8de2499a3cdc3a4c7c4f5a4424e8}{url\_fwprintf}}(\ output,\ L\textcolor{stringliteral}{"{}\ .\ "{}}\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00081}00081\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{print_8c_ad0e1c7bb094ddb18a30d5141e836991b}{print}}(\ output,\ pointer\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00082}00082\ \ \ \ \ \}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00083}00083\ \}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00084}00084\ }
\DoxyCodeLine{\Hypertarget{print_8c_source_l00085}\mbox{\hyperlink{print_8c_a67cde45611585537d16a005a175c2ba7}{00085}}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{print_8c_a67cde45611585537d16a005a175c2ba7}{print\_list}}(\ \mbox{\hyperlink{fopen_8h_structfcurl__data}{URL\_FILE}}\ *output,\ \textcolor{keyword}{struct}\ \mbox{\hyperlink{consspaceobject_8h_structcons__pointer}{cons\_pointer}}\ pointer\ )\ \{}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00086}00086\ \ \ \ \ \mbox{\hyperlink{fopen_8h_a862d5262a566cd54dab0677ebf57371d}{url\_fputws}}(\ L\textcolor{stringliteral}{"{}("{}},\ output\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00087}00087\ \ \ \ \ \mbox{\hyperlink{print_8c_a351a6d7266d9f087c704ebf693c17e27}{print\_list\_contents}}(\ output,\ pointer,\ \textcolor{keyword}{false}\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00088}00088\ \ \ \ \ \mbox{\hyperlink{fopen_8h_a862d5262a566cd54dab0677ebf57371d}{url\_fputws}}(\ L\textcolor{stringliteral}{"{})"{}},\ output\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00089}00089\ \}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00090}00090\ }
\DoxyCodeLine{\Hypertarget{print_8c_source_l00091}\mbox{\hyperlink{print_8c_ab7de400b512398e0651bed78a7d5072d}{00091}}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{print_8c_ab7de400b512398e0651bed78a7d5072d}{print\_map}}(\ \mbox{\hyperlink{fopen_8h_structfcurl__data}{URL\_FILE}}\ *output,\ \textcolor{keyword}{struct}\ \mbox{\hyperlink{consspaceobject_8h_structcons__pointer}{cons\_pointer}}\ map\ )\ \{}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00092}00092\ \ \ \ \ \textcolor{keywordflow}{if}\ (\ \mbox{\hyperlink{vectorspace_8h_a8587c3e6f9520c9f7810ed351b27c831}{hashmapp}}(\ map\ )\ )\ \{}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00093}00093\ \ \ \ \ \ \ \ \ \textcolor{keyword}{struct\ }\mbox{\hyperlink{vectorspace_8h_structvector__space__object}{vector\_space\_object}}\ *vso\ =\ \mbox{\hyperlink{vectorspace_8h_a6961330e553c390cec21939135c8c124}{pointer\_to\_vso}}(\ map\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00094}00094\ }
\DoxyCodeLine{\Hypertarget{print_8c_source_l00095}00095\ \ \ \ \ \ \ \ \ \mbox{\hyperlink{fopen_8h_a014681924c4591cdcc58d12017611e31}{url\_fputwc}}(\ btowc(\ \textcolor{charliteral}{'\{'}\ ),\ output\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00096}00096\ }
\DoxyCodeLine{\Hypertarget{print_8c_source_l00097}00097\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{for}\ (\ \textcolor{keyword}{struct}\ \mbox{\hyperlink{consspaceobject_8h_structcons__pointer}{cons\_pointer}}\ ks\ =\ \mbox{\hyperlink{intern_8c_a808e8e6f10a04c33a3fa937fba0e9d56}{hashmap\_keys}}(\ map\ );\ !\mbox{\hyperlink{consspaceobject_8h_a758a42bfac22caaf66e29c666c91702d}{nilp}}(\ ks\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00098}00098\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ks\ =\ \mbox{\hyperlink{consspaceobject_8c_a36feb8e8c928ce9ffb6fb80167cc1f04}{c\_cdr}}(\ ks\ )\ )\ \{}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00099}00099\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{struct\ }\mbox{\hyperlink{consspaceobject_8h_structcons__pointer}{cons\_pointer}}\ key\ =\ \mbox{\hyperlink{consspaceobject_8c_ac683bad260c334cc2e5fad1f7d0c7b52}{c\_car}}(\ ks\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00100}00100\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{print_8c_ad0e1c7bb094ddb18a30d5141e836991b}{print}}(\ output,\ key\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00101}00101\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{fopen_8h_a014681924c4591cdcc58d12017611e31}{url\_fputwc}}(\ btowc(\ \textcolor{charliteral}{'\ '}\ ),\ output\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00102}00102\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{print_8c_ad0e1c7bb094ddb18a30d5141e836991b}{print}}(\ output,\ \mbox{\hyperlink{intern_8c_a1a35271cbbb62363f57943aa19b2b592}{hashmap\_get}}(\ map,\ key\ )\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00103}00103\ }
\DoxyCodeLine{\Hypertarget{print_8c_source_l00104}00104\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (\ !\mbox{\hyperlink{consspaceobject_8h_a758a42bfac22caaf66e29c666c91702d}{nilp}}(\ \mbox{\hyperlink{consspaceobject_8c_a36feb8e8c928ce9ffb6fb80167cc1f04}{c\_cdr}}(\ ks\ )\ )\ )\ \{}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00105}00105\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{fopen_8h_a862d5262a566cd54dab0677ebf57371d}{url\_fputws}}(\ L\textcolor{stringliteral}{"{},\ "{}},\ output\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00106}00106\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00107}00107\ \ \ \ \ \ \ \ \ \}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00108}00108\ }
\DoxyCodeLine{\Hypertarget{print_8c_source_l00109}00109\ \ \ \ \ \ \ \ \ \mbox{\hyperlink{fopen_8h_a014681924c4591cdcc58d12017611e31}{url\_fputwc}}(\ btowc(\ \textcolor{charliteral}{'\}'}\ ),\ output\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00110}00110\ \ \ \ \ \}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00111}00111\ \}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00112}00112\ }
\DoxyCodeLine{\Hypertarget{print_8c_source_l00113}\mbox{\hyperlink{print_8c_a31d87b1d7feebc9fe7a98b8f6863ad93}{00113}}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{print_8c_a31d87b1d7feebc9fe7a98b8f6863ad93}{print\_vso}}(\ \mbox{\hyperlink{fopen_8h_structfcurl__data}{URL\_FILE}}\ *output,\ \textcolor{keyword}{struct}\ \mbox{\hyperlink{consspaceobject_8h_structcons__pointer}{cons\_pointer}}\ pointer\ )\ \{}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00114}00114\ \ \ \ \ \textcolor{keyword}{struct\ }\mbox{\hyperlink{vectorspace_8h_structvector__space__object}{vector\_space\_object}}\ *vso\ =\ \mbox{\hyperlink{vectorspace_8h_a6961330e553c390cec21939135c8c124}{pointer\_to\_vso}}(\ pointer\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00115}00115\ \ \ \ \ \textcolor{keywordflow}{switch}\ (\ vso-\/>\mbox{\hyperlink{vectorspace_8h_ab85f7d1e94d2f1083b6ce5a136c859f2}{header}}.\mbox{\hyperlink{vectorspace_8h_ad427b8802abb07e6d40728768115d127}{tag}}.value\ )\ \{}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00116}00116\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{case}\ \mbox{\hyperlink{vectorspace_8h_a845017e723bca337605494a0b9be6d5c}{HASHTV}}:}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00117}00117\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{print_8c_ab7de400b512398e0651bed78a7d5072d}{print\_map}}(\ output,\ pointer\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00118}00118\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{break};}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00119}00119\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{//\ \(\backslash\)todo:\ others.}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00120}00120\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{default}:}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00121}00121\ \ \ \ \ \ \ \ \ \ \ \ \ fwprintf(\ stderr,\ L\textcolor{stringliteral}{"{}Unrecognised\ vector-\/space\ type\ '\%d'\(\backslash\)n"{}},}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00122}00122\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ vso-\/>\mbox{\hyperlink{vectorspace_8h_ab85f7d1e94d2f1083b6ce5a136c859f2}{header}}.\mbox{\hyperlink{vectorspace_8h_ad427b8802abb07e6d40728768115d127}{tag}}.value\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00123}00123\ \ \ \ \ \}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00124}00124\ \}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00125}00125\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00126}00126\ \textcolor{comment}{/**}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00127}00127\ \textcolor{comment}{\ *\ stolen\ from\ https://stackoverflow.com/questions/11656241/how-\/to-\/print-\/uint128-\/t-\/number-\/using-\/gcc}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00128}00128\ \textcolor{comment}{\ */}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00129}\mbox{\hyperlink{print_8c_af248690e450857cb04a6c1108f76dc3a}{00129}}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{print_8c_af248690e450857cb04a6c1108f76dc3a}{print\_128bit}}(\ \mbox{\hyperlink{fopen_8h_structfcurl__data}{URL\_FILE}}\ *output,\ \_\_int128\_t\ n\ )\ \{}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00130}00130\ \ \ \ \ \textcolor{keywordflow}{if}\ (\ n\ ==\ 0\ )\ \{}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00131}00131\ \ \ \ \ \ \ \ \ fwprintf(\ stderr,\ L\textcolor{stringliteral}{"{}0"{}}\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00132}00132\ \ \ \ \ \}\ \textcolor{keywordflow}{else}\ \{}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00133}00133\ \ \ \ \ \ \ \ \ \textcolor{keywordtype}{char}\ str[40]\ =\ \{\ 0\ \};\ \ \ \textcolor{comment}{//\ log10(1\ <<\ 128)\ +\ '\(\backslash\)0'}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00134}00134\ \ \ \ \ \ \ \ \ \textcolor{keywordtype}{char}\ *s\ =\ str\ +\ \textcolor{keyword}{sizeof}(\ str\ )\ -\/\ 1;\ \ \textcolor{comment}{//\ start\ at\ the\ end}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00135}00135\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{while}\ (\ n\ !=\ 0\ )\ \{}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00136}00136\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (\ s\ ==\ str\ )}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00137}00137\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return};\ \ \ \ \ \ \ \ \ \textcolor{comment}{//\ never\ happens}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00138}00138\ }
\DoxyCodeLine{\Hypertarget{print_8c_source_l00139}00139\ \ \ \ \ \ \ \ \ \ \ \ \ *-\/-\/s\ =\ \textcolor{stringliteral}{"{}0123456789"{}}[n\ \%\ 10];\ \ \textcolor{comment}{//\ save\ last\ digit}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00140}00140\ \ \ \ \ \ \ \ \ \ \ \ \ n\ /=\ 10;\ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{//\ drop\ it}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00141}00141\ \ \ \ \ \ \ \ \ \}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00142}00142\ \ \ \ \ \ \ \ \ \mbox{\hyperlink{fopen_8h_ac88d8de2499a3cdc3a4c7c4f5a4424e8}{url\_fwprintf}}(\ output,\ L\textcolor{stringliteral}{"{}\%s"{}},\ s\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00143}00143\ \ \ \ \ \}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00144}00144\ \}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00145}00145\ }
\DoxyCodeLine{\Hypertarget{print_8c_source_l00146}00146\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00147}00147\ \textcolor{comment}{/**}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00148}00148\ \textcolor{comment}{\ *\ Print\ the\ cons-\/space\ object\ indicated\ by\ \`{}pointer`\ to\ the\ stream\ indicated}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00149}00149\ \textcolor{comment}{\ *\ by\ \`{}output`.}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00150}00150\ \textcolor{comment}{\ */}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00151}\mbox{\hyperlink{print_8c_ad0e1c7bb094ddb18a30d5141e836991b}{00151}}\ \textcolor{keyword}{struct\ }\mbox{\hyperlink{consspaceobject_8h_structcons__pointer}{cons\_pointer}}\ \mbox{\hyperlink{print_8c_ad0e1c7bb094ddb18a30d5141e836991b}{print}}(\ \mbox{\hyperlink{fopen_8h_structfcurl__data}{URL\_FILE}}\ *output,\ \textcolor{keyword}{struct\ }\mbox{\hyperlink{consspaceobject_8h_structcons__pointer}{cons\_pointer}}\ pointer\ )\ \{}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00152}00152\ \ \ \ \ \textcolor{keyword}{struct\ }\mbox{\hyperlink{consspaceobject_8h_structcons__space__object}{cons\_space\_object}}\ cell\ =\ \mbox{\hyperlink{consspaceobject_8h_af31e1da9438d7ae4410864ecc901b131}{pointer2cell}}(\ pointer\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00153}00153\ \ \ \ \ \textcolor{keywordtype}{char}\ *buffer;}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00154}00154\ }
\DoxyCodeLine{\Hypertarget{print_8c_source_l00155}00155\ \ \ \ \ \textcolor{comment}{/*}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00156}00156\ \textcolor{comment}{\ \ \ \ \ *\ Because\ tags\ have\ values\ as\ well\ as\ bytes,\ this\ if\ ...\ else\ if}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00157}00157\ \textcolor{comment}{\ \ \ \ \ *\ statement\ can\ ultimately\ be\ replaced\ by\ a\ switch,\ which\ will\ be\ neater.}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00158}00158\ \textcolor{comment}{\ \ \ \ \ */}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00159}00159\ \ \ \ \ \textcolor{keywordflow}{switch}\ (\ cell.\mbox{\hyperlink{consspaceobject_8h_a21cb645ce4ae20308447dcd59534bf38}{tag}}.value\ )\ \{}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00160}00160\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{case}\ \mbox{\hyperlink{consspaceobject_8h_a6a5f5b042aa23509409e0fd00a91ac2e}{CONSTV}}:}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00161}00161\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{print_8c_a67cde45611585537d16a005a175c2ba7}{print\_list}}(\ output,\ pointer\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00162}00162\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{break};}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00163}00163\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{case}\ \mbox{\hyperlink{consspaceobject_8h_aa66d7497baaa8e7a255c448e8b08e5ee}{EXCEPTIONTV}}:}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00164}00164\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{fopen_8h_a862d5262a566cd54dab0677ebf57371d}{url\_fputws}}(\ L\textcolor{stringliteral}{"{}\(\backslash\)nException:\ "{}},\ output\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00165}00165\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{stack_8c_ac0d2b280590cff44f75908a88e24f8b4}{dump\_stack\_trace}}(\ output,\ pointer\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00166}00166\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{break};}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00167}00167\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{case}\ \mbox{\hyperlink{consspaceobject_8h_a291e48d2612ab2b3b86fa677d13824b3}{FUNCTIONTV}}:}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00168}00168\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{fopen_8h_a862d5262a566cd54dab0677ebf57371d}{url\_fputws}}(\ L\textcolor{stringliteral}{"{}<Function:\ "{}},\ output\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00169}00169\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{print_8c_ad0e1c7bb094ddb18a30d5141e836991b}{print}}(\ output,\ cell.\mbox{\hyperlink{consspaceobject_8h_a259b3afe36776f8ba8498fdf95904f25}{payload}}.function.meta\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00170}00170\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{fopen_8h_a014681924c4591cdcc58d12017611e31}{url\_fputwc}}(\ L\textcolor{charliteral}{'>'},\ output\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00171}00171\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{break};}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00172}00172\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{case}\ \mbox{\hyperlink{consspaceobject_8h_a4e0e4ea1576f98a0094f57bf918ded96}{INTEGERTV}}:}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00173}00173\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{struct\ }\mbox{\hyperlink{consspaceobject_8h_structcons__pointer}{cons\_pointer}}\ s\ =\ \mbox{\hyperlink{integer_8c_aa9d39b6446057bc1edc01113f67db026}{integer\_to\_string}}(\ pointer,\ 10\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00174}00174\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{print_8c_ac2d8fe22fdcb308c4818226e70ad097e}{print\_string\_contents}}(\ output,\ s\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00175}00175\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{consspaceobject_8h_aecb4a52465163e0377356bcaa85539bf}{dec\_ref}}(\ s\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00176}00176\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{break};}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00177}00177\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{case}\ \mbox{\hyperlink{consspaceobject_8h_a027cdb41b87676d9d2fb55dd058c0078}{KEYTV}}:}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00178}00178\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{fopen_8h_a862d5262a566cd54dab0677ebf57371d}{url\_fputws}}(\ L\textcolor{stringliteral}{"{}:"{}},\ output\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00179}00179\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{print_8c_ac2d8fe22fdcb308c4818226e70ad097e}{print\_string\_contents}}(\ output,\ pointer\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00180}00180\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{break};}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00181}00181\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{case}\ \mbox{\hyperlink{consspaceobject_8h_ad4ddcddc7db74650f23a33d0e970db30}{LAMBDATV}}:\{}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00182}00182\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{fopen_8h_a862d5262a566cd54dab0677ebf57371d}{url\_fputws}}(\ L\textcolor{stringliteral}{"{}<Anonymous\ Function:\ "{}},\ output\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00183}00183\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{struct\ }\mbox{\hyperlink{consspaceobject_8h_structcons__pointer}{cons\_pointer}}\ to\_print\ =}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00184}00184\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{consspaceobject_8h_afff9c83c8c250837b5737c11e21cc4ca}{make\_cons}}(\ \mbox{\hyperlink{consspaceobject_8h_ac18813a5587f81344b2a35977657b09b}{c\_string\_to\_lisp\_symbol}}(\ L\textcolor{stringliteral}{"{}\(\backslash\)u03bb"{}}\ ),}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00185}00185\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{consspaceobject_8h_afff9c83c8c250837b5737c11e21cc4ca}{make\_cons}}(\ cell.\mbox{\hyperlink{consspaceobject_8h_a259b3afe36776f8ba8498fdf95904f25}{payload}}.lambda.args,}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00186}00186\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ cell.\mbox{\hyperlink{consspaceobject_8h_a259b3afe36776f8ba8498fdf95904f25}{payload}}.lambda.body\ )\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00187}00187\ }
\DoxyCodeLine{\Hypertarget{print_8c_source_l00188}00188\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{print_8c_ad0e1c7bb094ddb18a30d5141e836991b}{print}}(\ output,\ to\_print\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00189}00189\ }
\DoxyCodeLine{\Hypertarget{print_8c_source_l00190}00190\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{consspaceobject_8h_aecb4a52465163e0377356bcaa85539bf}{dec\_ref}}(\ to\_print\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00191}00191\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{fopen_8h_a014681924c4591cdcc58d12017611e31}{url\_fputwc}}(\ L\textcolor{charliteral}{'>'},\ output\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00192}00192\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00193}00193\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{break};}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00194}00194\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{case}\ \mbox{\hyperlink{consspaceobject_8h_aa460b371cdb05b1db5afb10c39af3c47}{NILTV}}:}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00195}00195\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{fopen_8h_ac88d8de2499a3cdc3a4c7c4f5a4424e8}{url\_fwprintf}}(\ output,\ L\textcolor{stringliteral}{"{}nil"{}}\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00196}00196\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{break};}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00197}00197\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{case}\ \mbox{\hyperlink{consspaceobject_8h_a7f953a7cdd4f2ce5eab1738da32536b3}{NLAMBDATV}}:\{}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00198}00198\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{fopen_8h_a862d5262a566cd54dab0677ebf57371d}{url\_fputws}}(\ L\textcolor{stringliteral}{"{}<Anonymous\ Special\ Form:\ "{}},\ output\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00199}00199\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{struct\ }\mbox{\hyperlink{consspaceobject_8h_structcons__pointer}{cons\_pointer}}\ to\_print\ =}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00200}00200\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{consspaceobject_8h_afff9c83c8c250837b5737c11e21cc4ca}{make\_cons}}(\ \mbox{\hyperlink{consspaceobject_8h_ac18813a5587f81344b2a35977657b09b}{c\_string\_to\_lisp\_symbol}}(\ L\textcolor{stringliteral}{"{}n\(\backslash\)u03bb"{}}\ ),}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00201}00201\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{consspaceobject_8h_afff9c83c8c250837b5737c11e21cc4ca}{make\_cons}}(\ cell.\mbox{\hyperlink{consspaceobject_8h_a259b3afe36776f8ba8498fdf95904f25}{payload}}.lambda.args,}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00202}00202\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ cell.\mbox{\hyperlink{consspaceobject_8h_a259b3afe36776f8ba8498fdf95904f25}{payload}}.lambda.body\ )\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00203}00203\ }
\DoxyCodeLine{\Hypertarget{print_8c_source_l00204}00204\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{print_8c_ad0e1c7bb094ddb18a30d5141e836991b}{print}}(\ output,\ to\_print\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00205}00205\ }
\DoxyCodeLine{\Hypertarget{print_8c_source_l00206}00206\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{consspaceobject_8h_aecb4a52465163e0377356bcaa85539bf}{dec\_ref}}(\ to\_print\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00207}00207\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{fopen_8h_a014681924c4591cdcc58d12017611e31}{url\_fputwc}}(\ L\textcolor{charliteral}{'>'},\ output\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00208}00208\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00209}00209\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{break};}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00210}00210\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{case}\ \mbox{\hyperlink{consspaceobject_8h_a63bde20c8b029f5ac3ffd93b36dfddc9}{RATIOTV}}:}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00211}00211\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{print_8c_ad0e1c7bb094ddb18a30d5141e836991b}{print}}(\ output,\ cell.\mbox{\hyperlink{consspaceobject_8h_a259b3afe36776f8ba8498fdf95904f25}{payload}}.ratio.dividend\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00212}00212\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{fopen_8h_a862d5262a566cd54dab0677ebf57371d}{url\_fputws}}(\ L\textcolor{stringliteral}{"{}/"{}},\ output\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00213}00213\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{print_8c_ad0e1c7bb094ddb18a30d5141e836991b}{print}}(\ output,\ cell.\mbox{\hyperlink{consspaceobject_8h_a259b3afe36776f8ba8498fdf95904f25}{payload}}.ratio.divisor\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00214}00214\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{break};}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00215}00215\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{case}\ \mbox{\hyperlink{consspaceobject_8h_adaf34dffde713283cf269225ee0343a8}{READTV}}:}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00216}00216\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{fopen_8h_ac88d8de2499a3cdc3a4c7c4f5a4424e8}{url\_fwprintf}}(\ output,\ L\textcolor{stringliteral}{"{}<Input\ stream:\ "{}}\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00217}00217\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{print_8c_ad0e1c7bb094ddb18a30d5141e836991b}{print}}(\ output,\ cell.\mbox{\hyperlink{consspaceobject_8h_a259b3afe36776f8ba8498fdf95904f25}{payload}}.stream.meta\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00218}00218\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{fopen_8h_a014681924c4591cdcc58d12017611e31}{url\_fputwc}}(\ L\textcolor{charliteral}{'>'},\ output\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00219}00219\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{break};}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00220}00220\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{case}\ \mbox{\hyperlink{consspaceobject_8h_a964051b1bf348dbf06440df0a37bcde4}{REALTV}}:}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00221}00221\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{/*\ \(\backslash\)todo\ using\ the\ C\ heap\ is\ a\ bad\ plan\ because\ it\ will\ fragment.}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00222}00222\ \textcolor{comment}{\ \ \ \ \ \ \ \ \ \ \ \ \ *\ As\ soon\ as\ I\ have\ working\ vector\ space\ I'll\ use\ a\ special\ purpose}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00223}00223\ \textcolor{comment}{\ \ \ \ \ \ \ \ \ \ \ \ \ *\ vector\ space\ object\ */}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00224}00224\ \ \ \ \ \ \ \ \ \ \ \ \ buffer\ =\ (\ \textcolor{keywordtype}{char}\ *\ )\ malloc(\ 24\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00225}00225\ \ \ \ \ \ \ \ \ \ \ \ \ memset(\ buffer,\ 0,\ 24\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00226}00226\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{/*\ format\ it\ really\ long,\ then\ clear\ the\ trailing\ zeros\ */}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00227}00227\ \ \ \ \ \ \ \ \ \ \ \ \ sprintf(\ buffer,\ \textcolor{stringliteral}{"{}\%-\/.23Lg"{}},\ cell.\mbox{\hyperlink{consspaceobject_8h_a259b3afe36776f8ba8498fdf95904f25}{payload}}.real.value\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00228}00228\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (\ strchr(\ buffer,\ \textcolor{charliteral}{'.'}\ )\ !=\ NULL\ )\ \{}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00229}00229\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{for}\ (\ \textcolor{keywordtype}{int}\ i\ =\ strlen(\ buffer\ )\ -\/\ 1;\ buffer[i]\ ==\ \textcolor{charliteral}{'0'};\ i-\/-\/\ )\ \{}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00230}00230\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ buffer[i]\ =\ \textcolor{charliteral}{'\(\backslash\)0'};}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00231}00231\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00232}00232\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00233}00233\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{fopen_8h_ac88d8de2499a3cdc3a4c7c4f5a4424e8}{url\_fwprintf}}(\ output,\ L\textcolor{stringliteral}{"{}\%s"{}},\ buffer\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00234}00234\ \ \ \ \ \ \ \ \ \ \ \ \ free(\ buffer\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00235}00235\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{break};}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00236}00236\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{case}\ \mbox{\hyperlink{consspaceobject_8h_a3a4310cf1909a3b9c167a945ef71d3e1}{STRINGTV}}:}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00237}00237\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{print_8c_a0b378eb705a92dd36e5cea43b2eecfc8}{print\_string}}(\ output,\ pointer\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00238}00238\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{break};}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00239}00239\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{case}\ \mbox{\hyperlink{consspaceobject_8h_a1cef10aef0e023839dbcfe6d5c305393}{SYMBOLTV}}:}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00240}00240\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{print_8c_ac2d8fe22fdcb308c4818226e70ad097e}{print\_string\_contents}}(\ output,\ pointer\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00241}00241\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{break};}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00242}00242\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{case}\ \mbox{\hyperlink{consspaceobject_8h_a0569cc92977f62ba26b81c00e661b973}{SPECIALTV}}:}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00243}00243\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{fopen_8h_ac88d8de2499a3cdc3a4c7c4f5a4424e8}{url\_fwprintf}}(\ output,\ L\textcolor{stringliteral}{"{}<Special\ form:\ "{}}\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00244}00244\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{print_8c_ad0e1c7bb094ddb18a30d5141e836991b}{print}}(\ output,\ cell.\mbox{\hyperlink{consspaceobject_8h_a259b3afe36776f8ba8498fdf95904f25}{payload}}.special.meta\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00245}00245\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{fopen_8h_a014681924c4591cdcc58d12017611e31}{url\_fputwc}}(\ L\textcolor{charliteral}{'>'},\ output\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00246}00246\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{break};}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00247}00247\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{case}\ \mbox{\hyperlink{consspaceobject_8h_a4628563add0c56fbe9785f015e159022}{TIMETV}}:}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00248}00248\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{fopen_8h_ac88d8de2499a3cdc3a4c7c4f5a4424e8}{url\_fwprintf}}(\ output,\ L\textcolor{stringliteral}{"{}<Time:\ "{}}\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00249}00249\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{print_8c_a0b378eb705a92dd36e5cea43b2eecfc8}{print\_string}}(\ output,\ \mbox{\hyperlink{psse__time_8c_a186e6b6a13bf5f7ba53bbcd1e546f75f}{time\_to\_string}}(\ pointer\ )\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00250}00250\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{fopen_8h_a862d5262a566cd54dab0677ebf57371d}{url\_fputws}}(\ L\textcolor{stringliteral}{"{};\ "{}},\ output\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00251}00251\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{print_8c_af248690e450857cb04a6c1108f76dc3a}{print\_128bit}}(\ output,\ \mbox{\hyperlink{consspaceobject_8h_af31e1da9438d7ae4410864ecc901b131}{pointer2cell}}(\ pointer\ ).payload.time.value\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00252}00252\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{fopen_8h_a014681924c4591cdcc58d12017611e31}{url\_fputwc}}(\ L\textcolor{charliteral}{'>'},\ output\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00253}00253\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{break};}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00254}00254\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{case}\ \mbox{\hyperlink{consspaceobject_8h_a8627f45d97a6bd63ad4063b3fe688f2e}{TRUETV}}:}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00255}00255\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{fopen_8h_ac88d8de2499a3cdc3a4c7c4f5a4424e8}{url\_fwprintf}}(\ output,\ L\textcolor{stringliteral}{"{}t"{}}\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00256}00256\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{break};}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00257}00257\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{case}\ \mbox{\hyperlink{consspaceobject_8h_a0e422043a4797ec1a81f7460486e09da}{VECTORPOINTTV}}:}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00258}00258\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{print_8c_a31d87b1d7feebc9fe7a98b8f6863ad93}{print\_vso}}(\ output,\ pointer\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00259}00259\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{break};}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00260}00260\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{case}\ \mbox{\hyperlink{consspaceobject_8h_ad677447e4a46d52d256d0fe671e2d663}{WRITETV}}:}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00261}00261\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{fopen_8h_ac88d8de2499a3cdc3a4c7c4f5a4424e8}{url\_fwprintf}}(\ output,\ L\textcolor{stringliteral}{"{}<Output\ stream:\ "{}}\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00262}00262\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{print_8c_ad0e1c7bb094ddb18a30d5141e836991b}{print}}(\ output,\ cell.\mbox{\hyperlink{consspaceobject_8h_a259b3afe36776f8ba8498fdf95904f25}{payload}}.stream.meta\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00263}00263\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{fopen_8h_a014681924c4591cdcc58d12017611e31}{url\_fputwc}}(\ L\textcolor{charliteral}{'>'},\ output\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00264}00264\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{break};}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00265}00265\ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{default}:}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00266}00266\ \ \ \ \ \ \ \ \ \ \ \ \ fwprintf(\ stderr,}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00267}00267\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ L\textcolor{stringliteral}{"{}Error:\ Unrecognised\ tag\ value\ \%d\ (\%4.4s)\(\backslash\)n"{}},}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00268}00268\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ cell.\mbox{\hyperlink{consspaceobject_8h_a21cb645ce4ae20308447dcd59534bf38}{tag}}.value,\ \&cell.\mbox{\hyperlink{consspaceobject_8h_a21cb645ce4ae20308447dcd59534bf38}{tag}}.bytes[0]\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00269}00269\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{break};}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00270}00270\ \ \ \ \ \}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00271}00271\ }
\DoxyCodeLine{\Hypertarget{print_8c_source_l00272}00272\ \ \ \ \ \textcolor{keywordflow}{return}\ pointer;}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00273}00273\ \}}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00274}00274\ }
\DoxyCodeLine{\Hypertarget{print_8c_source_l00275}\mbox{\hyperlink{print_8c_acbb27ea6b8e7d86018108198489a09b2}{00275}}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{print_8c_acbb27ea6b8e7d86018108198489a09b2}{println}}(\ \mbox{\hyperlink{fopen_8h_structfcurl__data}{URL\_FILE}}\ *output\ )\ \{}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00276}00276\ \ \ \ \ \mbox{\hyperlink{fopen_8h_a862d5262a566cd54dab0677ebf57371d}{url\_fputws}}(\ L\textcolor{stringliteral}{"{}\(\backslash\)n"{}},\ output\ );}
\DoxyCodeLine{\Hypertarget{print_8c_source_l00277}00277\ \}}

\end{DoxyCode}
