Ejemplo n.º 1
0
        public Index <BitMaskInfo> Emit(FS.FilePath dst)
        {
            var flow  = Wf.EmittingTable <BitMaskInfo>(dst);
            var masks = Load();

            Emit(masks.View, dst);
            return(masks);
        }
Ejemplo n.º 2
0
 public Index <SymbolDetail> EmitSymDetails <E>()
     where E : unmanaged, Enum
 {
     var     dst       = Db.Table <SymbolDetail>(typeof(E).Name);
     var     flow      = Wf.EmittingTable <SymbolDetail>(dst);
     var     symbols   = Symbols <E>().View;
     var     count     = symbols.Length;
     var     buffer    = alloc <SymbolDetail>(count);
     ref var target    = ref first(buffer);
Ejemplo n.º 3
0
        public Index <ApiCatalogEntry> RebaseMembers(ApiMembers src, FS.FilePath dst)
        {
            var flow    = Wf.EmittingTable <ApiCatalogEntry>(dst);
            var records = rebase(src.BaseAddress, src.View);
            var count   = Tables.emit <ApiCatalogEntry>(records.View, dst);

            Wf.EmittedTable <ApiCatalogEntry>(flow, count, dst);
            return(records);
        }
Ejemplo n.º 4
0
        public ReadOnlySpan <SymLiteral> EmitApiClasses(FS.FilePath dst)
        {
            var flow     = Wf.EmittingTable <SymLiteral>(dst);
            var literals = Query.ApiClassLiterals();
            var count    = Tables.emit(literals, dst);

            Wf.EmittedTable(flow, count);
            return(literals);
        }
Ejemplo n.º 5
0
        public ExecToken Emit(ReadOnlySpan <BitMaskInfo> src, FS.FilePath dst)
        {
            var flow  = Wf.EmittingTable <BitMaskInfo>(dst);
            var count = src.Length;

            using var writer = dst.Writer();
            writer.WriteLine(Formatter.HeaderText);
            for (var i = 0u; i < count; i++)
            {
                writer.WriteLine(Formatter.Format(skip(src, i)));
            }
            return(Wf.EmittedTable <BitMaskInfo>(flow, count, dst));
        }
Ejemplo n.º 6
0
        public Index <ClrEnumRecord> EmitEnumRecords(ClrAssemblyAdapter src, FS.FilePath dst)
        {
            var records = Enums.records(src);

            if (records.Length != 0)
            {
                var t         = default(ClrEnumRecord);
                var formatter = Tables.formatter <ClrEnumRecord>(32);
                var flow      = Wf.EmittingTable <ClrEnumRecord>(dst);
                var counter   = 0u;
                Execute(records, ref counter, formatter, dst);
                Wf.EmittedTable(flow, counter);
            }
            return(records);
        }