@@ -2195,35 +2195,6 @@ struct IntrinsicJSFragment: Sendable {
21952195 wrappedType : BridgeType ,
21962196 kind : JSOptionalKind
21972197 ) throws -> IntrinsicJSFragment {
2198- if case . associatedValueEnum ( let fullName ) = wrappedType {
2199- let base = fullName . components ( separatedBy : " . " ) . last ?? fullName
2200- let absenceLiteral = kind . absenceLiteral
2201- return IntrinsicJSFragment (
2202- parameters : [ ] ,
2203- printCode : { arguments , context in
2204- let ( scope , printer ) = ( context . scope , context . printer )
2205- let caseIdVar = scope . variable ( " caseId " )
2206- let resultVar = scope . variable ( " optValue " )
2207-
2208- printer . write ( " const \( caseIdVar ) = \( scope . popI32 ( ) ) ; " )
2209- printer . write ( " let \( resultVar ) ; " )
2210- printer . write ( " if ( \( caseIdVar ) === -1) { " )
2211- printer . indent {
2212- printer . write ( " \( resultVar ) = \( absenceLiteral ) ; " )
2213- }
2214- printer . write ( " } else { " )
2215- printer . indent {
2216- printer . write (
2217- " \( resultVar ) = \( JSGlueVariableScope . reservedEnumHelpers ) . \( base ) .lift( \( caseIdVar ) ); "
2218- )
2219- }
2220- printer . write ( " } " )
2221-
2222- return [ resultVar ]
2223- }
2224- )
2225- }
2226-
22272198 let absenceLiteral = kind . absenceLiteral
22282199 return IntrinsicJSFragment (
22292200 parameters : [ ] ,
@@ -2261,36 +2232,6 @@ struct IntrinsicJSFragment: Sendable {
22612232 wrappedType : BridgeType ,
22622233 kind : JSOptionalKind
22632234 ) throws -> IntrinsicJSFragment {
2264- if case . associatedValueEnum ( let fullName ) = wrappedType {
2265- let base = fullName . components ( separatedBy : " . " ) . last ?? fullName
2266- return IntrinsicJSFragment (
2267- parameters : [ " value " ] ,
2268- printCode : { arguments , context in
2269- let ( scope , printer ) = ( context . scope , context . printer )
2270- let value = arguments [ 0 ]
2271- let isSomeVar = scope . variable ( " isSome " )
2272- let presenceExpr = kind . presenceCheck ( value : value )
2273-
2274- printer . write ( " const \( isSomeVar ) = \( presenceExpr ) ? 1 : 0; " )
2275- printer . write ( " if ( \( isSomeVar ) ) { " )
2276- printer . indent {
2277- let caseIdVar = scope . variable ( " caseId " )
2278- printer . write (
2279- " const \( caseIdVar ) = \( JSGlueVariableScope . reservedEnumHelpers ) . \( base ) .lower( \( value ) ); "
2280- )
2281- scope . emitPushI32Parameter ( caseIdVar , printer : printer )
2282- }
2283- printer . write ( " } else { " )
2284- printer . indent {
2285- scope . emitPushI32Parameter ( " -1 " , printer : printer )
2286- }
2287- printer . write ( " } " )
2288-
2289- return [ ]
2290- }
2291- )
2292- }
2293-
22942235 return IntrinsicJSFragment (
22952236 parameters : [ " value " ] ,
22962237 printCode : { arguments , context in
0 commit comments