1 // Auto-generated file - DO NOT EDIT!
\r
2 // Please edit md-schema.xml or tabs-base.xsl if you want to make changes.
\r
6 namespace Mono.PEToolkit.Metadata {
\r
13 public abstract class TablesHeapBase : MDHeap {
\r
15 internal TablesHeapBase(MDStream stream) : base(stream)
\r
20 /// Gets or sets bitvector of valid tables (64-bit).
\r
22 public abstract long Valid {get; set;}
\r
25 /// Gets or sets bitvector of sorted tables (64-bit).
\r
27 public abstract long Sorted {get; set;}
\r
31 // Accessors to decode Valid bitvector.
\r
36 /// True if heap has Module table.
\r
38 public bool HasModule {
\r
40 return (Valid & (1L << 0x00)) != 0;
\r
43 long mask = (1L << 0x00);
\r
53 /// True if heap has TypeRef table.
\r
55 public bool HasTypeRef {
\r
57 return (Valid & (1L << 0x01)) != 0;
\r
60 long mask = (1L << 0x01);
\r
70 /// True if heap has TypeDef table.
\r
72 public bool HasTypeDef {
\r
74 return (Valid & (1L << 0x02)) != 0;
\r
77 long mask = (1L << 0x02);
\r
87 /// True if heap has FieldPtr table.
\r
89 public bool HasFieldPtr {
\r
91 return (Valid & (1L << 0x03)) != 0;
\r
94 long mask = (1L << 0x03);
\r
104 /// True if heap has Field table.
\r
106 public bool HasField {
\r
108 return (Valid & (1L << 0x04)) != 0;
\r
111 long mask = (1L << 0x04);
\r
121 /// True if heap has MethodPtr table.
\r
123 public bool HasMethodPtr {
\r
125 return (Valid & (1L << 0x05)) != 0;
\r
128 long mask = (1L << 0x05);
\r
138 /// True if heap has Method table.
\r
140 public bool HasMethod {
\r
142 return (Valid & (1L << 0x06)) != 0;
\r
145 long mask = (1L << 0x06);
\r
155 /// True if heap has ParamPtr table.
\r
157 public bool HasParamPtr {
\r
159 return (Valid & (1L << 0x07)) != 0;
\r
162 long mask = (1L << 0x07);
\r
172 /// True if heap has Param table.
\r
174 public bool HasParam {
\r
176 return (Valid & (1L << 0x08)) != 0;
\r
179 long mask = (1L << 0x08);
\r
189 /// True if heap has InterfaceImpl table.
\r
191 public bool HasInterfaceImpl {
\r
193 return (Valid & (1L << 0x09)) != 0;
\r
196 long mask = (1L << 0x09);
\r
206 /// True if heap has MemberRef table.
\r
208 public bool HasMemberRef {
\r
210 return (Valid & (1L << 0x0a)) != 0;
\r
213 long mask = (1L << 0x0a);
\r
223 /// True if heap has Constant table.
\r
225 public bool HasConstant {
\r
227 return (Valid & (1L << 0x0b)) != 0;
\r
230 long mask = (1L << 0x0b);
\r
240 /// True if heap has CustomAttribute table.
\r
242 public bool HasCustomAttribute {
\r
244 return (Valid & (1L << 0x0c)) != 0;
\r
247 long mask = (1L << 0x0c);
\r
257 /// True if heap has FieldMarshal table.
\r
259 public bool HasFieldMarshal {
\r
261 return (Valid & (1L << 0x0d)) != 0;
\r
264 long mask = (1L << 0x0d);
\r
274 /// True if heap has DeclSecurity table.
\r
276 public bool HasDeclSecurity {
\r
278 return (Valid & (1L << 0x0e)) != 0;
\r
281 long mask = (1L << 0x0e);
\r
291 /// True if heap has ClassLayout table.
\r
293 public bool HasClassLayout {
\r
295 return (Valid & (1L << 0x0f)) != 0;
\r
298 long mask = (1L << 0x0f);
\r
308 /// True if heap has FieldLayout table.
\r
310 public bool HasFieldLayout {
\r
312 return (Valid & (1L << 0x10)) != 0;
\r
315 long mask = (1L << 0x10);
\r
325 /// True if heap has StandAloneSig table.
\r
327 public bool HasStandAloneSig {
\r
329 return (Valid & (1L << 0x11)) != 0;
\r
332 long mask = (1L << 0x11);
\r
342 /// True if heap has EventMap table.
\r
344 public bool HasEventMap {
\r
346 return (Valid & (1L << 0x12)) != 0;
\r
349 long mask = (1L << 0x12);
\r
359 /// True if heap has EventPtr table.
\r
361 public bool HasEventPtr {
\r
363 return (Valid & (1L << 0x13)) != 0;
\r
366 long mask = (1L << 0x13);
\r
376 /// True if heap has Event table.
\r
378 public bool HasEvent {
\r
380 return (Valid & (1L << 0x14)) != 0;
\r
383 long mask = (1L << 0x14);
\r
393 /// True if heap has PropertyMap table.
\r
395 public bool HasPropertyMap {
\r
397 return (Valid & (1L << 0x15)) != 0;
\r
400 long mask = (1L << 0x15);
\r
410 /// True if heap has PropertyPtr table.
\r
412 public bool HasPropertyPtr {
\r
414 return (Valid & (1L << 0x16)) != 0;
\r
417 long mask = (1L << 0x16);
\r
427 /// True if heap has Property table.
\r
429 public bool HasProperty {
\r
431 return (Valid & (1L << 0x17)) != 0;
\r
434 long mask = (1L << 0x17);
\r
444 /// True if heap has MethodSemantics table.
\r
446 public bool HasMethodSemantics {
\r
448 return (Valid & (1L << 0x18)) != 0;
\r
451 long mask = (1L << 0x18);
\r
461 /// True if heap has MethodImpl table.
\r
463 public bool HasMethodImpl {
\r
465 return (Valid & (1L << 0x19)) != 0;
\r
468 long mask = (1L << 0x19);
\r
478 /// True if heap has ModuleRef table.
\r
480 public bool HasModuleRef {
\r
482 return (Valid & (1L << 0x1a)) != 0;
\r
485 long mask = (1L << 0x1a);
\r
495 /// True if heap has TypeSpec table.
\r
497 public bool HasTypeSpec {
\r
499 return (Valid & (1L << 0x1b)) != 0;
\r
502 long mask = (1L << 0x1b);
\r
512 /// True if heap has ImplMap table.
\r
514 public bool HasImplMap {
\r
516 return (Valid & (1L << 0x1c)) != 0;
\r
519 long mask = (1L << 0x1c);
\r
529 /// True if heap has FieldRVA table.
\r
531 public bool HasFieldRVA {
\r
533 return (Valid & (1L << 0x1d)) != 0;
\r
536 long mask = (1L << 0x1d);
\r
546 /// True if heap has ENCLog table.
\r
548 public bool HasENCLog {
\r
550 return (Valid & (1L << 0x1e)) != 0;
\r
553 long mask = (1L << 0x1e);
\r
563 /// True if heap has ENCMap table.
\r
565 public bool HasENCMap {
\r
567 return (Valid & (1L << 0x1f)) != 0;
\r
570 long mask = (1L << 0x1f);
\r
580 /// True if heap has Assembly table.
\r
582 public bool HasAssembly {
\r
584 return (Valid & (1L << 0x20)) != 0;
\r
587 long mask = (1L << 0x20);
\r
597 /// True if heap has AssemblyProcessor table.
\r
599 public bool HasAssemblyProcessor {
\r
601 return (Valid & (1L << 0x21)) != 0;
\r
604 long mask = (1L << 0x21);
\r
614 /// True if heap has AssemblyOS table.
\r
616 public bool HasAssemblyOS {
\r
618 return (Valid & (1L << 0x22)) != 0;
\r
621 long mask = (1L << 0x22);
\r
631 /// True if heap has AssemblyRef table.
\r
633 public bool HasAssemblyRef {
\r
635 return (Valid & (1L << 0x23)) != 0;
\r
638 long mask = (1L << 0x23);
\r
648 /// True if heap has AssemblyRefProcessor table.
\r
650 public bool HasAssemblyRefProcessor {
\r
652 return (Valid & (1L << 0x24)) != 0;
\r
655 long mask = (1L << 0x24);
\r
665 /// True if heap has AssemblyRefOS table.
\r
667 public bool HasAssemblyRefOS {
\r
669 return (Valid & (1L << 0x25)) != 0;
\r
672 long mask = (1L << 0x25);
\r
682 /// True if heap has File table.
\r
684 public bool HasFile {
\r
686 return (Valid & (1L << 0x26)) != 0;
\r
689 long mask = (1L << 0x26);
\r
699 /// True if heap has ExportedType table.
\r
701 public bool HasExportedType {
\r
703 return (Valid & (1L << 0x27)) != 0;
\r
706 long mask = (1L << 0x27);
\r
716 /// True if heap has ManifestResource table.
\r
718 public bool HasManifestResource {
\r
720 return (Valid & (1L << 0x28)) != 0;
\r
723 long mask = (1L << 0x28);
\r
733 /// True if heap has NestedClass table.
\r
735 public bool HasNestedClass {
\r
737 return (Valid & (1L << 0x29)) != 0;
\r
740 long mask = (1L << 0x29);
\r
750 /// True if heap has TypeTyPar table.
\r
752 public bool HasTypeTyPar {
\r
754 return (Valid & (1L << 0x2a)) != 0;
\r
757 long mask = (1L << 0x2a);
\r
767 /// True if heap has MethodTyPar table.
\r
769 public bool HasMethodTyPar {
\r
771 return (Valid & (1L << 0x2b)) != 0;
\r
774 long mask = (1L << 0x2b);
\r