From 6cada7207531441ac6e3c2092d5039902122137b Mon Sep 17 00:00:00 2001 From: Kristaps Dzonsons Date: Sun, 27 Jun 2010 16:36:22 +0000 Subject: Allow registers to be unset. Implement and document the `.nr nS val'. --- regs.h | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) (limited to 'regs.h') diff --git a/regs.h b/regs.h index ce56f615..42124a48 100644 --- a/regs.h +++ b/regs.h @@ -1,4 +1,4 @@ -/* $Id: regs.h,v 1.2 2010/06/26 15:36:37 kristaps Exp $ */ +/* $Id: regs.h,v 1.3 2010/06/27 16:36:22 kristaps Exp $ */ /* * Copyright (c) 2010 Kristaps Dzonsons * @@ -24,10 +24,21 @@ enum regs { REG__MAX }; -struct regset { +struct reg { + int set; /* whether set or not */ union { - int i; /* integer value */ - } regs[REG__MAX]; + unsigned u; /* unsigned integer */ + } v; +}; + +/* + * Registers are non-scoped state. These can be manipulated directly in + * libroff or indirectly in libman or libmdoc by macros. These should + * be implemented sparingly (we are NOT roffdoc!) and documented fully + * in roff.7. + */ +struct regset { + struct reg regs[REG__MAX]; }; __END_DECLS -- cgit v1.2.3