github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library@v0.2.0/JSON_Utils_Str/JSON_Utils_Str.go (about) 1 // Package JSON_Utils_Str 2 // Dafny module JSON_Utils_Str compiled into Go 3 4 package JSON_Utils_Str 5 6 import ( 7 os "os" 8 9 m_Actions "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/Actions" 10 m_Base64 "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/Base64" 11 m_Base64Lemmas "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/Base64Lemmas" 12 m_BoundedInts "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/BoundedInts" 13 m_DivInternals "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/DivInternals" 14 m_DivInternalsNonlinear "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/DivInternalsNonlinear" 15 m_DivMod "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/DivMod" 16 m_FileIO "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/FileIO" 17 m_FloatCompare "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/FloatCompare" 18 m_Functions "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/Functions" 19 m_GeneralInternals "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/GeneralInternals" 20 m_GetOpt "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/GetOpt" 21 m_HexStrings "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/HexStrings" 22 m_JSON_Utils_Cursors "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/JSON_Utils_Cursors" 23 m_JSON_Utils_Lexers_Core "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/JSON_Utils_Lexers_Core" 24 m_JSON_Utils_Lexers_Strings "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/JSON_Utils_Lexers_Strings" 25 m_JSON_Utils_Parsers "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/JSON_Utils_Parsers" 26 m_JSON_Utils_Str_CharStrConversion "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/JSON_Utils_Str_CharStrConversion" 27 m_JSON_Utils_Str_CharStrEscaping "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/JSON_Utils_Str_CharStrEscaping" 28 m_JSON_Utils_Views_Core "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/JSON_Utils_Views_Core" 29 m_JSON_Utils_Views_Writers "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/JSON_Utils_Views_Writers" 30 m_Logarithm "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/Logarithm" 31 m__Math "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/Math_" 32 m_ModInternals "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/ModInternals" 33 m_ModInternalsNonlinear "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/ModInternalsNonlinear" 34 m_Mul "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/Mul" 35 m_MulInternals "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/MulInternals" 36 m_MulInternalsNonlinear "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/MulInternalsNonlinear" 37 m_Power "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/Power" 38 m_Relations "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/Relations" 39 m_Seq "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/Seq" 40 m_Seq_MergeSort "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/Seq_MergeSort" 41 m_Sorting "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/Sorting" 42 m_StandardLibrary "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/StandardLibrary" 43 m_StandardLibraryInterop "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/StandardLibraryInterop" 44 m_StandardLibrary_Sequence "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/StandardLibrary_Sequence" 45 m_StandardLibrary_String "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/StandardLibrary_String" 46 m_StandardLibrary_UInt "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/StandardLibrary_UInt" 47 m_Streams "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/Streams" 48 m_UnicodeStrings "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/UnicodeStrings" 49 m__Unicode "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/Unicode_" 50 m_Utf16EncodingForm "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/Utf16EncodingForm" 51 m_Utf8EncodingForm "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/Utf8EncodingForm" 52 m_Wrappers "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/Wrappers" 53 m__System "github.com/dafny-lang/DafnyRuntimeGo/v4/System_" 54 _dafny "github.com/dafny-lang/DafnyRuntimeGo/v4/dafny" 55 ) 56 57 var _ = os.Args 58 var _ _dafny.Dummy__ 59 var _ m__System.Dummy__ 60 var _ m_Wrappers.Dummy__ 61 var _ m_Relations.Dummy__ 62 var _ m_Seq_MergeSort.Dummy__ 63 var _ m__Math.Dummy__ 64 var _ m_Seq.Dummy__ 65 var _ m_BoundedInts.Dummy__ 66 var _ m__Unicode.Dummy__ 67 var _ m_Functions.Dummy__ 68 var _ m_Utf8EncodingForm.Dummy__ 69 var _ m_Utf16EncodingForm.Dummy__ 70 var _ m_UnicodeStrings.Dummy__ 71 var _ m_FileIO.Dummy__ 72 var _ m_GeneralInternals.Dummy__ 73 var _ m_MulInternalsNonlinear.Dummy__ 74 var _ m_MulInternals.Dummy__ 75 var _ m_Mul.Dummy__ 76 var _ m_ModInternalsNonlinear.Dummy__ 77 var _ m_DivInternalsNonlinear.Dummy__ 78 var _ m_ModInternals.Dummy__ 79 var _ m_DivInternals.Dummy__ 80 var _ m_DivMod.Dummy__ 81 var _ m_Power.Dummy__ 82 var _ m_Logarithm.Dummy__ 83 var _ m_StandardLibraryInterop.Dummy__ 84 var _ m_StandardLibrary_UInt.Dummy__ 85 var _ m_StandardLibrary_Sequence.Dummy__ 86 var _ m_StandardLibrary_String.Dummy__ 87 var _ m_StandardLibrary.Dummy__ 88 var _ m_Streams.Dummy__ 89 var _ m_Sorting.Dummy__ 90 var _ m_HexStrings.Dummy__ 91 var _ m_GetOpt.Dummy__ 92 var _ m_FloatCompare.Dummy__ 93 var _ m_Base64.Dummy__ 94 var _ m_Base64Lemmas.Dummy__ 95 var _ m_Actions.Dummy__ 96 var _ m_JSON_Utils_Views_Core.Dummy__ 97 var _ m_JSON_Utils_Views_Writers.Dummy__ 98 var _ m_JSON_Utils_Lexers_Core.Dummy__ 99 var _ m_JSON_Utils_Lexers_Strings.Dummy__ 100 var _ m_JSON_Utils_Cursors.Dummy__ 101 var _ m_JSON_Utils_Parsers.Dummy__ 102 var _ m_JSON_Utils_Str_CharStrConversion.Dummy__ 103 var _ m_JSON_Utils_Str_CharStrEscaping.Dummy__ 104 105 type Dummy__ struct{} 106 107 // Definition of class Default__ 108 type Default__ struct { 109 dummy byte 110 } 111 112 func New_Default___() *Default__ { 113 _this := Default__{} 114 115 return &_this 116 } 117 118 type CompanionStruct_Default___ struct { 119 } 120 121 var Companion_Default___ = CompanionStruct_Default___{} 122 123 func (_this *Default__) Equals(other *Default__) bool { 124 return _this == other 125 } 126 127 func (_this *Default__) EqualsGeneric(x interface{}) bool { 128 other, ok := x.(*Default__) 129 return ok && _this.Equals(other) 130 } 131 132 func (*Default__) String() string { 133 return "JSON_Utils_Str.Default__" 134 } 135 func (_this *Default__) ParentTraits_() []*_dafny.TraitID { 136 return [](*_dafny.TraitID){} 137 } 138 139 var _ _dafny.TraitOffspring = &Default__{} 140 141 func (_static *CompanionStruct_Default___) OfNat(n _dafny.Int, base _dafny.Int) _dafny.Sequence { 142 return m_JSON_Utils_Str_CharStrConversion.Companion_Default___.OfNat__any(n, (Companion_Default___.HEX__DIGITS()).Take((base).Uint32())) 143 } 144 func (_static *CompanionStruct_Default___) OfInt(n _dafny.Int, base _dafny.Int) _dafny.Sequence { 145 return m_JSON_Utils_Str_CharStrConversion.Companion_Default___.OfInt__any(n, (Companion_Default___.HEX__DIGITS()).Take((base).Uint32()), _dafny.Char('-')) 146 } 147 func (_static *CompanionStruct_Default___) ToNat(str _dafny.Sequence, base _dafny.Int) _dafny.Int { 148 return m_JSON_Utils_Str_CharStrConversion.Companion_Default___.ToNat__any(str, base, Companion_Default___.HEX__TABLE()) 149 } 150 func (_static *CompanionStruct_Default___) ToInt(str _dafny.Sequence, base _dafny.Int) _dafny.Int { 151 return m_JSON_Utils_Str_CharStrConversion.Companion_Default___.ToInt__any(str, _dafny.Char('-'), base, Companion_Default___.HEX__TABLE()) 152 } 153 func (_static *CompanionStruct_Default___) EscapeQuotes(str _dafny.Sequence) _dafny.Sequence { 154 return m_JSON_Utils_Str_CharStrEscaping.Companion_Default___.Escape(str, _dafny.SetOf(_dafny.Char('"'), _dafny.Char('\'')), _dafny.Char('\\')) 155 } 156 func (_static *CompanionStruct_Default___) UnescapeQuotes(str _dafny.Sequence) m_Wrappers.Result { 157 return m_JSON_Utils_Str_CharStrEscaping.Companion_Default___.Unescape(str, _dafny.Char('\\')) 158 } 159 func (_static *CompanionStruct_Default___) Test() { 160 if !(_dafny.Companion_Sequence_.Equal(Companion_Default___.OfInt(_dafny.Zero, _dafny.IntOfInt64(10)), _dafny.SeqOfString("0"))) { 161 panic("/Volumes/workplace/aws-cryptographic-material-providers-library/libraries/src/JSON/Utils/Str.dfy(229,4): " + (_dafny.SeqOfString("expectation violation")).String()) 162 } 163 if !(_dafny.Companion_Sequence_.Equal(Companion_Default___.OfInt(_dafny.IntOfInt64(3), _dafny.IntOfInt64(10)), _dafny.SeqOfString("3"))) { 164 panic("/Volumes/workplace/aws-cryptographic-material-providers-library/libraries/src/JSON/Utils/Str.dfy(230,4): " + (_dafny.SeqOfString("expectation violation")).String()) 165 } 166 if !(_dafny.Companion_Sequence_.Equal(Companion_Default___.OfInt(_dafny.IntOfInt64(302), _dafny.IntOfInt64(10)), _dafny.SeqOfString("302"))) { 167 panic("/Volumes/workplace/aws-cryptographic-material-providers-library/libraries/src/JSON/Utils/Str.dfy(231,4): " + (_dafny.SeqOfString("expectation violation")).String()) 168 } 169 if !(_dafny.Companion_Sequence_.Equal(Companion_Default___.OfInt(_dafny.IntOfInt64(-3), _dafny.IntOfInt64(10)), _dafny.SeqOfString("-3"))) { 170 panic("/Volumes/workplace/aws-cryptographic-material-providers-library/libraries/src/JSON/Utils/Str.dfy(232,4): " + (_dafny.SeqOfString("expectation violation")).String()) 171 } 172 if !(_dafny.Companion_Sequence_.Equal(Companion_Default___.OfInt(_dafny.IntOfInt64(-302), _dafny.IntOfInt64(10)), _dafny.SeqOfString("-302"))) { 173 panic("/Volumes/workplace/aws-cryptographic-material-providers-library/libraries/src/JSON/Utils/Str.dfy(233,4): " + (_dafny.SeqOfString("expectation violation")).String()) 174 } 175 } 176 func (_static *CompanionStruct_Default___) OfBool(b bool) _dafny.Sequence { 177 if b { 178 return _dafny.SeqOfString("true") 179 } else { 180 return _dafny.SeqOfString("false") 181 } 182 } 183 func (_static *CompanionStruct_Default___) OfChar(c _dafny.Char) _dafny.Sequence { 184 return _dafny.SeqOfChars(c) 185 } 186 func (_static *CompanionStruct_Default___) Join(sep _dafny.Sequence, strs _dafny.Sequence) _dafny.Sequence { 187 var _0___accumulator _dafny.Sequence = _dafny.SeqOfChars() 188 _ = _0___accumulator 189 goto TAIL_CALL_START 190 TAIL_CALL_START: 191 if (_dafny.IntOfUint32((strs).Cardinality())).Sign() == 0 { 192 return _dafny.Companion_Sequence_.Concatenate(_0___accumulator, _dafny.SeqOfString("")) 193 } else if (_dafny.IntOfUint32((strs).Cardinality())).Cmp(_dafny.One) == 0 { 194 return _dafny.Companion_Sequence_.Concatenate(_0___accumulator, (strs).Select(0).(_dafny.Sequence)) 195 } else { 196 _0___accumulator = _dafny.Companion_Sequence_.Concatenate(_0___accumulator, _dafny.Companion_Sequence_.Concatenate((strs).Select(0).(_dafny.Sequence), sep)) 197 var _in0 _dafny.Sequence = sep 198 _ = _in0 199 var _in1 _dafny.Sequence = (strs).Drop(1) 200 _ = _in1 201 sep = _in0 202 strs = _in1 203 goto TAIL_CALL_START 204 } 205 } 206 func (_static *CompanionStruct_Default___) Concat(strs _dafny.Sequence) _dafny.Sequence { 207 var _0___accumulator _dafny.Sequence = _dafny.SeqOfChars() 208 _ = _0___accumulator 209 goto TAIL_CALL_START 210 TAIL_CALL_START: 211 if (_dafny.IntOfUint32((strs).Cardinality())).Sign() == 0 { 212 return _dafny.Companion_Sequence_.Concatenate(_0___accumulator, _dafny.SeqOfString("")) 213 } else { 214 _0___accumulator = _dafny.Companion_Sequence_.Concatenate(_0___accumulator, (strs).Select(0).(_dafny.Sequence)) 215 var _in0 _dafny.Sequence = (strs).Drop(1) 216 _ = _in0 217 strs = _in0 218 goto TAIL_CALL_START 219 } 220 } 221 func (_static *CompanionStruct_Default___) HEX__DIGITS() _dafny.Sequence { 222 return _dafny.SeqOfString("0123456789ABCDEF") 223 } 224 func (_static *CompanionStruct_Default___) HEX__TABLE() _dafny.Map { 225 return _dafny.NewMapBuilder().ToMap().UpdateUnsafe(_dafny.Char('0'), _dafny.Zero).UpdateUnsafe(_dafny.Char('1'), _dafny.One).UpdateUnsafe(_dafny.Char('2'), _dafny.IntOfInt64(2)).UpdateUnsafe(_dafny.Char('3'), _dafny.IntOfInt64(3)).UpdateUnsafe(_dafny.Char('4'), _dafny.IntOfInt64(4)).UpdateUnsafe(_dafny.Char('5'), _dafny.IntOfInt64(5)).UpdateUnsafe(_dafny.Char('6'), _dafny.IntOfInt64(6)).UpdateUnsafe(_dafny.Char('7'), _dafny.IntOfInt64(7)).UpdateUnsafe(_dafny.Char('8'), _dafny.IntOfInt64(8)).UpdateUnsafe(_dafny.Char('9'), _dafny.IntOfInt64(9)).UpdateUnsafe(_dafny.Char('a'), _dafny.IntOfInt64(10)).UpdateUnsafe(_dafny.Char('b'), _dafny.IntOfInt64(11)).UpdateUnsafe(_dafny.Char('c'), _dafny.IntOfInt64(12)).UpdateUnsafe(_dafny.Char('d'), _dafny.IntOfInt64(13)).UpdateUnsafe(_dafny.Char('e'), _dafny.IntOfInt64(14)).UpdateUnsafe(_dafny.Char('f'), _dafny.IntOfInt64(15)).UpdateUnsafe(_dafny.Char('A'), _dafny.IntOfInt64(10)).UpdateUnsafe(_dafny.Char('B'), _dafny.IntOfInt64(11)).UpdateUnsafe(_dafny.Char('C'), _dafny.IntOfInt64(12)).UpdateUnsafe(_dafny.Char('D'), _dafny.IntOfInt64(13)).UpdateUnsafe(_dafny.Char('E'), _dafny.IntOfInt64(14)).UpdateUnsafe(_dafny.Char('F'), _dafny.IntOfInt64(15)) 226 } 227 228 // End of class Default__