¼Ò½º ÄÚµå ³»¿¡ header¸¦ ÀÛ¼ºÇÏ´Â °ÍÀ¸·Î ¹®¼È¸¦ À§ÇÑ Áغñ´Â ¸ðµÎ ³¡³´Ù.ROBODocÀÇ header´Â ¸Å¿ì °£´ÜÇϸ鼵µ ü°èÀûÀ¸·Î ±¸¼ºµÇ¾î ÀÖ´Ù.
DocumentationÀ» À§ÇØ ¼Ò½ºÄÚµå ³»¿¡ »ðÀԵǴ ¿ä¼Ò´Â Header¶ó°í ÇÑ´Ù. Header´Â begin marker¿Í end marker, itemÀ¸·Î ±¸¼ºµÇ¾î ¹®¼È ÀÛ¾÷ÀÇ ÇÑ ºí·ÏÀ» ÀÌ·é´Ù. ´ÙÀ½ÀÇ ¿¹Á¦¸¦ º¸ÀÚ.
/****f* module-1/killhim * NAME * killhim * SYNOPSYS * int killhim(char *name, char *method, int count) * FUNCTION * ´ë»ó°ú ¼ö´Ü, Ƚ¼ö¸¦ °ñ¶ó ¹æ¹ýÇÏ´Â ÇÔ¼ö´Ù. * INPUT * name -- ´ë»ó * method -- ¼ö´Ü * count -- Ƚ¼ö * RESULT * 0 for success, else an error code return ****** * ¿©±â¿¡ ¾²´Â ÁÖ¼®Àº ¹®¼È µÇÁö ¾Ê´Â´Ù. */ int killhim(char *name,char *method, int count){ if((strcmp(name,"bush"))==0) count *= 100; while(count-- > 0) hithim(name,method); return 0; } |
À§ÀÇ ¿¹Á¦´Â ÇϳªÀÇ header¸¦ ÀÌ·ç°í ÀÖ´Ù. ÀÌ header´Â ¾Æ·¡ÀÇ killhim¿¡ ´ëÇÑ ÁÖ¼®ÀÌÀÚ ¹®¼°¡ µÇ´Â °ÍÀÌ´Ù.
****f* module-1/killhim |
ÀÌ ºÎºÐÀÌ begin markerÀÌ´Ù. Çì´õ°¡ ½ÃÀÛµÊÀ» Ç¥½ÃÇÑ´Ù. Ç÷¡±×¿Í µÚÀÇ °èÃþ¿¡ ´ëÇØ¼´Â µÚ¿¡¼ ¼³¸íÇϰڴÙ.
* NAME * killhim * SYNOPSYS * int killhim(char *name, char *method, int count) |
item ºÎºÐÀÌ´Ù. itemµéÀº Á¤ÀǵǾî ÀÖÀ¸¸ç »ç¿ëÀÚ Á¤ÀǸ¦ Ãß°¡ÇÒ ¼öµµ ÀÖ´Ù.
****** |
end marker´Ù. ÀÌ Ç¥½Ã¸¦ ±âÁØÀ¸·Î header´Â ³¡³´Ù. ÀÌÈÄ¿¡ À̾îÁö´Â ÁÖ¼®Àº robodoc¿¡ ¿µÇâÀ» ÁÖÁö ¸øÇÑ´Ù.
°¢°¢ÀÇ ¸¶Å© ¾Õ¿¡´Â »ç¿ëÇÏ´Â ¾ð¾îÀÇ ÁÖ¼®ÀÌ ºÙ°Ô µÈ´Ù. ´ÙÀ½Àº °¢ ¾ð¾îº°·Î markÇÏ´Â ¹æ½ÄÀÌ´Ù.
/**** C, C++ * *** //**** C++ // //*** (**** Pascal, Modula-2 * *** *) {**** Pascal * *** *} ;**** M68K assembler ; ;*** **** M68K assembler * *** C **** Fortran C C *** REM **** BASIC REM * REM *** %**** LaTeX, TeX, Postscript % %*** #**** Tcl/Tk # #*** **** COBOL * *** --**** Occam -- --*** |**** GNU Assembler | |*** !!**** FORTRAN 90 !! !!*** |
header typeÀº ÇöÀç ÀÛ¼ºÁßÀÎ Çì´õ°¡ ¹«¾ù¿¡ ´ëÇÑ Çì´õÀÎÁö¸¦ ¾Ë·ÁÁØ´Ù. Áï, ÇÔ¼ö¿¡ ´ëÇÑ Çì´õÀÎÁö ¸ðµâ¿¡ ´ëÇÑ Çì´õÀÎÁö¿¡ ´ëÇÑ Ç¥½ÃÀÎ °ÍÀÌ´Ù. Çì´õ¸¦ Ç¥½ÃÇÔÀ¸·Î½á Àε¦½Ì°ú Á¤·ÄÀ» È¿°úÀûÀ¸·Î ÇÒ¼ö ÀÖ°Ô µÈ´Ù.
¾ÕÀÇ begin marker ****f¿¡¼ "f"°¡ ¹Ù·Î Çì´õ ŸÀÔÀÌ´Ù. Áö¿øÇÏ´Â Çì´õ ŸÀÔÀº ¾Æ·¡¿Í °°´Ù.
h -- ¸ðµâ(module in project) f -- ÇÔ¼ö(function) s -- ±¸Á¶Ã¼(structure) c -- Ŭ·¡½º(class) m -- ¸Þ¼Òµå(method) v -- º¯¼ö(variable) d -- »ó¼ö(constant) * -- ÀϹÝ(generic header) |
ROBODoc¿¡ Á¤ÀÇµÈ itemÀº ´ÙÀ½°ú °°À¸¸ç, robodoc.rcÆÄÀÏÀ» ÀÌ¿ëÇØ Ãß°¡ÇÒ ¼ö ÀÖ´Ù.
NAME -- Item name plus a short description.
SYNOPSIS, USAGE -- How to use it.
FUNCTION, DESCRIPTION, PURPOSE -- What does it do.
AUTHOR -- Who wrote it.
CREATION DATE -- When did the work start.
MODIFICATION HISTORY, HISTORY -- Who has done which changes and when.
INPUTS, ARGUMENTS, OPTIONS, PARAMETERS, SWITCHES -- What can we feed into it.
OUTPUT, SIDE EFFECTS -- What output is made.
RESULT, RETURN VALUE -- What do we get returned.
EXAMPLE -- A clear example of the items use.
NOTES -- Any annotations
DIAGNOSTICS --Diagnostic output
WARNINGS, ERRORS -- Warning and error-messages.
BUGS -- Known bugs.
TODO, IDEAS -- What to implement next and ideas.
PORTABILITY -- Where does it come from, where will it work.
SEE ALSO -- References to other functions, man pages, other documentation.
METHODS, NEW METHODS -- OOP methods.
ATTRIBUTES, NEW ATTRIBUTES -- OOP attributes
TAGS -- Tag-item description.
COMMANDS -- Command description.
DERIVED FROM -- OOP super class.
DERIVED BY -- OOP sub class.
USES, CHILDREN -- What modules are used by this one.
USED BY, PARENTS -- Which modules do use this one.
SOURCE -- Source code inclusion.
/****f* module-1/killhim ¿¡¼ module-1/killhim¿¡ ÇØ´çÇÏ´Â ºÎºÐÀÌ sectionÀÌ´Ù. sectionÀº ¹®¼ÀÇ °èÃþȸ¦ À§Çؼ Á¸ÀçÇÑ´Ù. ÇÁ·ÎÁ§Æ®/¸ðµâ/(ÇÔ¼ö ¶Ç´Â º¯¼ö³ª class µî)À¸·Î °èÃþÀ» ³ª´©¾î sectionÀ» Ȱ¿ëÇÏ¸é ¹®¼·Î º¯È¯ÇÒ ¶§ ROBODocÀº À̸¦ ÀνÄÇϰí À妽ÌÇØÁØ´Ù. ¿¹¸¦ µé¾î ´ÙÀ½°ú °°Àº ±¸Á¶ÀÇ ÇÁ·ÎÁ§Æ®°¡ ÀÖ´Ù°í ÇÏÀÚ.
-ProjectA -- module1 -- function1 -- variable1 -- module2 -- function2 -- function3 |
ÀÌ °æ¿ì °¢°¢ÀÇ Çì´õ´Â ´ÙÀ½°ú °°ÀÌ sectionÀ¸·Î ³ª´ ¼ö ÀÖ´Ù.
/****h* ProjectA/module1 ... /****h* ProjectA/module2 ... /****f* module1/function1 ... /****v* module1/variable1 ... /****f* module2/function2 ... /****f* module2/function3 ... |
ÀÌ·¸°Ô sectionÀ» ÁöÁ¤ÇÑ ÈÄ ROBODocÀ» ÀÌ¿ëÇØ HTMLº¯È¯À» ÇÏ¸é ´ÙÀ½°ú °°ÀÌ indexing µÈ´Ù.
1 ProjectA/module1 1.1 module1/function1 1.2 module1/variable1 2 ProjectA/module2 2.1 module2/function2 2.2 moudle2/function3 .. |