github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library@v0.2.0/JSON_Deserializer_ByteStrConversion/JSON_Deserializer_ByteStrConversion.go (about) 1 // Package JSON_Deserializer_ByteStrConversion 2 // Dafny module JSON_Deserializer_ByteStrConversion compiled into Go 3 4 package JSON_Deserializer_ByteStrConversion 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_Deserializer_Uint16StrConversion "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/JSON_Deserializer_Uint16StrConversion" 23 m_JSON_Errors "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/JSON_Errors" 24 m_JSON_Grammar "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/JSON_Grammar" 25 m_JSON_Serializer "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/JSON_Serializer" 26 m_JSON_Serializer_ByteStrConversion "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/JSON_Serializer_ByteStrConversion" 27 m_JSON_Spec "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/JSON_Spec" 28 m_JSON_Utils_Cursors "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/JSON_Utils_Cursors" 29 m_JSON_Utils_Lexers_Core "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/JSON_Utils_Lexers_Core" 30 m_JSON_Utils_Lexers_Strings "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/JSON_Utils_Lexers_Strings" 31 m_JSON_Utils_Parsers "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/JSON_Utils_Parsers" 32 m_JSON_Utils_Seq "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/JSON_Utils_Seq" 33 m_JSON_Utils_Str "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/JSON_Utils_Str" 34 m_JSON_Utils_Str_CharStrConversion "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/JSON_Utils_Str_CharStrConversion" 35 m_JSON_Utils_Str_CharStrEscaping "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/JSON_Utils_Str_CharStrEscaping" 36 m_JSON_Utils_Vectors "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/JSON_Utils_Vectors" 37 m_JSON_Utils_Views_Core "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/JSON_Utils_Views_Core" 38 m_JSON_Utils_Views_Writers "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/JSON_Utils_Views_Writers" 39 m_JSON_Values "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/JSON_Values" 40 m_Logarithm "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/Logarithm" 41 m__Math "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/Math_" 42 m_ModInternals "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/ModInternals" 43 m_ModInternalsNonlinear "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/ModInternalsNonlinear" 44 m_Mul "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/Mul" 45 m_MulInternals "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/MulInternals" 46 m_MulInternalsNonlinear "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/MulInternalsNonlinear" 47 m_Power "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/Power" 48 m_Relations "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/Relations" 49 m_Seq "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/Seq" 50 m_Seq_MergeSort "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/Seq_MergeSort" 51 m_Sorting "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/Sorting" 52 m_StandardLibrary "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/StandardLibrary" 53 m_StandardLibraryInterop "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/StandardLibraryInterop" 54 m_StandardLibrary_Sequence "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/StandardLibrary_Sequence" 55 m_StandardLibrary_String "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/StandardLibrary_String" 56 m_StandardLibrary_UInt "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/StandardLibrary_UInt" 57 m_Streams "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/Streams" 58 m_UnicodeStrings "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/UnicodeStrings" 59 m__Unicode "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/Unicode_" 60 m_Utf16EncodingForm "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/Utf16EncodingForm" 61 m_Utf8EncodingForm "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/Utf8EncodingForm" 62 m_Wrappers "github.com/aws/aws-cryptographic-material-providers-library/releases/go/smithy-dafny-standard-library/Wrappers" 63 m__System "github.com/dafny-lang/DafnyRuntimeGo/v4/System_" 64 _dafny "github.com/dafny-lang/DafnyRuntimeGo/v4/dafny" 65 ) 66 67 var _ = os.Args 68 var _ _dafny.Dummy__ 69 var _ m__System.Dummy__ 70 var _ m_Wrappers.Dummy__ 71 var _ m_Relations.Dummy__ 72 var _ m_Seq_MergeSort.Dummy__ 73 var _ m__Math.Dummy__ 74 var _ m_Seq.Dummy__ 75 var _ m_BoundedInts.Dummy__ 76 var _ m__Unicode.Dummy__ 77 var _ m_Functions.Dummy__ 78 var _ m_Utf8EncodingForm.Dummy__ 79 var _ m_Utf16EncodingForm.Dummy__ 80 var _ m_UnicodeStrings.Dummy__ 81 var _ m_FileIO.Dummy__ 82 var _ m_GeneralInternals.Dummy__ 83 var _ m_MulInternalsNonlinear.Dummy__ 84 var _ m_MulInternals.Dummy__ 85 var _ m_Mul.Dummy__ 86 var _ m_ModInternalsNonlinear.Dummy__ 87 var _ m_DivInternalsNonlinear.Dummy__ 88 var _ m_ModInternals.Dummy__ 89 var _ m_DivInternals.Dummy__ 90 var _ m_DivMod.Dummy__ 91 var _ m_Power.Dummy__ 92 var _ m_Logarithm.Dummy__ 93 var _ m_StandardLibraryInterop.Dummy__ 94 var _ m_StandardLibrary_UInt.Dummy__ 95 var _ m_StandardLibrary_Sequence.Dummy__ 96 var _ m_StandardLibrary_String.Dummy__ 97 var _ m_StandardLibrary.Dummy__ 98 var _ m_Streams.Dummy__ 99 var _ m_Sorting.Dummy__ 100 var _ m_HexStrings.Dummy__ 101 var _ m_GetOpt.Dummy__ 102 var _ m_FloatCompare.Dummy__ 103 var _ m_Base64.Dummy__ 104 var _ m_Base64Lemmas.Dummy__ 105 var _ m_Actions.Dummy__ 106 var _ m_JSON_Utils_Views_Core.Dummy__ 107 var _ m_JSON_Utils_Views_Writers.Dummy__ 108 var _ m_JSON_Utils_Lexers_Core.Dummy__ 109 var _ m_JSON_Utils_Lexers_Strings.Dummy__ 110 var _ m_JSON_Utils_Cursors.Dummy__ 111 var _ m_JSON_Utils_Parsers.Dummy__ 112 var _ m_JSON_Utils_Str_CharStrConversion.Dummy__ 113 var _ m_JSON_Utils_Str_CharStrEscaping.Dummy__ 114 var _ m_JSON_Utils_Str.Dummy__ 115 var _ m_JSON_Utils_Seq.Dummy__ 116 var _ m_JSON_Utils_Vectors.Dummy__ 117 var _ m_JSON_Errors.Dummy__ 118 var _ m_JSON_Values.Dummy__ 119 var _ m_JSON_Spec.Dummy__ 120 var _ m_JSON_Grammar.Dummy__ 121 var _ m_JSON_Serializer_ByteStrConversion.Dummy__ 122 var _ m_JSON_Serializer.Dummy__ 123 var _ m_JSON_Deserializer_Uint16StrConversion.Dummy__ 124 125 type Dummy__ struct{} 126 127 // Definition of class Default__ 128 type Default__ struct { 129 dummy byte 130 } 131 132 func New_Default___() *Default__ { 133 _this := Default__{} 134 135 return &_this 136 } 137 138 type CompanionStruct_Default___ struct { 139 } 140 141 var Companion_Default___ = CompanionStruct_Default___{} 142 143 func (_this *Default__) Equals(other *Default__) bool { 144 return _this == other 145 } 146 147 func (_this *Default__) EqualsGeneric(x interface{}) bool { 148 other, ok := x.(*Default__) 149 return ok && _this.Equals(other) 150 } 151 152 func (*Default__) String() string { 153 return "JSON_Deserializer_ByteStrConversion.Default__" 154 } 155 func (_this *Default__) ParentTraits_() []*_dafny.TraitID { 156 return [](*_dafny.TraitID){} 157 } 158 159 var _ _dafny.TraitOffspring = &Default__{} 160 161 func (_static *CompanionStruct_Default___) Digits(n _dafny.Int, base _dafny.Int) _dafny.Sequence { 162 if (n).Sign() == 0 { 163 return _dafny.SeqOf() 164 } else { 165 var _0_digits_k _dafny.Sequence = Companion_Default___.Digits((n).DivBy(base), base) 166 _ = _0_digits_k 167 var _1_digits _dafny.Sequence = _dafny.Companion_Sequence_.Concatenate(_0_digits_k, _dafny.SeqOf((n).Modulo(base))) 168 _ = _1_digits 169 return _1_digits 170 } 171 } 172 func (_static *CompanionStruct_Default___) OfDigits(digits _dafny.Sequence, chars _dafny.Sequence) _dafny.Sequence { 173 var _0___accumulator _dafny.Sequence = _dafny.SeqOf() 174 _ = _0___accumulator 175 goto TAIL_CALL_START 176 TAIL_CALL_START: 177 if _dafny.Companion_Sequence_.Equal(digits, _dafny.SeqOf()) { 178 return _dafny.Companion_Sequence_.Concatenate(_0___accumulator, _dafny.SeqOf()) 179 } else { 180 _0___accumulator = _dafny.Companion_Sequence_.Concatenate(_0___accumulator, _dafny.SeqOf((chars).Select(((digits).Select(0).(_dafny.Int)).Uint32()).(uint8))) 181 var _in0 _dafny.Sequence = (digits).Drop(1) 182 _ = _in0 183 var _in1 _dafny.Sequence = chars 184 _ = _in1 185 digits = _in0 186 chars = _in1 187 goto TAIL_CALL_START 188 } 189 } 190 func (_static *CompanionStruct_Default___) OfNat__any(n _dafny.Int, chars _dafny.Sequence) _dafny.Sequence { 191 var _0_base _dafny.Int = _dafny.IntOfUint32((chars).Cardinality()) 192 _ = _0_base 193 if (n).Sign() == 0 { 194 return _dafny.SeqOf((chars).Select(0).(uint8)) 195 } else { 196 return Companion_Default___.OfDigits(Companion_Default___.Digits(n, _0_base), chars) 197 } 198 } 199 func (_static *CompanionStruct_Default___) NumberStr(str _dafny.Sequence, minus uint8, is__digit func(uint8) bool) bool { 200 return !(!_dafny.Companion_Sequence_.Equal(str, _dafny.SeqOf())) || (((((str).Select(0).(uint8)) == (minus)) || ((is__digit)((str).Select(0).(uint8)))) && (_dafny.Quantifier(((str).Drop(1)).UniqueElements(), true, func(_forall_var_0 uint8) bool { 201 var _0_c uint8 202 _0_c = interface{}(_forall_var_0).(uint8) 203 if true { 204 return !(_dafny.Companion_Sequence_.Contains((str).Drop(1), _0_c)) || ((is__digit)(_0_c)) 205 } else { 206 return true 207 } 208 }))) 209 } 210 func (_static *CompanionStruct_Default___) OfInt__any(n _dafny.Int, chars _dafny.Sequence, minus uint8) _dafny.Sequence { 211 if (n).Sign() != -1 { 212 return Companion_Default___.OfNat__any(n, chars) 213 } else { 214 return _dafny.Companion_Sequence_.Concatenate(_dafny.SeqOf(minus), Companion_Default___.OfNat__any((_dafny.Zero).Minus(n), chars)) 215 } 216 } 217 func (_static *CompanionStruct_Default___) ToNat__any(str _dafny.Sequence, base _dafny.Int, digits _dafny.Map) _dafny.Int { 218 if _dafny.Companion_Sequence_.Equal(str, _dafny.SeqOf()) { 219 return _dafny.Zero 220 } else { 221 return ((Companion_Default___.ToNat__any((str).Take(((_dafny.IntOfUint32((str).Cardinality())).Minus(_dafny.One)).Uint32()), base, digits)).Times(base)).Plus((digits).Get((str).Select(((_dafny.IntOfUint32((str).Cardinality())).Minus(_dafny.One)).Uint32()).(uint8)).(_dafny.Int)) 222 } 223 } 224 func (_static *CompanionStruct_Default___) ToInt__any(str _dafny.Sequence, minus uint8, base _dafny.Int, digits _dafny.Map) _dafny.Int { 225 if _dafny.Companion_Sequence_.IsPrefixOf(_dafny.SeqOf(minus), str) { 226 return (_dafny.Zero).Minus(Companion_Default___.ToNat__any((str).Drop(1), base, digits)) 227 } else { 228 return Companion_Default___.ToNat__any(str, base, digits) 229 } 230 } 231 232 // End of class Default__