private void ImportFieldDefinitionAccessories()

in src/Refasmer/Importer/ImportLogic.cs [222:256]


    private void ImportFieldDefinitionAccessories( FieldDefinitionHandle srcHandle, FieldDefinitionHandle dstHandle )
    {
        var src = _reader.GetFieldDefinition(srcHandle);

        using var _ = WithLogPrefix($"[{_reader.ToString(src)}]");

        if (!src.GetDefaultValue().IsNil)
        {
            var srcConst = _reader.GetConstant(src.GetDefaultValue());
            var value = _reader.GetBlobReader(srcConst.Value).ReadConstant(srcConst.TypeCode);

            var dstConst = _builder.AddConstant(dstHandle, value);

            Trace?.Invoke($"Imported default value {_reader.ToString(srcConst)} -> {RowId(dstConst)} = {value}");
        }

        if (!src.GetMarshallingDescriptor().IsNil)
        {
            _builder.AddMarshallingDescriptor(dstHandle, ImportValue(src.GetMarshallingDescriptor()));
            Trace?.Invoke($"Imported marshalling descriptor {_reader.ToString(src.GetMarshallingDescriptor())}");
        }

        if (src.GetOffset() != -1)
        {
            _builder.AddFieldLayout(dstHandle, src.GetOffset());
            Trace?.Invoke($"Imported offset {src.GetOffset()}");
        }

        if (src.GetRelativeVirtualAddress() != 0)
        {
            _builder.AddFieldRelativeVirtualAddress(dstHandle, src.GetRelativeVirtualAddress());
            Trace?.Invoke($"Imported relative virtual address {src.GetRelativeVirtualAddress()}");
        }

    }