on master help sign in
Use Text.encodeUtf8Builder in Gen.JS.Builder
821268bEvan Czaplicki
src/Generate/JavaScript/Builder.hs+6−11
@@ -272,12 +272,7 @@ fromClause indent clause =
272
272
273fromId :: Id -> Builder
273fromId :: Id -> Builder
274fromId (Id name) =
274fromId (Id name) =
275− fromText name
275+ Text.encodeUtf8Builder name
276−
277−
278−fromText :: Text -> Builder
279−fromText txt =
280− byteString (Text.encodeUtf8 txt)
281
276
282
277
283
278
@@ -288,10 +283,10 @@ fromVarDecl :: Builder -> VarDecl -> Builder
288fromVarDecl indent (VarDecl (Id name) maybeExpr) =
283fromVarDecl indent (VarDecl (Id name) maybeExpr) =
289 case maybeExpr of
284 case maybeExpr of
290 Nothing ->
285 Nothing ->
291− fromText name
286+ Text.encodeUtf8Builder name
292
287
293 Just expr ->
288 Just expr ->
294− fromText name <> " = " <> snd (fromExpr indent Whatever expr)
289+ Text.encodeUtf8Builder name <> " = " <> snd (fromExpr indent Whatever expr)
295
290
296
291
297
292
@@ -494,7 +489,7 @@ fromProp prop =
494
489
495quoted :: Text -> Builder
490quoted :: Text -> Builder
496quoted str =
491quoted str =
497− "'" <> fromText str <> "'"
492+ "'" <> Text.encodeUtf8Builder str <> "'"
498
493
499
494
500
495
@@ -505,7 +500,7 @@ fromLValue :: Builder -> LValue -> (Lines, Builder)
505fromLValue indent lValue =
500fromLValue indent lValue =
506 case lValue of
501 case lValue of
507 LVar name ->
502 LVar name ->
508− (One, fromText name)
503+ (One, Text.encodeUtf8Builder name)
509
504
510 LDot expr field ->
505 LDot expr field ->
511 makeDot indent expr field
506 makeDot indent expr field
@@ -520,7 +515,7 @@ makeDot indent expr field =
520 (lines, builder) =
515 (lines, builder) =
521 fromExpr indent Atomic expr
516 fromExpr indent Atomic expr
522 in
517 in
523− (lines, builder <> "." <> fromText field)
518+ (lines, builder <> "." <> Text.encodeUtf8Builder field)
524
519
525
520
526makeBracketed :: Builder -> Expr -> Expr -> (Lines, Builder)
521makeBracketed :: Builder -> Expr -> Expr -> (Lines, Builder)