Tag: TYPE-SAFETY
Es muy fácil verificar la exhaustividad de los tipos de suma en TypeScript. type Sum = | { tag: ‘num’; value: number } | { tag: ‘str’; value: string }; const len = (sum: Sum): number => { switch (sum.tag) { case ‘num’: return sum.value; case ‘str’: return sum.value.length; default: . . . Read more
He escrito este código que recorre todos los elementos con un ID, y declara una variable con el mismo nombre que el ID refiriéndose a ese elemento. El código funciona como se esperaba y usando esto al comienzo de mi programa ahorro mucho tiempo y líneas en mi programa. Sin . . . Read more
Considere el siguiente ejemplo: impl Foo { fn measure<‘a>(&’a self) -> Vec<&’a Bar> {…} <pre><code>fn try_action<‘a>(&’a mut self) -> Result<(), Vec<&’a Bar>> { let measurement = self.measure(); // esto crea referencias que podemos querer devolver desde este ámbito if measurement.is_empty() { drop(measurement); // solo para ser explícito y demostrar que . . . Read more
Tengo una API heredada como se muestra a continuación (enlace del entorno de pruebas)… type Command1 = { cmd: “mi primera orden”, arg1: string, arg2: boolean } type Command2 = { cmd: “mi segunda orden”, foo: string, bar: number } type Command = Command1 | Command2 function execute(cmd: Command[“cmd”], args: . . . Read more
Me pregunto si mi pensamiento es correcto o si estoy cometiendo algún error grave. Veamos un código simple: class A { String a = “a”; } class B extends A { String b = “b”; } void goofy(Map<string, a=””> map) { A? item = map[“b1”]; print(item?.a); } void croc(dynamic map) . . . Read more