| The Gaudi Framework v32r1 (f65d50dc)

Functions
Analyzer.cpp File Reference
`#include <iostream>`
`#include <memory>`
`#include <boost/format.hpp>`
`#include "Analyzer.h"`
`#include "Catalog.h"`
`#include "IncludedFiles.h"`
`#include "Messages.h"`
`#include "Node.h"`
`#include "Parser.h"`
`#include "PragmaOptions.h"`
`#include "PropertyName.h"`
`#include "PropertyValue.h"`
`#include "Units.h"`
`#include "GaudiKernel/Environment.h"`
Include dependency graph for Analyzer.cpp:

Go to the source code of this file.

## Functions
bool | Unreference (gp::Catalog &catalog, gp::Messages *messages)

## Function Documentation

## ◆ Unreference()

bool Unreference | ( | gp::Catalog & | catalog,
|  | gp::Messages * | messages
| ) |  |

Definition at line 356 of file Analyzer.cpp.

356 {
357 bool unreference_result = true;
358 for ( auto& client : catalog ) {
359 for ( auto& current : client.second ) {
360 if ( current.IsReference() ) {
361 gp::PropertyValue& value = current.property_value();
362 const std::vector<std::string>& names = value.Vector();
363 gp::Property* property = catalog.Find( names[0], names[1] );
364 if ( !property ) {
365 messages->AddError( value.position(), "Could not unreference " + current.ValueAsString() );
366 unreference_result = false;
367 } else {
368 value = property->property_value();
369 }
370 }
371 }
372 }
373 return unreference_result;
374 }
Property
Gaudi::Details::PropertyBase Property
\fixme backward compatibility hack for old Property base class
Definition: PropertyFwd.h:25
std::vector< std::string >