private AssemblyReferenceHandle Import()

in src/Refasmer/Importer/SimpleImports.cs [10:38]


    private AssemblyReferenceHandle Import( AssemblyReferenceHandle srcHandle ) =>
        ImportEntity(srcHandle, _assemblyReferenceCache, _reader.GetAssemblyReference,
            src => _builder.AddAssemblyReference(ImportValue(src.Name), src.Version, ImportValue(src.Culture),
                ImportValue(src.PublicKeyOrToken), src.Flags, ImportValue(src.HashValue)),
            _reader.ToString, IsNil);

    private AssemblyFileHandle Import( AssemblyFileHandle srcHandle ) =>
        ImportEntity(srcHandle, _assemblyFileCache, _reader.GetAssemblyFile,
            src => _builder.AddAssemblyFile(ImportValue(src.Name), ImportValue(src.HashValue), src.ContainsMetadata),
            _reader.ToString, IsNil);

    private TypeReferenceHandle Import( TypeReferenceHandle srcHandle ) =>
        ImportEntity(srcHandle, _typeReferenceCache, _reader.GetTypeReference,
            src => _builder.AddTypeReference(Import(src.ResolutionScope), ImportValue(src.Namespace),
                ImportValue(src.Name)),
            _reader.ToString, IsNil);

    private ModuleReferenceHandle Import( ModuleReferenceHandle srcHandle ) =>
        ImportEntity(srcHandle, _moduleReferenceCache, _reader.GetModuleReference,
            src => _builder.AddModuleReference(ImportValue(src.Name)),
            _reader.ToString, IsNil);

    private TypeSpecificationHandle Import( TypeSpecificationHandle srcHandle ) =>
        ImportEntity(srcHandle, _typeSpecificationCache, _reader.GetTypeSpecification,
            src =>
            {
                var dstSignature = ImportTypeSignature(src.Signature);
                return dstSignature.IsNil ? default : _builder.AddTypeSpecification(dstSignature);
            }, _reader.ToString, IsNil);