コード例 #1
0
        public void StartAssembly(List <Node> nodes)
        {
            helper.BeginScope();
            LabeledBlock entryPoint = getEntryPoint(nodes);

            AssembleLabel(entryPoint);
            nodes.Remove(entryPoint);
            foreach (Node n in nodes)
            {
                if (n is LabeledBlock)
                {
                    AssembleLabel((LabeledBlock)n);
                }
            }
            helper.EndScope(assembler);
            assembler.FixLabels(helper);
        }