namespace Frduino.Genlet.For_lib.Bitvec
open Frduino
open Frduino.Genlet
type Builder() =
interface Lib.Bitvec.Builder with
override __.sll (shamount, x) =
let shamount = shamount :?> CodeExpr<int>
let x = x :?> CodeExpr<int>
new CodeExpr<int>(n = $"({x.n}) << ({shamount.n})")
override __.or' (x, y) =
let x = x :?> CodeExpr<int>
let y = y :?> CodeExpr<int>
new CodeExpr<int>(n = $"({x.n}) | ({y.n})")