github.com/lmorg/murex@v0.0.0-20240217211045-e081c89cd4ef/builtins/types/boolean/marshal.go (about) 1 package boolean 2 3 import ( 4 "github.com/lmorg/murex/lang" 5 "github.com/lmorg/murex/lang/types" 6 ) 7 8 func marshal(_ *lang.Process, v interface{}) ([]byte, error) { 9 i, err := types.ConvertGoType(v, types.Boolean) 10 if err != nil { 11 return types.FalseByte, err 12 } 13 14 s, err := types.ConvertGoType(i, types.String) 15 return []byte(s.(string)), err 16 } 17 18 func unmarshal(p *lang.Process) (interface{}, error) { 19 b, err := p.Stdin.ReadAll() 20 if err != nil { 21 return false, err 22 } 23 24 return types.ConvertGoType(b, types.Boolean) 25 }