@@ -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