/* * Attribute accessor. * * It takes either a string or a symbol and returns * the value of the attribute. * * If its a symbol, all underline characters are converted * to colons. E.g. +:solvable_installsize+ -> +"solvable:installsize"+ * * A +ValueError+ exception is raised if the attribute * name does not exist. * * +nil+ is returned if the attribute name exists but is not set for * the solvable. * * * call-seq: * solvable["solvable:installsize"] -> VALUE * solvable.attr("solvable:installsize") -> VALUE * solvable.attr(:solvable_installsize) -> VALUE * */ VALUE attr( VALUE attrname )