From c0ed08e5e2b971c69274dc55a3a9ddd345f3f9b5 Mon Sep 17 00:00:00 2001 From: Paul Beckingham Date: Tue, 15 Apr 2014 21:14:38 -0400 Subject: [PATCH] A3t - Tags attributes as MODIFIABLE. --- src/A3t.cpp | 13 +++++++++++-- src/Context.cpp | 4 ++-- 2 files changed, 13 insertions(+), 4 deletions(-) diff --git a/src/A3t.cpp b/src/A3t.cpp index 9a2bb1d60..c99566e53 100644 --- a/src/A3t.cpp +++ b/src/A3t.cpp @@ -551,12 +551,18 @@ void A3t::findAttribute () (*i)->tag ("ATTRIBUTE"); (*i)->attribute ("name", canonical); (*i)->attribute ("value", value); + + if (context.columns[canonical]->modifiable ()) + (*i)->tag ("MODIFIABLE"); } - if (canonicalize (canonical, "uda", name)) + else if (canonicalize (canonical, "uda", name)) + { (*i)->tag ("UDA"); + (*i)->tag ("MODIFIABLE"); + } - if (canonicalize (canonical, "pseudo", name)) + else if (canonicalize (canonical, "pseudo", name)) { (*i)->unTag ("?"); (*i)->tag ("PSEUDO"); @@ -617,6 +623,9 @@ void A3t::findAttributeModifier () (*i)->attribute ("value", value); (*i)->attribute ("modifier", modifier); (*i)->attribute ("sense", sense); + + if (context.columns[canonical]->modifiable ()) + (*i)->tag ("MODIFIABLE"); } } } diff --git a/src/Context.cpp b/src/Context.cpp index c23e775dc..4e847a08f 100644 --- a/src/Context.cpp +++ b/src/Context.cpp @@ -173,6 +173,8 @@ int Context::initialize (int argc, const char** argv) // TODO Entities: Write commands. // TODO Entities: Special commands. // TODO Entities: Helper commands. + + // TODO Need: bool Command::report() - maybe not. } // Instantiate built-in column objects. @@ -184,8 +186,6 @@ int Context::initialize (int argc, const char** argv) // Entities: Pseudo-attributes. a3t.entity ("pseudo", "limit"); - // TODO Entities: UDAs. - // Entities: Modifiers. for (unsigned int i = 0; i < NUM_MODIFIER_NAMES; ++i) a3t.entity ("modifier", modifierNames[i]);