coline.html 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <title>Coline - C++ Documentation</title>
  5. <meta charset="UTF-8">
  6. <meta name="description" content="This documentation was created with Coline.">
  7. <meta name="author" content="Patrick-Christopher Mattulat">
  8. <meta name="keywords" content="Coline, C++-Documentation, Lynar Studios, Lynar Studios - Standard Library">
  9. <style>
  10. body
  11. {
  12. background-color: #ffffff;
  13. font-family: Arial, serif;
  14. color: #1a2a3f;
  15. }
  16. a.default_link_layout:link
  17. {
  18. color: #1a2a3f;
  19. text-decoration: none;
  20. }
  21. a.default_link_layout:visited
  22. {
  23. color: #1a2a3f;
  24. text-decoration: none;
  25. }
  26. a.default_link_layout:hover
  27. {
  28. color: #bc8003;
  29. text-decoration: none;
  30. }
  31. a.default_link_layout:active
  32. {
  33. color: #bc8003;
  34. text-decoration: none;
  35. }
  36. p.default_text
  37. {
  38. color: inherit;
  39. font-size: 16px;
  40. text-decoration: none;
  41. font-weight: normal;
  42. }
  43. li.package_li
  44. {
  45. font-size: 16px;
  46. text-decoration: none;
  47. font-weight: normal;
  48. }
  49. li.class_li
  50. {
  51. font-size: 16px;
  52. text-decoration: none;
  53. font-weight: normal;
  54. }
  55. </style>
  56. </head>
  57. <body>
  58. <h1>Lynar Studios - Standard Library - v2024.1.0.0 Documentation</h1>
  59. <h2>Packages</h2>
  60. <ul id="package_list">
  61. <li class="package_li"><a class="default_link_layout" href="#package_boxing">boxing</a></li>
  62. <li class="package_li"><a class="default_link_layout" href="#package_core">core</a></li>
  63. <li class="package_li"><a class="default_link_layout" href="#package_encoding">encoding</a></li>
  64. <li class="package_li"><a class="default_link_layout" href="#package_event">event</a></li>
  65. <li class="package_li"><a class="default_link_layout" href="#package_io">io</a></li>
  66. <li class="package_li"><a class="default_link_layout" href="#package_time">time</a></li>
  67. </ul>
  68. <h3 id="package_boxing">boxing</h3>
  69. <p class="default_text">This package provides functionalities for wrapping primitive datatypes (boolean, double, float, int, long, string). Wrapping those types would enable a developer to provide string representations, or parsing from strings to convert them back into their primitive forms. Additionally, these boxing types come with a great selection of operators and convenient functions.</p>
  70. <h4>Classes</h4>
  71. <ul id="boxing_class_list">
  72. <li class="class_li"><a class="default_link_layout" href="#boxing_integer">Integer</a></li>
  73. <li class="class_li"><a class="default_link_layout" href="#boxing_boolean">Boolean</a></li>
  74. <li class="class_li"><a class="default_link_layout" href="#boxing_double">Double</a></li>
  75. <li class="class_li"><a class="default_link_layout" href="#boxing_float">Float</a></li>
  76. <li class="class_li"><a class="default_link_layout" href="#boxing_string">String</a></li>
  77. <li class="class_li"><a class="default_link_layout" href="#boxing_long">Long</a></li>
  78. </ul>
  79. <h3 id="package_core">core</h3>
  80. <p class="default_text">This package provides a base class, which can be used to provide simple class reflection. Other functionalities of this package include customized exceptions, basic interfaces and convenient types.</p>
  81. <h4>Classes</h4>
  82. <ul id="core_class_list">
  83. <li class="class_li"><a class="default_link_layout" href="#core_class">Class</a></li>
  84. <li class="class_li"><a class="default_link_layout" href="#core_libraryversion">LibraryVersion</a></li>
  85. <li class="class_li"><a class="default_link_layout" href="#core_version">Version</a></li>
  86. <li class="class_li"><a class="default_link_layout" href="#core_conditionalfunctionexecutor">ConditionalFunctionExecutor</a></li>
  87. <li class="class_li"><a class="default_link_layout" href="#core_nullpointerargumentevaluator">NullPointerArgumentEvaluator</a></li>
  88. <li class="class_li"><a class="default_link_layout" href="#core_nullpointerevaluator">NullPointerEvaluator</a></li>
  89. <li class="class_li"><a class="default_link_layout" href="#core_rawnullpointerargumentevaluator">RawNullPointerArgumentEvaluator</a></li>
  90. <li class="class_li"><a class="default_link_layout" href="#core_indexoutofboundsevaluator">IndexOutOfBoundsEvaluator</a></li>
  91. <li class="class_li"><a class="default_link_layout" href="#core_emptystringargumentevaluator">EmptyStringArgumentEvaluator</a></li>
  92. <li class="class_li"><a class="default_link_layout" href="#core_rawnullpointerevaluator">RawNullPointerEvaluator</a></li>
  93. <li class="class_li"><a class="default_link_layout" href="#core_jnireturnvalue">JniReturnValue</a></li>
  94. <li class="class_li"><a class="default_link_layout" href="#core_jniclassparameter">JniClassParameter</a></li>
  95. <li class="class_li"><a class="default_link_layout" href="#core_jniapi">JniApi</a></li>
  96. <li class="class_li"><a class="default_link_layout" href="#core_jnimethod">JniMethod</a></li>
  97. <li class="class_li"><a class="default_link_layout" href="#core_jniclass">JniClass</a></li>
  98. <li class="class_li"><a class="default_link_layout" href="#core_nullpointerexception">NullPointerException</a></li>
  99. <li class="class_li"><a class="default_link_layout" href="#core_eventnothandledexception">EventNotHandledException</a></li>
  100. <li class="class_li"><a class="default_link_layout" href="#core_illegalargumentexception">IllegalArgumentException</a></li>
  101. <li class="class_li"><a class="default_link_layout" href="#core_exceptionmessage">ExceptionMessage</a></li>
  102. <li class="class_li"><a class="default_link_layout" href="#core_fileoperationexception">FileOperationException</a></li>
  103. <li class="class_li"><a class="default_link_layout" href="#core_illegalarithmeticoperationexception">IllegalArithmeticOperationException</a></li>
  104. <li class="class_li"><a class="default_link_layout" href="#core_filenotfoundexception">FileNotFoundException</a></li>
  105. <li class="class_li"><a class="default_link_layout" href="#core_incompletejsonexception">IncompleteJsonException</a></li>
  106. <li class="class_li"><a class="default_link_layout" href="#core_notimplementedexception">NotImplementedException</a></li>
  107. <li class="class_li"><a class="default_link_layout" href="#core_indexoutofboundsexception">IndexOutOfBoundsException</a></li>
  108. <li class="class_li"><a class="default_link_layout" href="#core_exception">Exception</a></li>
  109. </ul>
  110. <h3 id="package_encoding">encoding</h3>
  111. <p class="default_text">This package provides encoding functionalities, which in the current scope is limited to Base64. This would also include the provision of a Base-64-CLI-tool.</p>
  112. <h4>Classes</h4>
  113. <ul id="encoding_class_list">
  114. <li class="class_li"><a class="default_link_layout" href="#encoding_base64">Base64</a></li>
  115. </ul>
  116. <h3 id="package_event">event</h3>
  117. <p class="default_text">This package provides an event manager and the functionality to through events.</p>
  118. <h4>Classes</h4>
  119. <ul id="event_class_list">
  120. <li class="class_li"><a class="default_link_layout" href="#event_event">Event</a></li>
  121. <li class="class_li"><a class="default_link_layout" href="#event_eventlistener">EventListener</a></li>
  122. <li class="class_li"><a class="default_link_layout" href="#event_eventmanager">EventManager</a></li>
  123. <li class="class_li"><a class="default_link_layout" href="#event_eventparameter">EventParameter</a></li>
  124. </ul>
  125. <h3 id="package_io">io</h3>
  126. <p class="default_text">This package provides cross-platform functionalities for handling files, parsing and writing XML, logging, parsing and writing SP-files (.INI-based files).</p>
  127. <h4>Classes</h4>
  128. <ul id="io_class_list">
  129. <li class="class_li"><a class="default_link_layout" href="#io_filewriter">FileWriter</a></li>
  130. <li class="class_li"><a class="default_link_layout" href="#io_filepathseparatormatch">FilePathSeparatorMatch</a></li>
  131. <li class="class_li"><a class="default_link_layout" href="#io_fileoutputstream">FileOutputStream</a></li>
  132. <li class="class_li"><a class="default_link_layout" href="#io_storablefile">StorableFile</a></li>
  133. <li class="class_li"><a class="default_link_layout" href="#io_newline">NewLine</a></li>
  134. <li class="class_li"><a class="default_link_layout" href="#io_filereader">FileReader</a></li>
  135. <li class="class_li"><a class="default_link_layout" href="#io_file">File</a></li>
  136. <li class="class_li"><a class="default_link_layout" href="#io_standardoutputwriter">StandardOutputWriter</a></li>
  137. <li class="class_li"><a class="default_link_layout" href="#io_filepathseparator">FilePathSeparator</a></li>
  138. <li class="class_li"><a class="default_link_layout" href="#io_fileexistenceevaluator">FileExistenceEvaluator</a></li>
  139. <li class="class_li"><a class="default_link_layout" href="#io_sectionpairmessageformatter">SectionPairMessageFormatter</a></li>
  140. <li class="class_li"><a class="default_link_layout" href="#io_sectionpairfilereaderparameter">SectionPairFileReaderParameter</a></li>
  141. <li class="class_li"><a class="default_link_layout" href="#io_sectionpairfilereader">SectionPairFileReader</a></li>
  142. <li class="class_li"><a class="default_link_layout" href="#io_sectionpairsectionargumentevaluator">SectionPairSectionArgumentEvaluator</a></li>
  143. <li class="class_li"><a class="default_link_layout" href="#io_sectionpairvalueargumentevaluator">SectionPairValueArgumentEvaluator</a></li>
  144. <li class="class_li"><a class="default_link_layout" href="#io_sectionpairrowlistvalueargumentevaluator">SectionPairRowListValueArgumentEvaluator</a></li>
  145. <li class="class_li"><a class="default_link_layout" href="#io_sectionpairrowsinglevalueargumentevaluator">SectionPairRowSingleValueArgumentEvaluator</a></li>
  146. <li class="class_li"><a class="default_link_layout" href="#io_sectionpairrowargumentevaluator">SectionPairRowArgumentEvaluator</a></li>
  147. <li class="class_li"><a class="default_link_layout" href="#io_sectionpairidentifierargumentevaluator">SectionPairIdentifierArgumentEvaluator</a></li>
  148. <li class="class_li"><a class="default_link_layout" href="#io_sectionpairidentifiervalidator">SectionPairIdentifierValidator</a></li>
  149. <li class="class_li"><a class="default_link_layout" href="#io_sectionpairsectionvalidator">SectionPairSectionValidator</a></li>
  150. <li class="class_li"><a class="default_link_layout" href="#io_sectionpairrowlistvaluevalidator">SectionPairRowListValueValidator</a></li>
  151. <li class="class_li"><a class="default_link_layout" href="#io_sectionpairrowsinglevaluevalidator">SectionPairRowSingleValueValidator</a></li>
  152. <li class="class_li"><a class="default_link_layout" href="#io_sectionpairdocumentvalidator">SectionPairDocumentValidator</a></li>
  153. <li class="class_li"><a class="default_link_layout" href="#io_sectionpairvaluevalidator">SectionPairValueValidator</a></li>
  154. <li class="class_li"><a class="default_link_layout" href="#io_sectionpairfileextensionvalidator">SectionPairFileExtensionValidator</a></li>
  155. <li class="class_li"><a class="default_link_layout" href="#io_sectionpairrowvalidator">SectionPairRowValidator</a></li>
  156. <li class="class_li"><a class="default_link_layout" href="#io_serializablesectionpairsection">SerializableSectionPairSection</a></li>
  157. <li class="class_li"><a class="default_link_layout" href="#io_serializablesectionpairrowsinglevalue">SerializableSectionPairRowSingleValue</a></li>
  158. <li class="class_li"><a class="default_link_layout" href="#io_serializablesectionpairrow">SerializableSectionPairRow</a></li>
  159. <li class="class_li"><a class="default_link_layout" href="#io_serializablesectionpairrowlistvalue">SerializableSectionPairRowListValue</a></li>
  160. <li class="class_li"><a class="default_link_layout" href="#io_serializablesectionpairparameter">SerializableSectionPairParameter</a></li>
  161. <li class="class_li"><a class="default_link_layout" href="#io_serializablesectionpairdocument">SerializableSectionPairDocument</a></li>
  162. <li class="class_li"><a class="default_link_layout" href="#io_sectionpairrowvalue">SectionPairRowValue</a></li>
  163. <li class="class_li"><a class="default_link_layout" href="#io_sectionpairdocument">SectionPairDocument</a></li>
  164. <li class="class_li"><a class="default_link_layout" href="#io_sectionpairrowlistvalue">SectionPairRowListValue</a></li>
  165. <li class="class_li"><a class="default_link_layout" href="#io_sectionpairrow">SectionPairRow</a></li>
  166. <li class="class_li"><a class="default_link_layout" href="#io_sectionpairsection">SectionPairSection</a></li>
  167. <li class="class_li"><a class="default_link_layout" href="#io_sectionpairrowsinglevalue">SectionPairRowSingleValue</a></li>
  168. <li class="class_li"><a class="default_link_layout" href="#io_xmldeclaration">XmlDeclaration</a></li>
  169. <li class="class_li"><a class="default_link_layout" href="#io_xmlparser">XmlParser</a></li>
  170. <li class="class_li"><a class="default_link_layout" href="#io_xmlreader">XmlReader</a></li>
  171. <li class="class_li"><a class="default_link_layout" href="#io_xmldocument">XmlDocument</a></li>
  172. <li class="class_li"><a class="default_link_layout" href="#io_xmlattribute">XmlAttribute</a></li>
  173. <li class="class_li"><a class="default_link_layout" href="#io_xmlparseparameter">XmlParseParameter</a></li>
  174. <li class="class_li"><a class="default_link_layout" href="#io_xmlnode">XmlNode</a></li>
  175. <li class="class_li"><a class="default_link_layout" href="#io_logger">Logger</a></li>
  176. <li class="class_li"><a class="default_link_layout" href="#io_loglevel">LogLevel</a></li>
  177. </ul>
  178. <h3 id="package_time">time</h3>
  179. <p class="default_text">This package provides convenient time functionalities and data structures, like a Date class for representing a date or SystemTime for setting a systems local time.</p>
  180. <h4>Classes</h4>
  181. <ul id="time_class_list">
  182. <li class="class_li"><a class="default_link_layout" href="#time_date">Date</a></li>
  183. <li class="class_li"><a class="default_link_layout" href="#time_dateparameter">DateParameter</a></li>
  184. <li class="class_li"><a class="default_link_layout" href="#time_dateparametermapper">DateParameterMapper</a></li>
  185. <li class="class_li"><a class="default_link_layout" href="#time_jnidateparametermapper">JniDateParameterMapper</a></li>
  186. <li class="class_li"><a class="default_link_layout" href="#time_systemtimeparameter">SystemTimeParameter</a></li>
  187. <li class="class_li"><a class="default_link_layout" href="#time_posixclock">PosixClock</a></li>
  188. <li class="class_li"><a class="default_link_layout" href="#time_systemtime">SystemTime</a></li>
  189. <li class="class_li"><a class="default_link_layout" href="#time_windowsclock">WindowsClock</a></li>
  190. </ul>
  191. <h2>Classes</h2>
  192. <h3 id="core_class">core.Class</h3>
  193. <p class="default_text">This class represents a base class offering minimal reflection on the class name.</p>
  194. <h3 id="core_libraryversion">core.LibraryVersion</h3>
  195. <p class="default_text">This class provides the version information of this library.</p>
  196. <h3 id="core_version">core.Version</h3>
  197. <p class="default_text">This class represents a semantic versioning scheme.</p>
  198. <h3 id="core_conditionalfunctionexecutor">core.ConditionalFunctionExecutor</h3>
  199. <p class="default_text">This class can execute any method matching a specific signature based on a specific condition.</p>
  200. <h3 id="core_nullpointerargumentevaluator">core.NullPointerArgumentEvaluator</h3>
  201. <p class="default_text">This class evaluates whether a passed shared pointer argument is null.</p>
  202. <h3 id="core_nullpointerevaluator">core.NullPointerEvaluator</h3>
  203. <p class="default_text">This class evaluates whether a passed shared pointer reference is null.</p>
  204. <h3 id="core_rawnullpointerargumentevaluator">core.RawNullPointerArgumentEvaluator</h3>
  205. <p class="default_text">This class evaluates whether a passed raw pointer argument is null.</p>
  206. <h3 id="core_indexoutofboundsevaluator">core.IndexOutOfBoundsEvaluator</h3>
  207. <p class="default_text">This class evaluates whether a passed index is out of bounds.</p>
  208. <h3 id="core_emptystringargumentevaluator">core.EmptyStringArgumentEvaluator</h3>
  209. <p class="default_text">This class evaluates whether a passed string is empty.</p>
  210. <h3 id="core_rawnullpointerevaluator">core.RawNullPointerEvaluator</h3>
  211. <p class="default_text">This class evaluates whether a passed raw pointer reference is null.</p>
  212. <h3 id="core_jnireturnvalue">core.JniReturnValue</h3>
  213. <p class="default_text">This class represents a method return value of a Java class within Java Native Interface (JNI) context.</p>
  214. <h3 id="core_jniclassparameter">core.JniClassParameter</h3>
  215. <p class="default_text">This class holds important information for the usage of the Java Native Interface (JNI), like Java environment or a specific Java object.</p>
  216. <h3 id="core_jniapi">core.JniApi</h3>
  217. <p class="default_text">This class represents an API for the Java Native Interface (JNI) wrapping basic JNI end points.</p>
  218. <h3 id="core_jnimethod">core.JniMethod</h3>
  219. <p class="default_text">This class represents a class method within Java Native Interface (JNI) context.</p>
  220. <h3 id="core_jniclass">core.JniClass</h3>
  221. <p class="default_text">This class represents a Java class within the Java Native Interface (JNI).</p>
  222. <h3 id="core_nullpointerexception">core.NullPointerException</h3>
  223. <p class="default_text">This exception can be thrown in case a called reference is null.</p>
  224. <h3 id="core_eventnothandledexception">core.EventNotHandledException</h3>
  225. <p class="default_text">This exception can be thrown in case an event is not handled.</p>
  226. <h3 id="core_illegalargumentexception">core.IllegalArgumentException</h3>
  227. <p class="default_text">This exception can be thrown in case a passed argument is illegal, which can be individually interpreted.</p>
  228. <h3 id="core_fileoperationexception">core.FileOperationException</h3>
  229. <p class="default_text">This exception can be thrown in case a file could not be processed, like opened or being read.</p>
  230. <h3 id="core_illegalarithmeticoperationexception">core.IllegalArithmeticOperationException</h3>
  231. <p class="default_text">This exception can be thrown in case an arithmetic operation is illegal. One example would be the division by zero.</p>
  232. <h3 id="core_filenotfoundexception">core.FileNotFoundException</h3>
  233. <p class="default_text">This exception can be thrown in case a file could not be found.</p>
  234. <h3 id="core_incompletejsonexception">core.IncompleteJsonException</h3>
  235. <p class="default_text">This exception can be thrown when a passed JSON is incomplete - e.g. if a key is missing.</p>
  236. <h3 id="core_notimplementedexception">core.NotImplementedException</h3>
  237. <p class="default_text">This exception can be thrown in case a called method is not implemented.</p>
  238. <h3 id="core_indexoutofboundsexception">core.IndexOutOfBoundsException</h3>
  239. <p class="default_text">This exception can be thrown in case an index of an array like structure is out of bounds.</p>
  240. <h3 id="core_exception">core.Exception</h3>
  241. <p class="default_text">This a base exception that can be thrown in any scenario.</p>
  242. <h3 id="boxing_integer">boxing.Integer</h3>
  243. <p class="default_text">This class represents the primitive datatype int and provides functionalities for arithmetic operations and string representation.</p>
  244. <h3 id="boxing_boolean">boxing.Boolean</h3>
  245. <p class="default_text">This class represents the primitive datatype bool and provides functionalities for boolean expressions and string representation.</p>
  246. <h3 id="boxing_double">boxing.Double</h3>
  247. <p class="default_text">This class represents the primitive datatype double and provides functionalities for arithmetic operations, accuracy and string representation.</p>
  248. <h3 id="boxing_float">boxing.Float</h3>
  249. <p class="default_text">This class represents the primitive datatype float and provides functionalities for arithmetic operations, accuracy and string representation.</p>
  250. <h3 id="boxing_string">boxing.String</h3>
  251. <p class="default_text">This class represents a string and provides operations, like filling and searching.</p>
  252. <h3 id="boxing_long">boxing.Long</h3>
  253. <p class="default_text">This class represents the primitive datatype long and provides functionalities for arithmetic operations and string representation.</p>
  254. <h3 id="time_date">time.Date</h3>
  255. <p class="default_text">This class represents a date and provides functionalities for string representation, arithmetic operations and time comparison.</p>
  256. <h3 id="time_dateparameter">time.DateParameter</h3>
  257. <p class="default_text">This class holds information of a date processed by this library.</p>
  258. <h3 id="time_dateparametermapper">time.DateParameterMapper</h3>
  259. <p class="default_text">This class maps date information to either an internal POSIX clock or an internal Windows clock, which can then be processed for setting the system time.</p>
  260. <h3 id="time_jnidateparametermapper">time.JniDateParameterMapper</h3>
  261. <p class="default_text">This mapper is converting a date Java class to a date model class of this library.</p>
  262. <h3 id="time_systemtimeparameter">time.SystemTimeParameter</h3>
  263. <p class="default_text">This class holds information for setting the system time.</p>
  264. <h3 id="time_posixclock">time.PosixClock</h3>
  265. <p class="default_text">This is a POSIX based internal time.</p>
  266. <h3 id="time_systemtime">time.SystemTime</h3>
  267. <p class="default_text">This class represents the system time and can be set. This would require root privileges.</p>
  268. <h3 id="time_windowsclock">time.WindowsClock</h3>
  269. <p class="default_text">This is a Windows based internal time.</p>
  270. <h3 id="encoding_base64">encoding.Base64</h3>
  271. <p class="default_text">This class can encode and decode the Base64 format.</p>
  272. <h3 id="event_event">event.Event</h3>
  273. <p class="default_text">This class represents an event that can be invoked.</p>
  274. <h3 id="event_eventlistener">event.EventListener</h3>
  275. <p class="default_text">An instance of this class can listen to any event. Usually, this class is used as base class of any class that must listen to an event.</p>
  276. <h3 id="event_eventmanager">event.EventManager</h3>
  277. <p class="default_text">This class can invoke all events known by subscribed listeners.</p>
  278. <h3 id="event_eventparameter">event.EventParameter</h3>
  279. <p class="default_text">This class holds parameters which can be sent during event invocation.</p>
  280. </body>
  281. </html>