Tutorial by Examples: e

You can group related assertions in deftest unit tests within a context using the testing macro: (deftest add-nums (testing "Positive cases" (is (= 2 (+ 1 1))) (is (= 4 (+ 2 2)))) (testing "Negative cases" (is (= -1 (+ 2 -3))) (is (= -4 (+ 8 -12))))) ...
deftest is a macro for defining a unit test, similar to unit tests in other languages. You can create a test as follows: (deftest add-nums (is (= 2 (+ 1 1))) (is (= 3 (+ 1 2)))) Here we are defining a test called add-nums, which tests the + function. The test has two assertions. You can ...

are

The are macro is also part of the clojure.test library. It allows you to make multiple assertions against a template. For example: (are [x y] (= x y) 4 (+ 2 2) 8 (* 2 4)) => true Here, (= x y) acts as a template which takes each argument and creates an is assertion out of it. Thi...
seq is a more flexible function than the : operator allowing to specify steps other than 1. The function creates a sequence from the start (default is 1) to the end including that number. You can supply only the end (to) parameter seq(5) # [1] 1 2 3 4 5 As well as the start seq(2, 5) # or se...
Input table data (People table) IdNameAge1John232Jane31 Query SELECT Id, Name, Age FROM People FOR JSON PATH Result [ {"Id":1,"Name":"John","Age":23}, {"Id":2,"Name":"Jane","Age":31} ]
JSON_VALUE and JSON_QUERY functions parse JSON text and return scalar values or objects/arrays on the path in JSON text. DECLARE @json NVARCHAR(100) = '{"id": 1, "user":{"name":"John"}, "skills":["C#","SQL"]}' SELECT JS...
(let [x true y true z true] (match [x y z] [_ false true] 1 [false true _ ] 2 [_ _ false] 3 [_ _ true] 4)) ;=> 4
(let [v [1 2 3]] (match [v] [[1 1 1]] :a0 [[1 _ 1]] :a1 [[1 2 _]] :a2)) ;; _ is used for wildcard matching ;=> :a2
(match [['asymbol]] [['asymbol]] :success) ;=> :success
One can extract a series of consecutive elements from an Array using a Range. let words = ["Hey", "Hello", "Bonjour", "Welcome", "Hi", "Hola"] let range = 2...4 let slice = words[range] // ["Bonjour", "Welcome", &quot...
C++11 NOTE: std::auto_ptr has been deprecated in C++11 and will be removed in C++17. You should only use this if you are forced to use C++03 or earlier and are willing to be careful. It is recommended to move to unique_ptr in combination with std::move to replace std::auto_ptr behavior. Before we ...
Let's say we wish to write Euclid's gcd() as a lambda. As a function, it is: int gcd(int a, int b) { return b == 0 ? a : gcd(b, a%b); } But a lambda cannot be recursive, it has no way to invoke itself. A lambda has no name and using this within the body of a lambda refers to a captured thi...
int a = 6; // 0110b (0x06) int b = 10; // 1010b (0x0A) int c = a & b; // 0010b (0x02) std::cout << "a = " << a << ", b = " << b << ", c = " << c << std::endl; Output a = 6, b = 10, c = 2 Why A bit wise A...
int a = 5; // 0101b (0x05) int b = 12; // 1100b (0x0C) int c = a | b; // 1101b (0x0D) std::cout << "a = " << a << ", b = " << b << ", c = " << c << std::endl; Output a = 5, b = 12, c = 13 Why A bit wise OR o...
int a = 5; // 0101b (0x05) int b = 9; // 1001b (0x09) int c = a ^ b; // 1100b (0x0C) std::cout << "a = " << a << ", b = " << b << ", c = " << c << std::endl; Output a = 5, b = 9, c = 12 Why A bit wise XOR (...
unsigned char a = 234; // 1110 1010b (0xEA) unsigned char b = ~a; // 0001 0101b (0x15) std::cout << "a = " << static_cast<int>(a) << ", b = " << static_cast<int>(b) << std::endl; Output a = 234, b = 21 Why A b...
int a = 1; // 0001b int b = a << 1; // 0010b std::cout << "a = " << a << ", b = " << b << std::endl; Output a = 1, b = 2 Why The left bit wise shift will shift the bits of the left hand value (a) the number specified on the right...
Introduction The GNU Make (styled make) is a program dedicated to the automation of executing shell commands. GNU Make is one specific program that falls under the Make family. Make remains popular among Unix-like and POSIX-like operating systems, including those derived from the Linux kernel, Mac ...
Some API calls return a single failure/success flag, without any additional information (e.g. GetObject): if ( GetObjectW( obj, 0, NULL ) == 0 ) { // Failure: no additional information available. }
In addition to a failure/success return value, some API calls also set the last error on failure (e.g. CreateWindow). The documentation usually contains the following standard wording for this case: If the function succeeds, the return value is <API-specific success value>. If the function...

Page 284 of 1191