git.iko.soy/rowtype-yoga/purescript-native
on golang help sign in
Inline number negation in renderer
4cf7428Andy Arvanitis
src/CodeGen/Cpp/Printer.hs+9
@@ -110,6 +110,15 @@ literals = mkPattern' match'
110 , return $ emit op
110 , return $ emit op
111 , return $ emit $ unbox t y
111 , return $ emit $ unbox t y
112 ]
112 ]
113+ match (App _ (App _ (Indexer _ (Var _ fn) (Var _ fnMod)) [Indexer _ (Var _ dict) (Var _ dictMod)]) [n])
114+ | fnMod == dictMod
115+ , dictMod == C.dataRing
116+ , fn == C.negate
117+ , Just t <- unboxType dict
118+ = mconcat <$> sequence
119+ [ return $ emit "-"
120+ , return $ emit $ unbox t n
121+ ]
113 match (App _ val args) = mconcat <$> sequence
122 match (App _ val args) = mconcat <$> sequence
114 [ prettyPrintCpp' val
123 [ prettyPrintCpp' val
115 , return $ emit "("
124 , return $ emit "("