From 00cf7ee61dd07dc1be2eb5e506012e400db75e7d Mon Sep 17 00:00:00 2001 From: "C. McEnroe" Date: Sat, 18 Jul 2020 15:04:59 -0400 Subject: Read from stdin in order --- bin/man1/order.1 | 9 +++++++-- bin/order.y | 7 +++++++ 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/bin/man1/order.1 b/bin/man1/order.1 index f042102f..8e0f9661 100644 --- a/bin/man1/order.1 +++ b/bin/man1/order.1 @@ -1,4 +1,4 @@ -.Dd May 18, 2019 +.Dd July 18, 2020 .Dt ORDER 1 .Os . @@ -8,7 +8,7 @@ . .Sh SYNOPSIS .Nm -.Ar expr ... +.Op Ar expr ... . .Sh DESCRIPTION .Nm @@ -16,6 +16,11 @@ parses C expressions and prints them with parentheses according to the precedence rules in .Xr operator 7 . +If no +.Ar expr +are given, +each line of standard input +is parsed and printed. . .Sh EXAMPLES .Bd -literal diff --git a/bin/order.y b/bin/order.y index 0fb882d9..b798e634 100644 --- a/bin/order.y +++ b/bin/order.y @@ -183,4 +183,11 @@ int main(int argc, char *argv[]) { input = argv[i]; yyparse(); } + if (argc > 1) return EX_OK; + size_t cap = 0; + char *buf = NULL; + while (0 < getline(&buf, &cap, stdin)) { + input = buf; + yyparse(); + } } -- cgit 1.4.1