рдпрд╣ рдХрдорд╛рдВрдб api-sanity-checker рд╣реИ рдЬрд┐рд╕реЗ рд╣рдорд╛рд░реЗ рдХрдИ рдореБрдлреНрдд рдСрдирд▓рд╛рдЗрди рд╡рд░реНрдХрд╕реНрдЯреЗрд╢рди рдЬреИрд╕реЗ рдХрд┐ рдЙрдмрдВрдЯреВ рдСрдирд▓рд╛рдЗрди, рдлреЗрдбреЛрд░рд╛ рдСрдирд▓рд╛рдЗрди, рд╡рд┐рдВрдбреЛрдЬ рдСрдирд▓рд╛рдЗрди рдПрдореБрд▓реЗрдЯрд░ рдпрд╛ рдореИрдХ рдУрдПрд╕ рдСрдирд▓рд╛рдЗрди рдПрдореБрд▓реЗрдЯрд░ рдореЗрдВ рд╕реЗ рдПрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдСрдирд╡рд░реНрдХреНрд╕ рдлреНрд░реА рд╣реЛрд╕реНрдЯрд┐рдВрдЧ рдкреНрд░рджрд╛рддрд╛ рдореЗрдВ рдЪрд▓рд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдХрд╛рд░реНрдпрдХреНрд░рдо:
рдирд╛рдо
api-sanity-checker - C/C++ рд▓рд╛рдЗрдмреНрд░реЗрд░реА API рдХреЗ рд▓рд┐рдП рдмреБрдирд┐рдпрд╛рджреА рдпреВрдирд┐рдЯ рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХрд╛ рдПрдХ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдЬрдирд░реЗрдЯрд░ред
рд╡рд░реНрдгрди
рдирд╛рдо:
рдПрдкреАрдЖрдИ рд╕реИрдирд┐рдЯреА рдЪреЗрдХрд░ (рдПрдкреАрдЖрдИ-рд╕реИрдирд┐рдЯреА-рдЪреЗрдХрд░) рд╕реА/рд╕реА++ рдХреЗ рд▓рд┐рдП рдмреЗрд╕рд┐рдХ рдпреВрдирд┐рдЯ рдЯреЗрд╕реНрдЯ рдЬреЗрдирд░реЗрдЯ рдХрд░реЗрдВ
рдкреБрд╕реНрддрдХрд╛рд▓рдп рдПрдкреАрдЖрдИ
рд╡рд┐рд╡рд░рдг:
рдПрдкреАрдЖрдИ рд╕реИрдирд┐рдЯреА рдЪреЗрдХрд░ рд╕реА/рд╕реА++ рдХреЗ рд▓рд┐рдП рдмреБрдирд┐рдпрд╛рджреА рдЗрдХрд╛рдИ рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХрд╛ рдПрдХ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдЬрдирд░реЗрдЯрд░ рд╣реИ
рдкреБрд╕реНрддрдХрд╛рд▓рдпред рдпрд╣ рдЬрд▓реНрджреА рд╕реЗ рд╕рд░рд▓ ("рд╕реНрд╡рдЪреНрдЫрддрд╛" рдпрд╛ "рдЙрдерд▓реЗ" рдЧреБрдгрд╡рддреНрддрд╛) рдкрд░реАрдХреНрд╖рдг рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рддрд╛ рд╣реИ
рдПрдкреАрдЖрдИ рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рд▓рд┐рдП рдЙрдирдХреЗ рд╣рд╕реНрддрд╛рдХреНрд╖рд░, рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░ рдкрд░рд┐рднрд╛рд╖рд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдФрд░
рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╣реЗрдбрд░ рдлрд╛рдЗрд▓реЛрдВ рд╕реЗ рд╕реАрдзреЗ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рдмреАрдЪ рд╕рдВрдмрдВрдз
("рд╣реЗрдбрд░-рдбреНрд░рд┐рд╡реЗрди рдЬреЗрдирд░реЗрд╢рди")ред рдкреНрд░рддреНрдпреЗрдХ рдкрд░реАрдХреНрд╖рдг рдорд╛рдорд▓реЗ рдореЗрдВ рдПрдХ рдлрд╝рдВрдХреНрд╢рди рдХреЙрд▓ рд╣реЛрддрд╛ рд╣реИ
рдЙрдЪрд┐рдд (рдЕрдзрд┐рдХрд╛рдВрд╢ рдореЗрдВ, рд▓реЗрдХрд┐рди рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ рд╕рднреА рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдирд╣реАрдВ) рдЗрдирдкреБрдЯ рдкреИрд░рд╛рдореАрдЯрд░ред NS
рдЙрддреНрдкрдиреНрди рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреА рдЧреБрдгрд╡рддреНрддрд╛ рдХрд┐рд╕реА рдХреЛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреА рдЕрдиреБрдкрд╕реНрдерд┐рддрд┐ рдХреЛ рд╕рд░рд▓рддрд╛ рд╕реЗ рдЬрд╛рдВрдЪрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреА рд╣реИ
рдорд╛рдорд▓реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ рдФрд░ рдЕрддреНрдпрдзрд┐рдХ рдкреБрди: рдкреНрд░рдпреЛрдЬреНрдп рд╡рд┐рд╢реЗрд╖рдЬреНрдЮрддрд╛ рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рдХреЗ рдЗрд╕рдореЗрдВ рдХрд╛рдлреА рд╕реБрдзрд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ
рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЗ рд▓рд┐рдП рдкреНрд░рдХрд╛рд░ред
рдЙрдкрдХрд░рдг рдЙрддреНрдкрдиреНрди рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдХреНрд░реИрд╢, рдЧрд░реНрднрдкрд╛рдд, рд╕рднреА рдкреНрд░рдХрд╛рд░ рдХреЗ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛ рд╕рдХрддрд╛ рд╣реИ
рдЙрддреНрд╕рд░реНрдЬрд┐рдд рд╕рд┐рдЧреНрдирд▓, рдЧреИрд░-рд╢реВрдиреНрдп рдкреНрд░реЛрдЧреНрд░рд╛рдо рд░рд┐рдЯрд░реНрди рдХреЛрдб, рдкреНрд░реЛрдЧреНрд░рд╛рдо рд╣реИрдВрдЧрд┐рдВрдЧ рдФрд░ рдЖрд╡рд╢реНрдпрдХрддрд╛
рд╡рд┐рдлрд▓рддрд╛рдУрдВ (рдпрджрд┐ рдирд┐рд░реНрджрд┐рд╖реНрдЯ)ред рдЙрдкрдХрд░рдг рдХреЛ рдЖрдЙрдЯ-рдСрдл-рдмреЙрдХреНрд╕ рдХреЗ рд▓рд┐рдП рдПрдХ рдЙрдкрдХрд░рдг рдХреЗ рд░реВрдк рдореЗрдВ рдорд╛рдирд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ
рдкреБрд╕реНрддрдХрд╛рд▓рдп рдПрдкреАрдЖрдИ рдХреА рдХрдо рд▓рд╛рдЧрдд рд╡рд╛рд▓реА рд╡рд┐рд╡реЗрдХ рдЬрд╛рдВрдЪ рдпрд╛ рдкрд░реАрдХреНрд╖рдг рд╡рд┐рдХрд╛рд╕ рдврд╛рдВрдЪреЗ рдХреЗ рд░реВрдк рдореЗрдВ
рдЙрдиреНрдирдд рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЗ рд▓рд┐рдП рдЯреЗрдореНрдкрд▓реЗрдЯреНрд╕ рдХреА рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдкреАрдврд╝реАред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдпрд╣ рд╕рд╛рд░реНрд╡рднреМрдорд┐рдХ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ
Template2рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХрд╛ рдХреЛрдб рдкреНрд░рд╛рд░реВрдк, рд╕реНрдкреНрд▓рд┐рдВрдЯ рд╡рд┐рдирд┐рд░реНрджреЗрд╢, рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рдкрд░реАрдХреНрд╖рдг рдкреАрдврд╝реА рдореЛрдб
рдФрд░ рдЕрдиреНрдп рдЙрдкрдпреЛрдЧреА рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВред
рдпрд╣ рдЯреВрд▓ рдореБрдлреНрдд рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рд╣реИ: рдЖрдк рдЗрд╕реЗ рдкреБрдирд░реНрд╡рд┐рддрд░рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░/рдпрд╛ рдЗрд╕реЗ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ
рдЬреАрдПрдирдпреВ рдПрд▓рдЬреАрдкреАрдПрд▓ рдпрд╛ рдЬреАрдПрдирдпреВ рдЬреАрдкреАрдПрд▓ рдХреА рд╢рд░реНрддреЗрдВред
рдЙрдкрдпреЛрдЧ:
рдПрдкреА-рд╕реИрдирд┐рдЯреА-рдЪреЗрдХрд░ [рд╡рд┐рдХрд▓реНрдк]
рдЙрджрд╛рд╣рд░рдг:
рдПрдкреА-рд╕реИрдирд┐рдЯреА-рдЪреЗрдХрд░ -рд▓рд┐рдм рдирд╛рдо -d рд╡реАрдИрдЖрд░.рдПрдХреНрд╕рдПрдордПрд▓ -рдЬреАрди рдмрдирд╛рдПрдБ рд░рди
VERSION.xml рдПрдХреНрд╕рдПрдордПрд▓-рдбрд┐рд╕реНрдХреНрд░рд┐рдкреНрдЯрд░ рд╣реИ:
1.0
/рдкрде1/рд╕реЗ/рд╢реАрд░реНрд╖рд▓реЗрдЦ/ /рдкрде2/рд╕реЗ/рд╢реАрд░реНрд╖рд▓реЗрдЦ/
...
/path1/to/рд▓рд╛рдЗрдмреНрд░реЗрд░реА(ies)/ /path2/to/Library(ies)/
...
рдЬрд╛рдирдХрд╛рд░реА рд╡рд┐рдХрд▓реНрдк:
-h|-рд╕рд╣рд╛рдпрддрд╛
рдЗрд╕ рд╕рд╣рд╛рдпрддрд╛ рдХреЛ рдкреНрд░рд┐рдВрдЯ рдХрд░реЗрдВред
-рдЗрдирдлреЛ
рдкреВрд░реА рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рд┐рдВрдЯ рдХрд░реЗрдВред
-v|-рд╕рдВрд╕реНрдХрд░рдг
рдкреНрд░рд┐рдВрдЯ рд╕рдВрд╕реНрдХрд░рдг рдХреА рдЬрд╛рдирдХрд╛рд░реАред
-рдбрдВрдкрд╡рд░реНрд╕рди
рдЯреВрд▓ рд╕рдВрд╕реНрдХрд░рдг (1.98.7) рдкреНрд░рд┐рдВрдЯ рдХрд░реЗрдВ рдФрд░ рдХреБрдЫ рдФрд░ рди рдХрд░реЗрдВред
рд╕рд╛рдорд╛рдиреНрдп рд╡рд┐рдХрд▓реНрдк:
-l|-lib|-рд▓рд╛рдЗрдмреНрд░реЗрд░реА NAME
рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХрд╛ рдирд╛рдо (рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рдмрд┐рдирд╛)ред
-d|-рд╡рд┐рд╡рд░рдгрдХрд░реНрддрд╛ рдкрде
рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдбрд┐рд╕реНрдХреНрд░рд┐рдкреНрдЯрд░ рдХрд╛ рдкрде (VER.xml рдлрд╝рд╛рдЗрд▓):
1.0
/path1/to/header(s)/ /path2/to/header(s)/...
/path1/to/рд▓рд╛рдЗрдмреНрд░реЗрд░реА(ies)//path2/to/рд▓рд╛рдЗрдмреНрд░реЗрд░реА(ies)/...
рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП, рдХреГрдкрдпрд╛ рджреЗрдЦреЗрдВ:
http://lvc.github.com/api-sanity-checker/Xml-Descriptor.html
-рдЬреАрди|-рдЙрддреНрдкрдиреНрди
рдкрд░реАрдХреНрд╖рдг рдЙрддреНрдкрдиреНрди рдХрд░реЗрдВред рд╡рд┐рдХрд▓реНрдк -l рдФрд░ -d рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдХреЗ рд▓рд┐рдП рдкрд░реАрдХреНрд╖рдг рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП
рд╡рд┐рд╢реЗрд╖ рдлрд╝рдВрдХреНрд╢рди рдЗрд╕рдХреЗ рд╕рд╛рде рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ -f рд╡рд┐рдХрд▓реНрдкред рдмрд╛рд╣рд░ рдирд┐рдХрд▓реЗрдВ рдХреЛрдб: рдЕрд╕рдлрд▓ рдкрд░реАрдХреНрд╖рдг рдорд╛рдорд▓реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛
рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдПред
рдмрдирд╛рдПрдБ|-рдореЗрдХ
рдкрд░реАрдХреНрд╖рдг (рдУрдВ) рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░реЗрдВред рд╡рд┐рдХрд▓реНрдк -l рдФрд░ -d рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдХреЗ рд▓рд┐рдП рдкрд░реАрдХреНрд╖рдг рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП
рд╡рд┐рд╢реЗрд╖ рдлрд╝рдВрдХреНрд╢рди рдЗрд╕рдХреЗ рд╕рд╛рде рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ -f рд╡рд┐рдХрд▓реНрдкред рдмрд╛рд╣рд░ рдирд┐рдХрд▓реЗрдВ рдХреЛрдб: рдЕрд╕рдлрд▓ рдкрд░реАрдХреНрд╖рдг рдорд╛рдорд▓реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛
рдкреИрджрд╛ рдХрд░рдирд╛ред
рд░рди
рдкрд░реАрдХреНрд╖рдг рдЪрд▓рд╛рдПрдБ, рдкрд░реАрдХреНрд╖рдг рд░рд┐рдкреЛрд░реНрдЯ рдмрдирд╛рдПрдБред рд╡рд┐рдХрд▓реНрдк -l рдФрд░ -d рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП
рд╡рд┐рд╢реЗрд╖ рд╕рдорд╛рд░реЛрд╣ рдХреЗ рд▓рд┐рдП рдкрд░реАрдХреНрд╖рдг рдЗрд╕рдХреЗ рд╕рд╛рде рдкреНрд░рдпреЛрдЧ рдХрд░реЗрдВ -f рд╡рд┐рдХрд▓реНрдкред рдмрд╛рд╣рд░ рдирд┐рдХрд▓реЗрдВ рдХреЛрдб: рдХреА рд╕рдВрдЦреНрдпрд╛
рдЕрд╕рдлрд▓ рдкрд░реАрдХреНрд╖рдг рдорд╛рдорд▓реЗред
-рд╕реНрд╡рдЪреНрдЫ
рд╕реНрд╡рдЪреНрдЫ рдкрд░реАрдХреНрд╖рдг (рдУрдВ)ред рд╡рд┐рдХрд▓реНрдк -l рдФрд░ -d рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдХреЗ рд▓рд┐рдП рдкрд░реАрдХреНрд╖рдг рд╕рд╛рдл рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП
рд╡рд┐рд╢реЗрд╖ рдлрд╝рдВрдХреНрд╢рди рдЗрд╕рдХреЗ рд╕рд╛рде рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ -f рд╡рд┐рдХрд▓реНрдк.
рдЕрддрд┐рд░рд┐рдХреНрдд рд╡рд┐рдХрд▓реНрдк:
-рд╡рдиреБрдо NUM
рдбрд┐рд╕реНрдХреНрд░рд┐рдкреНрдЯрд░ рдХреЗ рдмрд╛рд╣рд░ рдкреБрд╕реНрддрдХрд╛рд▓рдп рд╕рдВрд╕реНрдХрд░рдг рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВред
-s|-рдкреНрд░рддреАрдХ NAME
рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рд▓рд┐рдП рдЯреЗрд╕реНрдЯ рдЬреЗрдирд░реЗрдЯ/рдмрд┐рд▓реНрдб/рд░рди рдХрд░реЗрдВ (рд╕реА ++ рдореЗрдВ рдЙрд▓рдЭрд╛ рд╣реБрдЖ рдирд╛рдо)ред
-рдкреНрд░рддреАрдХ-рд╕реВрдЪреА рдкрде
рдпрд╣ рд╡рд┐рдХрд▓реНрдк рдХрд┐рд╕реА рдХреЛ рдХрд╛рд░реНрдпреЛрдВ рдХреА рд╕реВрдЪреА рдХреЗ рд╕рд╛рде рдлрд╝рд╛рдЗрд▓ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ (рдкреНрд░рддрд┐ рдкрдВрдХреНрддрд┐ рдПрдХ,
рд╕реА ++ рдореЗрдВ рдЙрд▓рдЭрд╛ рд╣реБрдЖ рдирд╛рдо) рдЬрд┐рд╕рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЕрдиреНрдп рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХрд╛рд░реНрдп рдирд╣реАрдВ рд╣реЛрдВрдЧреЗ
рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ред
-рд╢реАрд░реНрд╖рдХ рдирд╛рдо
рдпрд╣ рд╡рд┐рдХрд▓реНрдк рдХрд┐рд╕реА рдХреЛ рдЙрди рдХрд╛рд░реНрдпреЛрдВ рдХреА рд╕реВрдЪреА рдХреЛ рдкреНрд░рддрд┐рдмрдВрдзрд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдЬрд┐рдирдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП
рдПрдХ рд╣реЗрдбрд░ рдлрд╝рд╛рдЗрд▓ рдирд╛рдо рдкреНрд░рджрд╛рди рдХрд░рдирд╛ рдЬрд┐рд╕рдореЗрдВ рдЙрдиреНрд╣реЗрдВ рдШреЛрд╖рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдЗрд╕ рд╡рд┐рдХрд▓реНрдк рдХрд╛ рдЗрд░рд╛рджрд╛ рд╣реИ
рдЪрд░рдг-рджрд░-рдЪрд░рдг рдкрд░реАрдХреНрд╖рдг рд╡рд┐рдХрд╛рд╕ рдХреЗ рд▓рд┐рдПред
-рд╕рдм
рд╣реЗрдбрд░ рдлрд╝рд╛рдЗрд▓ (рдлрд╛рдЗрд▓реЛрдВ) рдореЗрдВ рдкреБрдирд░рд╛рд╡рд░реНрддреА рд░реВрдк рд╕реЗ рд╢рд╛рдорд┐рд▓ рд╕рднреА рдкреНрд░рддреАрдХреЛрдВ рдХреЗ рд▓рд┐рдП рдкрд░реАрдХреНрд╖рдг рдЙрддреНрдкрдиреНрди рдХрд░реЗрдВред
-xvfb
рдкрд░реАрдХреНрд╖рдг рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд░реНрддрдорд╛рди рдПрдХреНрд╕-рд╕рд░реНрд╡рд░ (рдбрд┐рдлрд╝реЙрд▓реНрдЯ) рдХреЗ рдмрдЬрд╛рдп Xvfb-server рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред
-t2c|-рдЯреЗрдореНрдкрд▓реЗрдЯ2рдХреЛрдб
рд╕рд╛рд░реНрд╡рднреМрдорд┐рдХ Template2Code рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рдкрд░реАрдХреНрд╖рдг рдЙрддреНрдкрдиреНрди рдХрд░реЗрдВред рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП, рдХреГрдкрдпрд╛
рджреЗрдЦ:
http://sourceforge.net/projects/template2code/
-рд╕рдЦреНрдд-рдЬреАрди
рдкрд░реАрдХреНрд╖рдг рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рд╕рдорд╛рдкреНрдд рдХрд░реЗрдВ рдФрд░ рддреНрд░реБрдЯрд┐ рдХреЛрдб '1' рд▓реМрдЯрд╛рдПрдВ рдпрджрд┐ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ
рдХрдо рд╕реЗ рдХрдо рдПрдХ рдЯреЗрд╕реНрдЯ рдХреЗрд╕ рдЙрддреНрдкрдиреНрди рдХрд░реЗрдВред
-рд╕рдЦреНрдд рдирд┐рд░реНрдорд╛рдг
рдирд┐рд░реНрдорд╛рдг рдкрд░реАрдХреНрд╖рдг рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рд╕рдорд╛рдкреНрдд рдХрд░реЗрдВ рдФрд░ рдпрджрд┐ рдирд┐рд░реНрдорд╛рдг рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рддреЛ рддреНрд░реБрдЯрд┐ рдХреЛрдб '1' рд▓реМрдЯрд╛рдПрдВ
рдХрдо рд╕реЗ рдХрдо рдПрдХ рдЯреЗрд╕реНрдЯ рдХреЗрд╕ред
-рд╕рдЦреНрддреА рд╕реЗ рдЪрд▓рдирд╛
рдкрд░реАрдХреНрд╖рдг рдЪрд▓рд╛рдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рд╕рдорд╛рдкреНрдд рдХрд░реЗрдВ рдФрд░ рдХрдо рд╕реЗ рдХрдо рдПрдХ рд╣реЛрдиреЗ рдкрд░ рддреНрд░реБрдЯрд┐ рдХреЛрдб '1' рд▓реМрдЯрд╛рдПрдВ
рдкрд░реАрдХреНрд╖рдг рдХрд╛ рдорд╛рдорд▓рд╛ рд╡рд┐рдлрд▓ред
-рдХрдареЛрд░
рдпрд╣ рд╡рд┐рдХрд▓реНрдк рд╕рднреА рдХреЛ рд╕рдХреНрд╖рдо рдмрдирд╛рддрд╛ рд╣реИ -рдХрдареЛрд░-* рд╡рд┐рдХрд▓реНрдкред
-r|-рдпрд╛рджреГрдЪреНрдЫрд┐рдХ
рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рдкрд░реАрдХреНрд╖рдг рдкреАрдврд╝реА рдореЛрдбред
рд╕рдлрд╛рдИ MIN
рдиреНрдпреВрдирддрдо рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рд╕рд╛рде рдиреНрдпреВрдирддрдо рдХреЛрдб, рдХреЙрд▓ рдлрд╝рдВрдХреНрд╢рди рдЙрддреНрдкрдиреНрди рдХрд░реЗрдВ
рдЕрдиреНрдп рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рдкреИрд░рд╛рдореАрдЯрд░ рдкреНрд░рд╛рд░рдВрдн рдХрд░реЗрдВред
рдЕрдзрд┐рдХрддрдо
рдЕрдзрд┐рдХрддрдо рдХреЛрдб рдЙрддреНрдкрдиреНрди рдХрд░реЗрдВ, рдЕрдзрд┐рдХрддрдо рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рд╕рд╛рде рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХреЙрд▓ рдХрд░реЗрдВ
рдЕрдиреНрдп рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рдкреИрд░рд╛рдореАрдЯрд░ рдкреНрд░рд╛рд░рдВрдн рдХрд░реЗрдВред
-рд╢реЛ-рд░рд┐рдЯрд╡рд▓
рд░рд┐рдкреЛрд░реНрдЯ рдореЗрдВ рдлрд╝рдВрдХреНрд╢рди рд░рд┐рдЯрд░реНрди рдкреНрд░рдХрд╛рд░ рджрд┐рдЦрд╛рдПрдВред
-рдЪреЗрдХ-рд░рд┐рдЯрд╡рд▓
рдкреНрд░рддреНрдпреЗрдХ рдХреЙрд▓ рдХрд┐рдП рдЧрдП рдлрд╝рдВрдХреНрд╢рди рдХреЗ рд▓рд┐рдП рд░рд┐рдЯрд░реНрди рд╡реИрд▓реНрдпреВ (retval!=NULL) рдкрд░ рдЖрд╡рд╢реНрдпрдХрддрд╛рдПрдВ рдбрд╛рд▓реЗрдВред
-ST|-рд╡рд┐рд╢реЗрд╖-рдкреНрд░рдХрд╛рд░ рдкрде
рд╡рд┐рд╢реЗрд╖ рдкреНрд░рдХрд╛рд░ рдХреЗ рд╕рдВрдЧреНрд░рд╣ рдХреЗ рд╕рд╛рде рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдкрдеред рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП,
рдХреГрдкрдпрд╛ рджреЗрдЦреЗрдВ:
http://lvc.github.com/api-sanity-checker/Specialized-Type.html
-рдЯреАрдбреА|-рдкрд░реАрдХреНрд╖рдг-рдбреЗрдЯрд╛ рдкрде
рдкрд░реАрдХреНрд╖рдг рдбреЗрдЯрд╛ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд╕рд╛рде рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХрд╛ рдкрдеред рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП, рдХреГрдкрдпрд╛ рджреЗрдЦреЗрдВ:
http://lvc.github.com/api-sanity-checker/Specialized-Type.html
-рд╣реЗрдбрд░-рдУрдирд▓реА
рдпрджрд┐ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдореЗрдВ рдХреЗрд╡рд▓ рдЗрдирд▓рд╛рдЗрди рдХрд╛рд░реНрдп рд╣реИрдВ рдФрд░ рдХреЛрдИ рд╕рд╛рдЭрд╛ рд╡рд╕реНрддреБ рдирд╣реАрдВ рд╣реИ рддреЛ рдЖрдк
рдЗрд╕ рд╡рд┐рдХрд▓реНрдк рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред
-рдиреЛ-рдЗрдирд▓рд╛рдЗрди
рдЗрдирд▓рд╛рдЗрди рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдкрд░реАрдХреНрд╖рдг рдЙрддреНрдкрдиреНрди рди рдХрд░реЗрдВред
-рд░рдЦ-рдЖрдВрддрд░рд┐рдХ
рдЖрдВрддрд░рд┐рдХ рдкреНрд░рддреАрдХреЛрдВ рдХреЗ рд▓рд┐рдП рдкрд░реАрдХреНрд╖рдг рдЙрддреНрдкрдиреНрди рдХрд░реЗрдВ ('__' рдЙрдкрд╕рд░реНрдЧ рдХреЗ рд╕рд╛рде рдХрд╛рд░реНрдп рдФрд░ рдХреЗ рддрд░реАрдХреЗ
рдЕрдиреНрдп рд╡рд░реНрдЧреЛрдВ рдХреЗ рдЕрдВрджрд░ рдШреЛрд╖рд┐рдд рдХрдХреНрд╖рд╛рдПрдВ)ред
-рдкреГрдердХ
рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╕реВрдЪрд┐рдпреЛрдВ рджреНрд╡рд╛рд░рд╛ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЛ рдкреНрд░рддрд┐рдмрдВрдзрд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдВ -рдХрд╛рд░реНрдп рд╕реВрдЪреА
рд╡рд┐рдХрд▓реНрдк рдпрд╛ рд╡рд┐рд╡рд░рдгрдХ рдореЗрдВ рд╕рдореВрд╣ рд╡рд┐рднрд╛рдЬрди рджреНрд╡рд╛рд░рд╛ред
-рдХреЗрд╡рд▓ рджреЗрдЦреЗрдВ
*.html рдлрд╛рдЗрд▓реЛрдВ рдХреЛ рдЫреЛрдбрд╝рдХрд░ рдкрд░реАрдХреНрд╖рдг рд╕реВрдЯ рд╕реЗ рд╕рднреА рдлрд╛рдЗрд▓реЛрдВ рдХреЛ рд╣рдЯрд╛ рджреЗрдВред рдпрд╣ рд╡рд┐рдХрд▓реНрдк рдПрдХ рдХреЛ рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ
рд╕рднреА рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЗ рд▓рд┐рдП рд╣рд▓реНрдХрд╛ рдПрдЪрдЯреАрдПрдордПрд▓-рдЗрдВрдбреЗрдХреНрд╕ рдмрдирд╛рдПрдВред
-рдЕрдХреНрд╖рдо-рдбрд┐рдлрд╝реЙрд▓реНрдЯ-рдорд╛рди
рдлрд╝рдВрдХреНрд╢рди рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рд▓рд┐рдП рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдорд╛рдиреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдЕрдХреНрд╖рдо рдХрд░реЗрдВред
-рдЕрдиреБрдХреВрд▓рди-рд╢рд╛рдорд┐рд▓ LEVEL
рдкреНрд░рддреНрдпреЗрдХ рдкрд░реАрдХреНрд╖рдг рдорд╛рдорд▓реЗ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╢реАрд░реНрд╖рд▓реЗрдЦреЛрдВ рдХреА рд╕реВрдЪреА рдХрд╛ рдЕрдиреБрдХреВрд▓рди рд╕рдХреНрд╖рдо рдХрд░реЗрдВред рдЙрдкрд▓рдмреНрдз
рд╕реНрддрд░:
рдЙрдЪреНрдЪ (рдбрд┐рдлрд╝реЙрд▓реНрдЯ) рдордзреНрдпрдо рдирд┐рдореНрди рдХреЛрдИ рдирд╣реАрдВ - рдЕрдХреНрд╖рдо
-p|-рдкрд░рдореНрд╕ рдкрде
рдлрд╝рдВрдХреНрд╢рди рдкреИрд░рд╛рдореАрдЯрд░ рдирд╛рдореЛрдВ рдХреЗ рд╕рд╛рде рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдкрдеред рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рд╕реБрдзрд╛рд░ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ
рдЙрддреНрдкрдиреНрди рдкрд░реАрдХреНрд╖рдг рдпрджрд┐ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╣реЗрдбрд░ рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рдкреИрд░рд╛рдореАрдЯрд░ рдирд╛рдо рдирд╣реАрдВ рд╣реИрдВред рдлрд╝рд╛рдЗрд▓
рдкреНрд░рд╛рд░реВрдк:
func1;param1;param2;param3 ... func2;param1;param2;param3 ...
-рд╢реАрд░реНрд╖рдХ рдирд╛рдо
рд░рд┐рдкреЛрд░реНрдЯ рд╢реАрд░реНрд╖рдХ рдореЗрдВ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХрд╛ рдирд╛рдоред
-рд░реЗрд▓рдкрде|-рд░реЗрд▓реНрдбрд┐рд░ рдкрде
рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдбрд┐рд╕реНрдХреНрд░рд┐рдкреНрдЯрд░ рдореЗрдВ {RELPATH} рдХреЛ PATH рд╕реЗ рдмрджрд▓реЗрдВред
-рд▓рдВрдЧ рд▓реИрдВрдЧ
рдкреБрд╕реНрддрдХрд╛рд▓рдп рднрд╛рд╖рд╛ (рд╕реА рдпрд╛ рд╕реА ++) рд╕реЗрдЯ рдХрд░реЗрдВред рдпрджрд┐ рдЯреВрд▓ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рд╣реИ рддреЛ рдЖрдк рдЗрд╕ рд╡рд┐рдХрд▓реНрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ
рдПрдХ рднрд╛рд╖рд╛ рдХрд╛ рд╕реНрд╡рддрдГ рдкрддрд╛ рд▓рдЧрд╛рдПрдВред
-рдЧреЛрдЯ рд▓рдЧрд╛рдирд╛ рд╕рдВрдХрд▓рдХ
рдХрдВрдкрд╛рдЗрд▓рд░ рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рд╡рд┐рдВрдбреЛрдЬрд╝ рдХреЗ рддрд╣рдд рдЬреЗрдирд░реЗрдЯ рдЯреЗрд╕реНрдЯ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
рд╕рдорд░реНрдерд┐рдд:
рдЬреАрд╕реАрд╕реА - рдЬреАрдПрдирдпреВ рдХрдВрдкрд╛рдЗрд▓рд░ рд╕реАрдПрд▓ - рдПрдордПрд╕ рдХрдВрдкрд╛рдЗрд▓рд░ (рдбрд┐рдлрд╝реЙрд▓реНрдЯ)
-рдбреАрдмрдЧ
рдбрд┐рдмрдЧрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рд▓реЙрдЧ рд▓рд┐рдЦреЗрдВред
рдХреИрд╢реЗ
рдПрдмреАрдЖрдИ рдбрдВрдк рдХреЛ рдХреИрд╢ рдХрд░реЗрдВ рдФрд░ рдЕрдЧрд▓реЗ рд░рди рдкрд░ рдЗрд╕рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд░реЗрдВред
рдЕрдиреНрдп рд╡рд┐рдХрд▓реНрдк:
-рдкрд░реАрдХреНрд╖рдг
рдЖрдВрддрд░рд┐рдХ рдкрд░реАрдХреНрд╖рдг рдЪрд▓рд╛рдПрдБред рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдкреБрд╕реНрддрдХрд╛рд▓рдп рдмрдирд╛рдПрдВ рдФрд░ рдЙрд╕ рдкрд░ рдЯреВрд▓ рдЪрд▓рд╛рдПрдВред рдЗрд╕ рд╡рд┐рдХрд▓реНрдк
рдпрд╣ рдЬрд╛рдВрдЪрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдХрд┐ рдЙрдкрдХрд░рдг рд╕рд┐рд╕реНрдЯрдо рдкрд░ рд╕рд╣реА рддрд░реАрдХреЗ рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдпрд╛ рдирд╣реАрдВред
-рдЕрдХреНрд╖рдо-рдЪрд░-рдкреБрди: рдЙрдкрдпреЛрдЧ
рдкрд░реАрдХреНрд╖рдг рдореЗрдВ рдкрд╣рд▓реЗ рдмрдирд╛рдП рдЧрдП рдЪрд░реЛрдВ рдХрд╛ рдкреБрди: рдЙрдкрдпреЛрдЧ рдЕрдХреНрд╖рдо рдХрд░реЗрдВред
-рд▓рдВрдмреЗ-рдЪрд░-рдирд╛рдо
рдЫреЛрдЯреЗ рдирд╛рдореЛрдВ рдХреЗ рдмрдЬрд╛рдп рд▓рдВрдмреЗ (рдЬрдЯрд┐рд▓) рдЪрд░ рдирд╛рдо рд╕рдХреНрд╖рдо рдХрд░реЗрдВред
рдмрд╛рд╣рд░ рдирд┐рдХрд▓реЗрдВ рдХреЛрдб:
0 - рд╕рдлрд▓ рдкрд░реАрдХреНрд╖рдгред рдЙрдкрдХрд░рдг рдмрд┐рдирд╛ рдХрд┐рд╕реА рддреНрд░реБрдЯрд┐ рдХреЗ рдЪрд▓рд╛ рдЧрдпрд╛ рд╣реИред рдЧреИрд░-рд╢реВрдиреНрдп - рдкрд░реАрдХреНрд╖рдг рд╡рд┐рдлрд▓
рдпрд╛ рдЙрдкрдХрд░рдг рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдЪрд▓рд╛ рд╣реИред
рдЕрдзрд┐рдХ рдЗрдВрдлреЙрд░реНрдореЗрд╢рди:
http://lvc.github.com/api-sanity-checker/
onworks.net рд╕реЗрд╡рд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдСрдирд▓рд╛рдЗрди api-sanity-checker рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ