IKVM11  11
Java SE 11 Virtual Machine for .NET
Loading...
Searching...
No Matches
IKVM.Reflection.Emit.ImportsEncoder Struct Reference

Public Member Functions

 ImportsEncoder (BlobBuilder writer)
 Initializes a new instance.
 
void AliasAssemblyReference (BlobHandle alias, AssemblyReferenceHandle assembly)
 
void AliasType (BlobHandle alias, EntityHandle targetType)
 
void ImportType (EntityHandle targetType)
 
void AliasAssemblyNamespace (BlobHandle alias, AssemblyReferenceHandle targetAssembly, BlobHandle namespaceName)
 
void ImportAssemblyNamespace (AssemblyReferenceHandle targetAssembly, BlobHandle namespaceName)
 
void AliasNamespace (BlobHandle alias, BlobHandle namespaceName)
 
void ImportNamespace (BlobHandle namespaceName)
 
void ImportReferenceAlias (BlobHandle alias)
 

Public Attributes

readonly BlobBuilder writer
 
int count
 

Properties

int Count [get]
 Gets the number of imports written.
 

Detailed Description

Definition at line 8 of file ImportsEncoder.cs.

Constructor & Destructor Documentation

◆ ImportsEncoder()

IKVM.Reflection.Emit.ImportsEncoder.ImportsEncoder ( BlobBuilder writer)

Initializes a new instance.

Parameters
writer
Exceptions
ArgumentNullException

Definition at line 19 of file ImportsEncoder.cs.

20 {
21 this.writer = writer ?? throw new ArgumentNullException(nameof(writer));
22 }

Member Function Documentation

◆ AliasAssemblyNamespace()

void IKVM.Reflection.Emit.ImportsEncoder.AliasAssemblyNamespace ( BlobHandle alias,
AssemblyReferenceHandle targetAssembly,
BlobHandle namespaceName )

Definition at line 52 of file ImportsEncoder.cs.

53 {
54 // <import> ::= AliasAssemblyNamespace <alias> <target-assembly> <target-namespace>
55 writer.WriteByte((byte)ImportDefinitionKind.AliasAssemblyNamespace);
56 writer.WriteCompressedInteger(MetadataTokens.GetHeapOffset(alias));
57 writer.WriteCompressedInteger(MetadataTokens.GetRowNumber(targetAssembly));
58 writer.WriteCompressedInteger(MetadataTokens.GetHeapOffset(namespaceName));
59 }

◆ AliasAssemblyReference()

void IKVM.Reflection.Emit.ImportsEncoder.AliasAssemblyReference ( BlobHandle alias,
AssemblyReferenceHandle assembly )

Definition at line 29 of file ImportsEncoder.cs.

30 {
31 // <import> ::= AliasAssemblyReference <alias> <target-assembly>
32 writer.WriteByte((byte)ImportDefinitionKind.AliasAssemblyReference);
33 writer.WriteCompressedInteger(MetadataTokens.GetHeapOffset(alias));
34 writer.WriteCompressedInteger(MetadataTokens.GetRowNumber(assembly));
35 }

◆ AliasNamespace()

void IKVM.Reflection.Emit.ImportsEncoder.AliasNamespace ( BlobHandle alias,
BlobHandle namespaceName )

Definition at line 69 of file ImportsEncoder.cs.

70 {
71 // <import> ::= AliasNamespace <alias> <target-namespace>
72 writer.WriteByte((byte)ImportDefinitionKind.AliasNamespace);
73 writer.WriteCompressedInteger(MetadataTokens.GetHeapOffset(alias));
74 writer.WriteCompressedInteger(MetadataTokens.GetHeapOffset(namespaceName));
75 }

◆ AliasType()

void IKVM.Reflection.Emit.ImportsEncoder.AliasType ( BlobHandle alias,
EntityHandle targetType )

Definition at line 37 of file ImportsEncoder.cs.

38 {
39 // <import> ::= AliasType <alias> <target-type>
40 writer.WriteByte((byte)ImportDefinitionKind.AliasType);
41 writer.WriteCompressedInteger(MetadataTokens.GetHeapOffset(alias));
42 writer.WriteCompressedInteger(CodedIndex.TypeDefOrRefOrSpec(targetType));
43 }

◆ ImportAssemblyNamespace()

void IKVM.Reflection.Emit.ImportsEncoder.ImportAssemblyNamespace ( AssemblyReferenceHandle targetAssembly,
BlobHandle namespaceName )

Definition at line 61 of file ImportsEncoder.cs.

62 {
63 // <import> ::= ImportAssemblyNamespace <target-assembly> <target-namespace>
64 writer.WriteByte((byte)ImportDefinitionKind.ImportAssemblyNamespace);
65 writer.WriteCompressedInteger(MetadataTokens.GetRowNumber(targetAssembly));
66 writer.WriteCompressedInteger(MetadataTokens.GetHeapOffset(namespaceName));
67 }

◆ ImportNamespace()

void IKVM.Reflection.Emit.ImportsEncoder.ImportNamespace ( BlobHandle namespaceName)

Definition at line 77 of file ImportsEncoder.cs.

78 {
79 // <import> ::= ImportNamespace <target-namespace>
80 writer.WriteByte((byte)ImportDefinitionKind.ImportNamespace);
81 writer.WriteCompressedInteger(MetadataTokens.GetHeapOffset(namespaceName));
82 }

◆ ImportReferenceAlias()

void IKVM.Reflection.Emit.ImportsEncoder.ImportReferenceAlias ( BlobHandle alias)

Definition at line 84 of file ImportsEncoder.cs.

85 {
86 // <import> ::= ImportReferenceAlias <alias>
87 writer.WriteByte((byte)ImportDefinitionKind.ImportAssemblyReferenceAlias);
88 writer.WriteCompressedInteger(MetadataTokens.GetHeapOffset(alias));
89 }

◆ ImportType()

void IKVM.Reflection.Emit.ImportsEncoder.ImportType ( EntityHandle targetType)

Definition at line 45 of file ImportsEncoder.cs.

46 {
47 // <import> ::= AliasType <alias> <target-type>
48 writer.WriteByte((byte)ImportDefinitionKind.ImportType);
49 writer.WriteCompressedInteger(CodedIndex.TypeDefOrRefOrSpec(targetType));
50 }

Member Data Documentation

◆ count

int IKVM.Reflection.Emit.ImportsEncoder.count

Definition at line 12 of file ImportsEncoder.cs.

◆ writer

readonly BlobBuilder IKVM.Reflection.Emit.ImportsEncoder.writer

Definition at line 11 of file ImportsEncoder.cs.

Property Documentation

◆ Count

int IKVM.Reflection.Emit.ImportsEncoder.Count
get

Gets the number of imports written.

Definition at line 27 of file ImportsEncoder.cs.


The documentation for this struct was generated from the following file: