Lines Matching refs:IO
20 static inline void mapOptional(yaml::IO &IO, const char *Key, EndianType &Val, in mapOptional() argument
22 IO.mapOptional(Key, Val, EndianType(Default)); in mapOptional()
27 static inline void mapRequiredAs(yaml::IO &IO, const char *Key, in mapRequiredAs() argument
30 IO.mapRequired(Key, Mapped); in mapRequiredAs()
37 static inline void mapOptionalAs(yaml::IO &IO, const char *Key, EndianType &Val, in mapOptionalAs() argument
40 IO.mapOptional(Key, Mapped, Default); in mapOptionalAs()
54 static inline void mapRequiredHex(yaml::IO &IO, const char *Key, in mapRequiredHex() argument
56 mapRequiredAs<typename HexType<EndianType>::type>(IO, Key, Val); in mapRequiredHex()
62 static inline void mapOptionalHex(yaml::IO &IO, const char *Key, in mapOptionalHex() argument
65 mapOptionalAs<typename HexType<EndianType>::type>(IO, Key, Val, Default); in mapOptionalHex()
121 IO &IO, MemoryProtection &Protect) { in bitset() argument
123 IO.bitSetCase(Protect, #NATIVENAME, MemoryProtection::NAME); in bitset()
127 void yaml::ScalarBitSetTraits<MemoryState>::bitset(IO &IO, MemoryState &State) { in bitset() argument
129 IO.bitSetCase(State, #NATIVENAME, MemoryState::NAME); in bitset()
133 void yaml::ScalarBitSetTraits<MemoryType>::bitset(IO &IO, MemoryType &Type) { in bitset() argument
135 IO.bitSetCase(Type, #NATIVENAME, MemoryType::NAME); in bitset()
140 IO &IO, ProcessorArchitecture &Arch) { in enumeration() argument
142 IO.enumCase(Arch, #NAME, ProcessorArchitecture::NAME); in enumeration()
144 IO.enumFallback<Hex16>(Arch); in enumeration()
147 void yaml::ScalarEnumerationTraits<OSPlatform>::enumeration(IO &IO, in enumeration() argument
150 IO.enumCase(Plat, #NAME, OSPlatform::NAME); in enumeration()
152 IO.enumFallback<Hex32>(Plat); in enumeration()
155 void yaml::ScalarEnumerationTraits<StreamType>::enumeration(IO &IO, in enumeration() argument
158 IO.enumCase(Type, #NAME, StreamType::NAME); in enumeration()
160 IO.enumFallback<Hex32>(Type); in enumeration()
163 void yaml::MappingTraits<CPUInfo::ArmInfo>::mapping(IO &IO, in mapping() argument
165 mapRequiredHex(IO, "CPUID", Info.CPUID); in mapping()
166 mapOptionalHex(IO, "ELF hwcaps", Info.ElfHWCaps, 0); in mapping()
200 IO &IO, CPUInfo::OtherInfo &Info) { in mapping() argument
202 IO.mapRequired("Features", Features); in mapping()
235 void yaml::MappingTraits<CPUInfo::X86Info>::mapping(IO &IO, in mapping() argument
238 IO.mapRequired("Vendor ID", VendorID); in mapping()
240 mapRequiredHex(IO, "Version Info", Info.VersionInfo); in mapping()
241 mapRequiredHex(IO, "Feature Info", Info.FeatureInfo); in mapping()
242 mapOptionalHex(IO, "AMD Extended Features", Info.AMDExtendedFeatures, 0); in mapping()
245 void yaml::MappingTraits<MemoryInfo>::mapping(IO &IO, MemoryInfo &Info) { in mapping() argument
246 mapRequiredHex(IO, "Base Address", Info.BaseAddress); in mapping()
247 mapOptionalHex(IO, "Allocation Base", Info.AllocationBase, Info.BaseAddress); in mapping()
248 mapRequiredAs<MemoryProtection>(IO, "Allocation Protect", in mapping()
250 mapOptionalHex(IO, "Reserved0", Info.Reserved0, 0); in mapping()
251 mapRequiredHex(IO, "Region Size", Info.RegionSize); in mapping()
252 mapRequiredAs<MemoryState>(IO, "State", Info.State); in mapping()
253 mapOptionalAs<MemoryProtection>(IO, "Protect", Info.Protect, in mapping()
255 mapRequiredAs<MemoryType>(IO, "Type", Info.Type); in mapping()
256 mapOptionalHex(IO, "Reserved1", Info.Reserved1, 0); in mapping()
259 void yaml::MappingTraits<VSFixedFileInfo>::mapping(IO &IO, in mapping() argument
261 mapOptionalHex(IO, "Signature", Info.Signature, 0); in mapping()
262 mapOptionalHex(IO, "Struct Version", Info.StructVersion, 0); in mapping()
263 mapOptionalHex(IO, "File Version High", Info.FileVersionHigh, 0); in mapping()
264 mapOptionalHex(IO, "File Version Low", Info.FileVersionLow, 0); in mapping()
265 mapOptionalHex(IO, "Product Version High", Info.ProductVersionHigh, 0); in mapping()
266 mapOptionalHex(IO, "Product Version Low", Info.ProductVersionLow, 0); in mapping()
267 mapOptionalHex(IO, "File Flags Mask", Info.FileFlagsMask, 0); in mapping()
268 mapOptionalHex(IO, "File Flags", Info.FileFlags, 0); in mapping()
269 mapOptionalHex(IO, "File OS", Info.FileOS, 0); in mapping()
270 mapOptionalHex(IO, "File Type", Info.FileType, 0); in mapping()
271 mapOptionalHex(IO, "File Subtype", Info.FileSubtype, 0); in mapping()
272 mapOptionalHex(IO, "File Date High", Info.FileDateHigh, 0); in mapping()
273 mapOptionalHex(IO, "File Date Low", Info.FileDateLow, 0); in mapping()
277 IO &IO, ModuleListStream::entry_type &M) { in mapping() argument
278 mapRequiredHex(IO, "Base of Image", M.Entry.BaseOfImage); in mapping()
279 mapRequiredHex(IO, "Size of Image", M.Entry.SizeOfImage); in mapping()
280 mapOptionalHex(IO, "Checksum", M.Entry.Checksum, 0); in mapping()
281 mapOptional(IO, "Time Date Stamp", M.Entry.TimeDateStamp, 0); in mapping()
282 IO.mapRequired("Module Name", M.Name); in mapping()
283 IO.mapOptional("Version Info", M.Entry.VersionInfo, VSFixedFileInfo()); in mapping()
284 IO.mapRequired("CodeView Record", M.CvRecord); in mapping()
285 IO.mapOptional("Misc Record", M.MiscRecord, yaml::BinaryRef()); in mapping()
286 mapOptionalHex(IO, "Reserved0", M.Entry.Reserved0, 0); in mapping()
287 mapOptionalHex(IO, "Reserved1", M.Entry.Reserved1, 0); in mapping()
290 static void streamMapping(yaml::IO &IO, RawContentStream &Stream) { in streamMapping() argument
291 IO.mapOptional("Content", Stream.Content); in streamMapping()
292 IO.mapOptional("Size", Stream.Size, Stream.Content.binary_size()); in streamMapping()
302 IO &IO, MemoryListStream::entry_type &Range) { in mapping() argument
304 IO, Range.Entry, Range.Content); in mapping()
307 static void streamMapping(yaml::IO &IO, MemoryInfoListStream &Stream) { in streamMapping() argument
308 IO.mapRequired("Memory Ranges", Stream.Infos); in streamMapping()
311 static void streamMapping(yaml::IO &IO, MemoryListStream &Stream) { in streamMapping() argument
312 IO.mapRequired("Memory Ranges", Stream.Entries); in streamMapping()
315 static void streamMapping(yaml::IO &IO, ModuleListStream &Stream) { in streamMapping() argument
316 IO.mapRequired("Modules", Stream.Entries); in streamMapping()
319 static void streamMapping(yaml::IO &IO, SystemInfoStream &Stream) { in streamMapping() argument
321 IO.mapRequired("Processor Arch", Info.ProcessorArch); in streamMapping()
322 mapOptional(IO, "Processor Level", Info.ProcessorLevel, 0); in streamMapping()
323 mapOptional(IO, "Processor Revision", Info.ProcessorRevision, 0); in streamMapping()
324 IO.mapOptional("Number of Processors", Info.NumberOfProcessors, 0); in streamMapping()
325 IO.mapOptional("Product type", Info.ProductType, 0); in streamMapping()
326 mapOptional(IO, "Major Version", Info.MajorVersion, 0); in streamMapping()
327 mapOptional(IO, "Minor Version", Info.MinorVersion, 0); in streamMapping()
328 mapOptional(IO, "Build Number", Info.BuildNumber, 0); in streamMapping()
329 IO.mapRequired("Platform ID", Info.PlatformId); in streamMapping()
330 IO.mapOptional("CSD Version", Stream.CSDVersion, ""); in streamMapping()
331 mapOptionalHex(IO, "Suite Mask", Info.SuiteMask, 0); in streamMapping()
332 mapOptionalHex(IO, "Reserved", Info.Reserved, 0); in streamMapping()
336 IO.mapOptional("CPU", Info.CPU.X86); in streamMapping()
341 IO.mapOptional("CPU", Info.CPU.Arm); in streamMapping()
344 IO.mapOptional("CPU", Info.CPU.Other); in streamMapping()
349 static void streamMapping(yaml::IO &IO, TextContentStream &Stream) { in streamMapping() argument
350 IO.mapOptional("Text", Stream.Text); in streamMapping()
354 IO &IO, MemoryDescriptor &Memory, BinaryRef &Content) { in mapping() argument
355 mapRequiredHex(IO, "Start of Memory Range", Memory.StartOfMemoryRange); in mapping()
356 IO.mapRequired("Content", Content); in mapping()
360 IO &IO, ThreadListStream::entry_type &T) { in mapping() argument
361 mapRequiredHex(IO, "Thread Id", T.Entry.ThreadId); in mapping()
362 mapOptionalHex(IO, "Suspend Count", T.Entry.SuspendCount, 0); in mapping()
363 mapOptionalHex(IO, "Priority Class", T.Entry.PriorityClass, 0); in mapping()
364 mapOptionalHex(IO, "Priority", T.Entry.Priority, 0); in mapping()
365 mapOptionalHex(IO, "Environment Block", T.Entry.EnvironmentBlock, 0); in mapping()
366 IO.mapRequired("Context", T.Context); in mapping()
367 IO.mapRequired("Stack", T.Entry.Stack, T.Stack); in mapping()
370 static void streamMapping(yaml::IO &IO, ThreadListStream &Stream) { in streamMapping() argument
371 IO.mapRequired("Threads", Stream.Entries); in streamMapping()
374 static void streamMapping(yaml::IO &IO, MinidumpYAML::ExceptionStream &Stream) { in streamMapping() argument
375 mapRequiredHex(IO, "Thread ID", Stream.MDExceptionStream.ThreadId); in streamMapping()
376 IO.mapRequired("Exception Record", Stream.MDExceptionStream.ExceptionRecord); in streamMapping()
377 IO.mapRequired("Thread Context", Stream.ThreadContext); in streamMapping()
381 yaml::IO &IO, minidump::Exception &Exception) { in mapping() argument
382 mapRequiredHex(IO, "Exception Code", Exception.ExceptionCode); in mapping()
383 mapOptionalHex(IO, "Exception Flags", Exception.ExceptionFlags, 0); in mapping()
384 mapOptionalHex(IO, "Exception Record", Exception.ExceptionRecord, 0); in mapping()
385 mapOptionalHex(IO, "Exception Address", Exception.ExceptionAddress, 0); in mapping()
386 mapOptional(IO, "Number of Parameters", Exception.NumberParameters, 0); in mapping()
394 mapRequiredHex(IO, Name.c_str(), Field); in mapping()
396 mapOptionalHex(IO, Name.c_str(), Field, 0); in mapping()
401 yaml::IO &IO, std::unique_ptr<MinidumpYAML::Stream> &S) { in mapping() argument
403 if (IO.outputting()) in mapping()
405 IO.mapRequired("Type", Type); in mapping()
407 if (!IO.outputting()) in mapping()
411 streamMapping(IO, llvm::cast<MinidumpYAML::ExceptionStream>(*S)); in mapping()
414 streamMapping(IO, llvm::cast<MemoryInfoListStream>(*S)); in mapping()
417 streamMapping(IO, llvm::cast<MemoryListStream>(*S)); in mapping()
420 streamMapping(IO, llvm::cast<ModuleListStream>(*S)); in mapping()
423 streamMapping(IO, llvm::cast<RawContentStream>(*S)); in mapping()
426 streamMapping(IO, llvm::cast<SystemInfoStream>(*S)); in mapping()
429 streamMapping(IO, llvm::cast<TextContentStream>(*S)); in mapping()
432 streamMapping(IO, llvm::cast<ThreadListStream>(*S)); in mapping()
438 yaml::IO &IO, std::unique_ptr<MinidumpYAML::Stream> &S) { in validate() argument
454 void yaml::MappingTraits<Object>::mapping(IO &IO, Object &O) { in mapping() argument
455 IO.mapTag("!minidump", true); in mapping()
456 mapOptionalHex(IO, "Signature", O.Header.Signature, Header::MagicSignature); in mapping()
457 mapOptionalHex(IO, "Version", O.Header.Version, Header::MagicVersion); in mapping()
458 mapOptionalHex(IO, "Flags", O.Header.Flags, 0); in mapping()
459 IO.mapRequired("Streams", O.Streams); in mapping()