Skip to content

Instantly share code, notes, and snippets.

View insooth's full-sized avatar
🏠
Working from home

Krzysztof Ostrowski insooth

🏠
Working from home
View GitHub Profile
@insooth
insooth / doxygen-req-apporach.txt
Last active September 23, 2020 08:28
Doxygen Notes for umlaut AP handling of requirements traceability:
Doxygen Notes for umlaut AP handling of requirements traceability:
UmlautSoftwareDevelopmentAccount/AUTOSAR-Adaptive#10
> Arch spec is in doc/arch.doc
Comments can either belong to @brief or do not belong to @brief.
Doxygen parses laguages constructs to extract comments and store them
@insooth
insooth / doxygen-req.md
Last active May 19, 2020 11:28
Extending Doxygen tool for requirements traceability

Since the above mentioned idea came from me, I will elaborate a little bit on the approach.

The goal is to generate, through the Doxygen tool source code extension, an index page, and accompanied set of pages of documentation. An index page shall contain a list of all the requirement strings (i.e. identifiers) where each one such string shall be referenced in the parsed source code through the designed @req{<req-string-id>} command. That means there shall be no "global" database of available requirement string identifiers planned to be read by the Doxygen tool directly.

Each position on the list of requirement string identifiers shall be an URL with title req-string-id and href pointing to a generated subpage. A subpage shall contain req-string-id, calculated req-string-id-header, req-string-id-body, req-string-id-url information strings, and list of URLs to locations (lines or blocks) within a source code where the actual @req{} happened. Locations should include code snipp

@insooth
insooth / git-submodules.txt
Last active May 4, 2020 16:06
ChaiScript .gitmodules
[submodule "ChaiScript"]
path = external/ChaiScript
url = https://github.com/ChaiScript/ChaiScript.git
branch = v6.1.0
shallow = true
ignore = all
update = none
@insooth
insooth / stringify-chrono.cpp
Created March 26, 2020 20:03
Stringify chrono::time_point
#include <iostream>
#include <ctime> // localtime, time_t, mktime, tm
#include <chrono>
#include <iomanip> // put_time
using namespace std::chrono_literals;
@insooth
insooth / to-ip-address-conversion.cpp
Created January 16, 2020 10:22
Convert string to IP address -- mix compile time with runtime
#include <iostream>
#include <arpa/inet.h>
#include <string>
#include <type_traits>
#include <cassert>
#include <cstddef>
#include <array>
@insooth
insooth / prefix-tree-unordered-map.cpp
Created January 10, 2020 14:09
Use of prefix tree instead of a unordered map for a given string to enum mapping
// see LICENSE on insooth.github.com
#include <iostream>
#include <cassert>
#include <cstring> // strlen
#include <unordered_map>
// unordered_map<string, enum> -> prefix tree
@insooth
insooth / generic-token-parser.cpp
Created January 10, 2020 13:05
Parsing and converting a string by tokens, a generic approach
// see LICENSE on insooth.github.io
// This code is a proposal to fix the issues found by me in code review.
//
// Generic approach to the following algorithm:
// given string 's', a list of tokens inside that string,
// and a way to convert data around that tokens taken from
// that string 's', execute an conversion algorithm for
// multiple tokens.
@insooth
insooth / uri-query-string-parser.cpp
Created January 9, 2020 13:00
Parsing URI's query string using zero-copy with token filtration
// see LICENSE on insooth.github.io
// parse key-value pairs concatenated with ampersand: a=b&c=d&u=v
// look for selected keys
#include <iostream>
#include <cassert>
#include <cstring> // strlen
@insooth
insooth / GDPR_CV.md
Created January 7, 2020 11:05 — forked from zmilonas/GDPR_CV.md
Formułka do CV, resume, RODO GDPR Compliant resume formulae

Polski 🇵🇱

Wyrażam zgodę na przetwarzanie moich danych osobowych w celu rekrutacji zgodnie z art. 6 ust. 1 lit. a Rozporządzenia Parlamentu Europejskiego i Rady (UE) 2016/679 z dnia 27 kwietnia 2016 r. w sprawie ochrony osób fizycznych w związku z przetwarzaniem danych osobowych i w sprawie swobodnego przepływu takich danych oraz uchylenia dyrektywy 95/46/WE (ogólne rozporządzenie o ochronie danych)

English 🇪🇺

I hereby give consent for my personal data included in my application to be processed for the purposes of the recruitment process under the European Parliament's and Council of the European Union Regulation on the Protection of Natural Persons as of 27 April 2016, with regard to the processing of personal data and on the free movement of such data, and repealing Directive 95/46/EC (Data Protection Directive)