Skip to content

Instantly share code, notes, and snippets.

View kunjee17's full-sized avatar
💭
Functional Programmer for hire. F#, Scala, Rust. For web, mobile, cloud etc.

Kunjan Dalal kunjee17

💭
Functional Programmer for hire. F#, Scala, Rust. For web, mobile, cloud etc.
View GitHub Profile
@kunjee17
kunjee17 / rqrr_helper.rs
Created May 31, 2022 01:22
QR Code scan using rqrr rust.
/// Scan current video frame for a valid QR code containing customer id, returning it if found.
fn process_frame(&self) -> anyhow::Result<Option<i32>> {
// Get necessary elements
let video = self
.ref_video
.cast::<HtmlVideoElement>()
.ok_or(anyhow!("Video required"))?;
let context = self.context.as_ref().ok_or(anyhow!("Context required"))?;
let (width, height) = self.camera_dim;
// Draw frame to canvas
open System
open FSharpPlus
open FSharpPlus.Data
module Person=
type Name = { unName : String }
with static member create s={unName=s}
type Email = { unEmail : String }
with static member create s={unEmail=s}
type Age = { unAge : int }
type Email private (email : string) =
member __.Email = email
static member create(email : string ) =
// Some validation on email
Email (email)
type Email = private | Email of string
module Email =
let create(email : string ) =
// Some validation on email
Email email
let value (Email email) = email
type Person = {
FirstName : string
LastName : string
}
with
member x.FullName() =
x.FirstName + " " + x.LastName
type Person(firstName:string, lastName: string) =
let firstName = firstName
let lastName = lastName
let calculateFullName() =
firstName + " " + lastName
member x.FirstName with get() = firstName
member x.LastName with get() = lastName
member x.FullName with get() = calculateFullName()
@kunjee17
kunjee17 / shades-of-fsharp-person.cs
Created October 28, 2019 03:41
Normal Person in C#
class Person {
private readonly string firstName;
private readonly string lastName;
public Person(string firstName, string lastName) {
this.firstName = firstName;
this.lastName = lastName;
}
public string FirstName { get {return this.firstName; } }
public string LastName { get {return this.lastName; } }
@kunjee17
kunjee17 / shades-of-fsharp-world-bank.fs
Last active October 28, 2019 03:07
Famous World Bank Example
#r "../../../bin/lib/net45/FSharp.Data.dll"
#load "../../../packages/test/FSharp.Charting/FSharp.Charting.fsx"
open FSharp.Data
open FSharp.Charting
type WorldBank = WorldBankDataProvider<"World Development Indicators", Asynchronous=true>
let wb = WorldBank.GetDataContext()
.flex-container {
display: flex;
flex-wrap: nowrap;
background-color: DodgerBlue;
}
.flex-container > div {
background-color: #f1f1f1;
width: 100px;
margin: 10px;
<h1>{{title}}</h1>
<h2>My favorite hero is: {{myHero.name}}</h2>
<p>Heroes:</p>
<ul>
<li *ngFor="let hero of heroes">
{{ hero.name }}
</li>
</ul>
<p *ngIf="heroes.length > 3">There are many heroes!</p>