Mosa.Compiler.Linker.LinkerSection.ResolveLayout C# (CSharp) Method

ResolveLayout() private method

private ResolveLayout ( uint fileOffset, ulong virtualAddress ) : void
fileOffset uint
virtualAddress ulong
return void
        internal void ResolveLayout(uint fileOffset, ulong virtualAddress)
        {
            VirtualAddress = virtualAddress;
            FileOffset = fileOffset;

            foreach (var symbol in Symbols)
            {
                if (symbol.IsResolved)
                    continue;

                Size = Alignment.AlignUp(Size, symbol.Alignment);

                symbol.SectionOffset = Size;
                symbol.VirtualAddress = VirtualAddress + Size;

                Size = Size + symbol.Size;
            }

            IsResolved = true;
        }