unary_op_table :: [(UnaryOp, String)]
unary_op_table
  = [ (UPlus, "+"), (UMinus, "-"), (UBang, "!"), (UTilde, "~")
    , (UAnd, "&"), (UNand, "~&"), (UOr, "|"), (UNor, "~|")
    , (UXor, "^"), (UXnor, "~^"), (UXnor, "^~")
    ]
unary_op_table :: [(UnaryOp, String)]
unary_op_table
  = [ (UPlus, "+"), (UMinus, "-"), (UBang, "!"), (UTilde, "~")
    , (UAnd, "&"), (UNand, "~&"), (UOr, "|"), (UNor, "~|")
    , (UXor, "^"), (UXnor, "~^"), (UXnor, "^~")
    ]
unary_op_table
  = [ (UPlus, "+"), (UMinus, "-"), (UBang, "!"), (UTilde, "~")
    , (UAnd, "&"), (UNand, "~&"), (UOr, "|"), (UNor, "~|")
    , (UXor, "^"), (UXnor, "~^"), (UXnor, "^~")
    ]