//===- YAML.cpp - YAMLIO utilities for object files -----------------------===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// // // This file defines utility classes for handling the YAML representation of // object files. // //===----------------------------------------------------------------------===// #include "llvm/Object/YAML.h" using namespace llvm; void yaml::ScalarTraits::output( const object::yaml::BinaryRef &Val, void *, llvm::raw_ostream &Out) { ArrayRef Data = Val.getBinary(); for (ArrayRef::iterator I = Data.begin(), E = Data.end(); I != E; ++I) { uint8_t Byte = *I; Out << hexdigit(Byte >> 4); Out << hexdigit(Byte & 0xf); } } StringRef yaml::ScalarTraits::input( StringRef Scalar, void *, object::yaml::BinaryRef &Val) { Val = object::yaml::BinaryRef(Scalar); return StringRef(); }