- while (n <= fin){\r
- if (fast_inspect(Par,n)){\r
- if (tag == PCDATA_TAG_ID ) { \r
-\r
- if (no_text)\r
- myfputs("<$/>",fp);\r
- else{\r
- read = myfprintf((const char*) current_text, fp);\r
- current_text += (read + 1);\r
- };\r
- n+=2; // skip closing $\r
- tag = Tag(n);\r
- \r
- }\r
- else {\r
- myfputc('<',fp);\r
- tagstr = (uchar*) GetTagNameByRef(tag);\r
- myfputs((const char*) tagstr ,fp);\r
- n++;\r
- if (fast_inspect(Par,n)) {\r
- st.push_back(tagstr);\r
- tag = Tag(n);\r
- if (tag == ATTRIBUTE_TAG_ID){\r
- n++;\r
- if (no_text) myfputs("><@@>",fp);\r
- while (fast_inspect(Par,n)){\r
- if (no_text) {\r
- myfputc('<',fp);\r
- myfputs((const char*) &(GetTagNameByRef(Tag(n))[3]),fp);\r
- myfputc('>',fp);\r
- myfputs("<$@/></",fp);\r
- myfputs((const char*) &(GetTagNameByRef(Tag(n))[3]),fp);\r
- myfputc('>',fp);\r
- n+= 4;\r
- }\r
- else {\r
- myfputc(' ',fp);\r
- myfputs((const char*) &(GetTagNameByRef(Tag(n))[3]),fp);\r
- n++;\r
- myfputs("=\"",fp);\r
- read = myfprintf((const char*) current_text,fp);\r
- current_text += (read + 1);\r
- myfputc('"',fp);\r
- n+=3;\r
- }\r
- };\r
- if (no_text) \r
- myfputs("</@@>",fp);\r
- else myfputc('>',fp);\r
- n++;\r
- tag=Tag(n);\r
- }\r