Skip to content

Instantly share code, notes, and snippets.

View kinchungwong's full-sized avatar

Ryan Wong kinchungwong

View GitHub Profile
@kinchungwong
kinchungwong / Program.cs
Created November 20, 2020 06:39
A sketch for question 419165 on softwareengineering.stackexchange.com
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Nothing_20201119
{
public enum AnimalType
{
@kinchungwong
kinchungwong / (0) Readme_MultiValueDictionary.md
Last active October 26, 2020 07:06
20201024_IMultiValueDictionary

MultiValueDictionary (Part of CollectionsUtility)


Important note

Multi-value dictionary (shorthand MVD) is still in design stage. This is because a few high-impact decisions have not been finalized. These are:

Decision 1: what should be the primary interface model of MVD?

@kinchungwong
kinchungwong / temp_public_list_gdoc.md
Created August 28, 2020 21:26
Temporary list of public links from kinchungwong.dev
2020-08-21 - Formalizing RectTree
About this document
Status
This document is in early draft.
The draft is being edited as a Google Docs document.
Occasionally, it is synchronized by hand into a Markdown document.
Occasionally, the Google Docs document and the Markdown document will fall out of sync; some earlier content may be lost due to omissions that occur from hand-editing.
There are also plain text copies of the document; these copies may become obsolete.
License
@kinchungwong
kinchungwong / 20200819_ProgramOutput.txt
Last active August 19, 2020 19:03
20200819_ProgramOutput.txt
========================================================================================================================
Application Name: TuplePerformanceBenchmark.ExecuteAsDotNetFramework, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
Runtime Framework Name: .NETFramework,Version=v4.7.2
------------------------------------------------------------------------------------------------------------------------
Test class: IntRectTupleTests
(Fully qualified name: TuplePerformanceBenchmarkLib.IntRectTupleTests)
........................................................................................................................
PassTo : total: 0.014959500000 s, average: 3.0 ns.
ReturnFrom : total: 0.076795600000 s, average: 15.4 ns.
PassBetween : total: 0.089761900000 s, average: 18.0 ns.
@kinchungwong
kinchungwong / GitUsageNote_20200730.md
Last active August 3, 2020 15:26
Git stash pop (apply) error: Could not restore untracked files from stash entry
@kinchungwong
kinchungwong / md5_list_20190306.txt
Created March 7, 2019 01:47
MD5 hashes for installers on machine
548ea319cbd6dda0e94d95580ad36038 7z1806-x64.exe
01d32ef6e8edb42d2eb332754d2e8dad cmake-3.13.4-win64-x64.msi
ce720e7a1de73d0650b86108392aa4dd doxygen-1.8.15-setup.exe
e2c6d562bd35352b73c00a744e9c07c6 fciv.exe
76e1a42f151357af452633c1fafa71fa Git-2.20.1-64-bit.exe
74e54197afee1918e2db890b05c460db KeePass-2.41-Setup.exe
983d8c71dd6eeed78012112b85734318 putty-64bit-0.70-installer.msi
0ffa44a86522f9a37b916b361eebc552 python-2.7.15.amd64.msi
ff258093f0b3953c886192dec9f52763 python-3.7.2-amd64.exe
20702a5967ac4994e6a6429c521ead1a vs_community__581740706.1521797069.exe
@kinchungwong
kinchungwong / spec_logtagmanager_20190303.md
Last active March 3, 2019 10:26
LogTagManager behavior as-if specification
@kinchungwong
kinchungwong / log_config_string_format_20190220.md
Created February 27, 2019 03:42
Cached markdown for log config string format in logging_20190220

Content used in: opencv/opencv#13909

Applies to: logging_20190220

Regarding log config for tags at startup-time

  • Config string format is similar to logcat.
    • imgproc:D imgcodecs.*:V *:S
  • Actual tag names (in library code) can contain the period (".")
  • (Undecided) "imgcodecs.tiff.decoder" or "imgcodecs.decoders.tiff"
@kinchungwong
kinchungwong / cpp_preprocessor_operators_conflict.md
Created February 27, 2019 00:05
Main conflict between c++ expressions and preprocessor token operator techniques

Log message tag struct (optional)

Purpose

  • To allow passing in the tag name and the filtering threshold via one macro argument.
  • If we give up the dual purpose then it would simplify handling of the tag argument.
  • Its usage is open to design ideas, but it must be tolerant of current usage as well as incorrect usage.

Interpretation of logging macro argument