import * as tsMatches from "https://deno.land/x/ts_matches@v5.4.1/src/matches.ts";
Classes
A Parser is usually a function that takes a value and returns a Parsed value. For this class we have that as our main reason but we want to be able to have other methods including testing and showing text representations. | |
A Parser is usually a function that takes a value and returns a Parsed value. For this class we have that as our main reason but we want to be able to have other methods including testing and showing text representations. |
Variables
v any | |
Want to be able to bring in the declarative nature that a functional programming language feature of the pattern matching and the switch statement. With the destructors the only thing left was to find the correct structure then move move forward. Using a structure in chainable fashion allows for a syntax that works with typescript while looking similar to matches statements in other languages | |
Want to be able to bring in the declarative nature that a functional programming language feature of the pattern matching and the switch statement. With the destructors the only thing left was to find the correct structure then move move forward. Using a structure in chainable fashion allows for a syntax that works with typescript while looking similar to matches statements in other languages | |
v nill | |
Good for duck typing an object, with optional values | |
Functions
We would like to validate that all of the array is of the same type | |
Must pass the shape that we expect since typescript as of this point can't infer with recursive like structures like this. | |
Intersection is a good tool to make sure that the validated value
is in the intersection of all the validators passed in. Basically an | |
Create a custom type guard | |
Must pass the shape that we expect since typescript as of this point can't infer with recursive functions like this. | |
f some | Union is a good tool to make sure that the validated value
is in the union of all the validators passed in. Basically an |