文件名称:go-cty:Go应用程序中用于动态值的类型系统
文件大小:250KB
文件格式:ZIP
更新时间:2024-03-31 12:01:26
系统开源
城市 cty (发音为“ see-tie”)是一种动态类型系统,用于用Go编写的应用程序,需要表示用户提供的值而不会丢失类型信息。 主要用途是用于实现配置语言,但其他用途也是可能的。 人们可以想到的cty作为为不存在,或不存在语言的反射API。 它提供了一组值类型和一个用于处理该类型值的API。 从根本上讲, cty提供的功能等同于附加了一些动态类型信息的interface{} ,但是cty封装了此功能以确保保留不变式并提供更方便的API。 除了基本类型,基本集合类型(列表,地图和集合)和结构类型(对象,元组)之外, cty类型和值系统还具有一些其他可选功能,这些功能可能对某些应用程序有用: “未知”值的表示形式,用作尚未确定的值的类型化占位符。 对于类型检查器,这可能是有用的构建块。 未知值支持与其类型的已知值相同的所有操作,但是结果本身通常是未知的。 表示类型未知的值。 例如