ICG 2
Electric Boogaloo
Namespaces | Functions
DataTypeAlgorithm.hpp File Reference
#include "FindLeaves.hpp"
#include "ContainsPointer.hpp"
#include "LookupAddressAndTypeByName.hpp"
#include "LookupNameByAddressAndType.hpp"
#include "PrintValue.hpp"
#include "AssignValue.hpp"
#include "GetValue.hpp"
#include "ClearValue.hpp"
#include "ResizeSequence.hpp"

Go to the source code of this file.

Namespaces

 DataTypeAlgorithm
 

Functions

ContainsPointer::Result DataTypeAlgorithm::containsPointer (std::shared_ptr< const DataType > node)
 Determine whether or not this type is a pointer, or has any pointer members or subtypes. More...
 
FindLeaves::Result DataTypeAlgorithm::findLeaves (std::shared_ptr< const DataType > node, std::string starting_name, void *starting_address)
 Find all of the leaves in this allocation as name-value pairs. More...
 
LookupAddressAndTypeByName::Result DataTypeAlgorithm::lookupAddressAndTypeByName (std::shared_ptr< const DataType > node, void *starting_address, std::string full_name)
 Search in the allocation of the given type for a nested member with the correct name. If the name does not match the type, returns an empty result. More...
 
LookupAddressAndTypeByName::Result DataTypeAlgorithm::lookupAddressAndTypeByName (std::shared_ptr< const DataType > node, void *starting_address, MutableVariableName name_elems)
 Search in the allocation of the given type for the address and type of a nested member with the correct name. If the name does not match the type, returns an empty result. More...
 
LookupNameByAddressAndType::Result DataTypeAlgorithm::lookupNameByAddressAndType (std::shared_ptr< const DataType > node, std::string starting_name, void *starting_address, void *lookup_address, std::shared_ptr< const DataType > const search_type)
 Traverse the allocation of the given type to get the name of nested member that starts at the given address and is of the given type. More...
 
void DataTypeAlgorithm::printValue (std::shared_ptr< const DataType > node, std::ostream &s, void *address)
 Print an ascii representation of the value starting at the given address of the given type to the given stream. More...
 
AssignValue::Result DataTypeAlgorithm::assignValue (std::shared_ptr< const DataType > node, Value *val, void *address)
 Assign the value of a leaf type (string, pointer, primitive, enum) More...
 
GetValue::Result DataTypeAlgorithm::getValue (std::shared_ptr< const DataType > node, void *address)
 Get the value of a leaf type (string, pointer, primitive, enum) More...
 
void DataTypeAlgorithm::clearValue (std::shared_ptr< const DataType > node, void *address)
 Clear the contents of an instance of a type. More...
 
bool DataTypeAlgorithm::resizeSequence (std::shared_ptr< const DataType > node, void *address, int num_elems)
 Resize a sequence to the given size. More...