psyntax: access source properties for all supported objects
authorMark H Weaver <mhw@netris.org>
Wed, 15 Feb 2012 04:22:51 +0000 (23:22 -0500)
committerMark H Weaver <mhw@netris.org>
Wed, 15 Feb 2012 16:24:43 +0000 (11:24 -0500)
commit32fbc38fbb3c7544a45f7be3cf0a981a31681cbb
tree97d44f21af7c615d4417509829f4387f0478e6d3
parent76b9bac565182dd7d0ffe416c3382ac7d59d93ab
psyntax: access source properties for all supported objects

* module/ice-9/psyntax.scm (decorate-source): Set source properties on
  any object that satisfies 'supports-source-properties?'.  Previously
  we used 'pair?' as the predicate.

  (source-annotation): Apply 'source-properties' to _any_ kind of source
  expression, where previously only pairs were queried.  If the argument
  is a syntax-object, apply the source-properties to the syntax-object's
  expression.

  In the peculiar case of a syntax-object whose expression is also a
  syntax-object: previously we would iterate, but with this commit we
  now call 'syntax-object-expression' only once.

* module/ice-9/psyntax-pp.scm: Regenerate.
module/ice-9/psyntax-pp.scm
module/ice-9/psyntax.scm