Skip to content
This repository was archived by the owner on Sep 17, 2025. It is now read-only.

ohmrun/stx_prim

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

stx_prim

Type that unifies the Haxe standard library scalar types.

enum PrimitiveSum<T = Figure>{
  Empty;
  Truth(b:Bool);
  
  Datum(figure:T);
}
enum FigureSum{
  Numeral(num:Number);
  Literal(str:Script);  
}
enum NumberSum{
  Integer32(int:Int);
  IntegerUnsigned(uint:UInt);
  Integer32(int:Int64);
  FloatingPoint(fl:Float);
}
enum ScriptSum{
  Octets(b:Bytes);
  Ascii(s:String);
  Utf8(s:UnicodeString);
}

Usage

stx.prim.HaxePrimitive contains a dsl, which is an abstract over stx.prim.Primitive<Figure>.

import stx.prim.HaxePrimitive.HaxePrimitiveCtr.instance as HP;
function test(){
  final int = HP.Make(_ -> 1)//Datum(Numeral(Integer32(1)));
  final bool = HP.Make(_ -> true)//Truth(true);
  final string = HP.Make(_ -> "ok")//Datum(Textual(Ascii(ok)))
}

About

[Migrated to Codeberg] Unified primitive types in Haxe

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published