/usr/lib/bouml/xmi2import/7041.bodies is in bouml-plugouts-src 4.21-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 | class UmlAttribute
!!!194306.cpp!!! init() : void
declareFct("ownedattribute", "uml:Property", &importIt);
declareFct("ownedattribute", "", &importIt); // Eclipse .uml
declareFct("ownedliteral", "uml:EnumerationLiteral", &importIt);
declareFct("ownedliteral", "", &importIt); // eclipse
!!!194690.cpp!!! importIt(inout in : FileIn, inout token : Token, inout where : UmlItem) : void
if (!token.valueOf("association").isNull())
UmlRelation::importAsAttribute(in, token, where);
else {
where = where->container(anAttribute, token, in);
if (where != 0) {
QCString s = token.valueOf("name");
if (s.isEmpty()) {
static unsigned n = 0;
s.sprintf("anonymous_attribute_%u", ++n);
}
else
s = legalName(s);
UmlAttribute * att = create((UmlClass *) where, s);
if (att == 0)
in.error("cannot create attribute '" + s +
"' in '" + where->name() + "'");
att->addItem(token.xmiId(), in);
if (token.what() == "ownedliteral")
att->set_Visibility(PublicVisibility);
else
att->setVisibility(token.valueOf("visibility"));
if (token.valueOf("isreadonly") == "true")
att->set_isReadOnly(TRUE);
if (token.valueOf("isderived") == "true")
att->set_isDerived(TRUE, (token.valueOf("isderivedunion") == "true"));
if (token.valueOf("isordered") == "true")
att->set_isOrdered(TRUE);
if (token.valueOf("isunique") == "true")
att->set_isUnique(TRUE);
if (!(s = token.valueOf("type")).isEmpty()) {
UmlTypeSpec ts;
if (att->setType(s, ts))
att->set_Type(ts);
}
if (!(s = token.valueOf("defaultvalue")).isEmpty())
att->set_DefaultValue(s);
if (token.valueOf("isstatic") == "true")
att->set_isClassMember(TRUE);
if (! token.closed()) {
QCString k = token.what();
const char * kstr = k;
while (in.read(), !token.close(kstr)) {
s = token.what();
if (s == "type") {
UmlTypeSpec ts;
if (att->setType(token, ts))
att->set_Type(ts);
if (! token.closed())
in.finish(s);
}
else if (s == "defaultvalue") {
att->set_DefaultValue(token.valueOf("value"));
if (! token.closed())
in.finish(s);
}
else if (s == "lowervalue")
att->importMultiplicity(in, token, FALSE);
else if (s == "uppervalue")
att->importMultiplicity(in, token, TRUE);
else if (s == "upperbound") {
if (! token.closed())
in.finish(s);
}
else if ((s == "specification") && (k == "ownedliteral")) {
if (! token.closed())
in.finish(s);
}
else if (s == "ownedrule")
att->set_Constraint(UmlItem::readConstraint(in, token));
else
att->UmlItem::import(in, token);
}
}
}
}
!!!210690.cpp!!! solve(in idref : string) : void
UmlTypeSpec ts;
if (getType(idref, ts))
set_Type(ts);
else if (!FileIn::isBypassedId(idref))
UmlCom::trace("attribute : unknown type reference '" + idref + "'<br>");
!!!230658.cpp!!! importMultiplicity(inout in : FileIn, inout token : Token, in upper : bool) : void
QCString s = token.valueOf("value");
if (!s.isEmpty() &&
(s != "Unspecified")) { // VP
QCString m = multiplicity();
if (m.isEmpty())
m = s;
else if (m != s) {
if (upper)
m += ".." + s;
else
m = s + ".." + m;
}
set_Multiplicity(m);
}
if (! token.closed())
in.finish(token.what());
|