Example #1
0
        public void Test(RSP player1, RSP player2, Result winner)
        {
            // Arrange
            WinnerChecker winnerChecker = new WinnerChecker();

            // Act
            var result = winnerChecker.Fight((int)player1, (int)player2);

            // Assert
            Assert.Equal(winner, result);
        }
Example #2
0
        public Result Fight(int p1, int p2)
        {
            RSP player1 = (RSP)p1;
            RSP player2 = (RSP)p2;

            if ((int)player1 >= 0 && (int)player1 < 3 && (int)player2 >= 0 && (int)player2 < 3)
            {
                if (player1 == player2)
                {
                    return(Result.Draw);
                }

                if ((player1 == RSP.Paper && player2 == RSP.Rock) || (player1 == RSP.Rock && player2 == RSP.Scissors) || (player1 == RSP.Scissors && player2 == RSP.Paper))
                {
                    return(Result.Winner1);
                }

                return(Result.Winner2);
            }
            else
            {
                throw new Exception("Не понял, почему не правильный ввод");
            }
        }
Example #3
0
        public virtual string TransformText()
        {
            this.GenerationEnvironment = null;

            #line 9 ""
            this.Write("library IEEE;\nuse IEEE.STD_LOGIC_1164.ALL;\nuse IEEE.NUMERIC_STD.ALL;\n\n-- library " +
                       "SYSTEM_TYPES;\nuse work.SYSTEM_TYPES.ALL;\n\n-- library CUSTOM_TYPES;\nuse work.CUST" +
                       "OM_TYPES.ALL;\n\n");

            #line default
            #line hidden

            #line 19 ""
            if (RSP.HasCustomRenderer)
            {
            #line default
            #line hidden

            #line 20 ""
                this.Write("  -- Component declaration and signals\n");

            #line default
            #line hidden

            #line 21 ""
                this.Write(this.ToStringHelper.ToStringWithCulture(RSP.CustomRendererInclude));

            #line default
            #line hidden

            #line 21 ""
                this.Write("\n");

            #line default
            #line hidden

            #line 22 ""
            }

            #line default
            #line hidden

            #line 23 ""
            this.Write("\n-- User defined packages here\n-- #### USER-DATA-IMPORTS-START\n-- #### USER-DATA-" +
                       "IMPORTS-END\n\n\nentity ");

            #line default
            #line hidden

            #line 29 ""
            this.Write(this.ToStringHelper.ToStringWithCulture(Process.Name));

            #line default
            #line hidden

            #line 29 ""
            this.Write(" is\n");

            #line default
            #line hidden

            #line 30 ""
            var lastel = Process.SharedVariables.Cast <object>().Concat(Process.SharedSignals).LastOrDefault();
            if (lastel != null)
            {
            #line default
            #line hidden

            #line 33 ""
                this.Write("    generic(\n");

            #line default
            #line hidden

            #line 34 ""
                foreach (var variable in Process.SharedVariables)
                {
            #line default
            #line hidden

            #line 35 ""
                    this.Write("        ");

            #line default
            #line hidden

            #line 35 ""
                    this.Write(this.ToStringHelper.ToStringWithCulture(Naming.ToValidName("reset_" + variable.Name)));

            #line default
            #line hidden

            #line 35 ""
                    this.Write(": in ");

            #line default
            #line hidden

            #line 35 ""
                    this.Write(this.ToStringHelper.ToStringWithCulture(RS.VHDLWrappedTypeName(variable)));

            #line default
            #line hidden

            #line 35 ""
                    this.Write(this.ToStringHelper.ToStringWithCulture(variable == lastel ? "" : ";"));

            #line default
            #line hidden

            #line 35 ""
                    this.Write("\n");

            #line default
            #line hidden

            #line 36 ""
                }

            #line default
            #line hidden

            #line 37 ""
                foreach (var variable in Process.SharedSignals)
                {
            #line default
            #line hidden

            #line 38 ""
                    this.Write("        ");

            #line default
            #line hidden

            #line 38 ""
                    this.Write(this.ToStringHelper.ToStringWithCulture(Naming.ToValidName("reset_" + variable.Name)));

            #line default
            #line hidden

            #line 38 ""
                    this.Write(": in ");

            #line default
            #line hidden

            #line 38 ""
                    this.Write(this.ToStringHelper.ToStringWithCulture(RS.VHDLWrappedTypeName(variable)));

            #line default
            #line hidden

            #line 38 ""
                    this.Write(this.ToStringHelper.ToStringWithCulture(variable == lastel ? "" : ";"));

            #line default
            #line hidden

            #line 38 ""
                    this.Write("\n");

            #line default
            #line hidden

            #line 39 ""
                }

            #line default
            #line hidden

            #line 40 ""
                this.Write("    );\n");

            #line default
            #line hidden

            #line 41 ""
            }

            #line default
            #line hidden

            #line 42 ""
            this.Write("    port(\n");

            #line default
            #line hidden

            #line 43 ""
            foreach (var bus in Process.InputBusses.Where(x => !Process.OutputBusses.Contains(x)))
            {
                var busname = RS.GetLocalBusName(bus, Process);


            #line default
            #line hidden

            #line 46 ""
                this.Write("        -- Input bus ");

            #line default
            #line hidden

            #line 46 ""
                this.Write(this.ToStringHelper.ToStringWithCulture(busname));

            #line default
            #line hidden

            #line 46 ""
                this.Write(" signals\n");

            #line default
            #line hidden

            #line 47 ""
                foreach (var signal in bus.Signals)
                {
            #line default
            #line hidden

            #line 48 ""
                    this.Write("        ");

            #line default
            #line hidden

            #line 48 ""
                    this.Write(this.ToStringHelper.ToStringWithCulture(Naming.ToValidName(busname + "_" + signal.Name)));

            #line default
            #line hidden

            #line 48 ""
                    this.Write(": in ");

            #line default
            #line hidden

            #line 48 ""
                    this.Write(this.ToStringHelper.ToStringWithCulture(RS.VHDLWrappedTypeName(signal)));

            #line default
            #line hidden

            #line 48 ""
                    this.Write(";\n");

            #line default
            #line hidden

            #line 49 ""
                }

            #line default
            #line hidden

            #line 50 ""
            }

            #line default
            #line hidden

            #line 51 ""
            this.Write("\n");

            #line default
            #line hidden

            #line 52 ""
            foreach (var bus in Process.OutputBusses.Where(x => !Process.InputBusses.Contains(x)))
            {
                var busname = RS.GetLocalBusName(bus, Process);


            #line default
            #line hidden

            #line 55 ""
                this.Write("        -- Output bus ");

            #line default
            #line hidden

            #line 55 ""
                this.Write(this.ToStringHelper.ToStringWithCulture(busname));

            #line default
            #line hidden

            #line 55 ""
                this.Write(" signals\n");

            #line default
            #line hidden

            #line 56 ""
                foreach (var signal in RSP.WrittenSignals(bus))
                {
            #line default
            #line hidden

            #line 57 ""
                    this.Write("        ");

            #line default
            #line hidden

            #line 57 ""
                    this.Write(this.ToStringHelper.ToStringWithCulture(Naming.ToValidName(busname + "_" + signal.Name)));

            #line default
            #line hidden

            #line 57 ""
                    this.Write(": out ");

            #line default
            #line hidden

            #line 57 ""
                    this.Write(this.ToStringHelper.ToStringWithCulture(RS.VHDLWrappedTypeName(signal)));

            #line default
            #line hidden

            #line 57 ""
                    this.Write(";\n");

            #line default
            #line hidden

            #line 58 ""
                }

            #line default
            #line hidden

            #line 59 ""
            }

            #line default
            #line hidden

            #line 60 ""
            this.Write("\n");

            #line default
            #line hidden

            #line 61 ""
            foreach (var bus in Process.InputBusses.Where(x => Process.OutputBusses.Contains(x)))
            {
                var busname = RS.GetLocalBusName(bus, Process);


            #line default
            #line hidden

            #line 64 ""
                this.Write("        -- Input/output bus ");

            #line default
            #line hidden

            #line 64 ""
                this.Write(this.ToStringHelper.ToStringWithCulture(busname));

            #line default
            #line hidden

            #line 64 ""
                this.Write(" signals\n");

            #line default
            #line hidden

            #line 65 ""
                foreach (var signal in bus.Signals)
                {
            #line default
            #line hidden

            #line 66 ""
                    this.Write("        ");

            #line default
            #line hidden

            #line 66 ""
                    this.Write(this.ToStringHelper.ToStringWithCulture(Naming.ToValidName(busname + "_" + signal.Name)));

            #line default
            #line hidden

            #line 66 ""
                    this.Write(": in ");

            #line default
            #line hidden

            #line 66 ""
                    this.Write(this.ToStringHelper.ToStringWithCulture(RS.VHDLWrappedTypeName(signal)));

            #line default
            #line hidden

            #line 66 ""
                    this.Write(";\n");

            #line default
            #line hidden

            #line 67 ""
                }

            #line default
            #line hidden

            #line 68 ""
                this.Write("\n");

            #line default
            #line hidden

            #line 69 ""
                foreach (var signal in bus.Signals)
                {
            #line default
            #line hidden

            #line 70 ""
                    this.Write("        ");

            #line default
            #line hidden

            #line 70 ""
                    this.Write(this.ToStringHelper.ToStringWithCulture(Naming.ToValidName("out_" + busname + "_" + signal.Name)));

            #line default
            #line hidden

            #line 70 ""
                    this.Write(": out ");

            #line default
            #line hidden

            #line 70 ""
                    this.Write(this.ToStringHelper.ToStringWithCulture(RS.VHDLWrappedTypeName(signal)));

            #line default
            #line hidden

            #line 70 ""
                    this.Write(";\n");

            #line default
            #line hidden

            #line 71 ""
                }

            #line default
            #line hidden

            #line 72 ""
            }

            #line default
            #line hidden

            #line 73 ""
            this.Write(@"
        -- Clock signal
        CLK : in Std_logic;

        -- Ready signal
        RDY : in Std_logic;

        -- Finished signal
        FIN : out Std_logic;

        -- Enable signal
        ENB : in Std_logic;

        -- Reset signal
        RST : in Std_logic
    );
end ");

            #line default
            #line hidden

            #line 89 ""
            this.Write(this.ToStringHelper.ToStringWithCulture(Process.Name));

            #line default
            #line hidden

            #line 89 ""
            this.Write(";\n\narchitecture RTL of ");

            #line default
            #line hidden

            #line 91 ""
            this.Write(this.ToStringHelper.ToStringWithCulture(Process.Name));

            #line default
            #line hidden

            #line 91 ""
            this.Write(" is\n");

            #line default
            #line hidden

            #line 92 ""
            if (RSP.HasCustomRenderer)
            {
            #line default
            #line hidden

            #line 93 ""
                this.Write(this.ToStringHelper.ToStringWithCulture(RSP.CustomRendererBody));

            #line default
            #line hidden

            #line 93 ""
                this.Write("\n");

            #line default
            #line hidden

            #line 94 ""
            }
            else
            {
            #line default
            #line hidden

            #line 95 ""
                foreach (var bus in Process.InternalBusses)
                {
                    var busname = RS.GetLocalBusName(bus, Process);


            #line default
            #line hidden

            #line 98 ""
                    this.Write("    -- Internal bus ");

            #line default
            #line hidden

            #line 98 ""
                    this.Write(this.ToStringHelper.ToStringWithCulture(busname));

            #line default
            #line hidden

            #line 98 ""
                    this.Write(" signals\n");

            #line default
            #line hidden

            #line 99 ""
                    foreach (var signal in bus.Signals)
                    {
            #line default
            #line hidden

            #line 100 ""
                        this.Write("    signal ");

            #line default
            #line hidden

            #line 100 ""
                        this.Write(this.ToStringHelper.ToStringWithCulture(Naming.ToValidName(busname + "_" + signal.Name)));

            #line default
            #line hidden

            #line 100 ""
                        this.Write(": ");

            #line default
            #line hidden

            #line 100 ""
                        this.Write(this.ToStringHelper.ToStringWithCulture(RS.VHDLWrappedTypeName(signal)));

            #line default
            #line hidden

            #line 100 ""
                        this.Write(";\n");

            #line default
            #line hidden

            #line 101 ""
                    }

            #line default
            #line hidden

            #line 102 ""
                    this.Write("\n");

            #line default
            #line hidden

            #line 103 ""
                }

            #line default
            #line hidden

            #line 104 ""
                this.Write("\n");

            #line default
            #line hidden

            #line 105 ""
                if (Process.SharedSignals.Any() || Process.InternalDataElements.Any())
                {
            #line default
            #line hidden

            #line 106 ""
                    this.Write("    -- Internal signals\n");

            #line default
            #line hidden

            #line 107 ""
                    foreach (var s in Process.SharedSignals)
                    {
            #line default
            #line hidden

            #line 108 ""
                        this.Write("    signal ");

            #line default
            #line hidden

            #line 108 ""
                        this.Write(this.ToStringHelper.ToStringWithCulture(s.Name));

            #line default
            #line hidden

            #line 108 ""
                        this.Write(" : ");

            #line default
            #line hidden

            #line 108 ""
                        this.Write(this.ToStringHelper.ToStringWithCulture(RS.VHDLWrappedTypeName(s)));

            #line default
            #line hidden

            #line 108 ""
                        this.Write(";\n");

            #line default
            #line hidden

            #line 109 ""
                    }

            #line default
            #line hidden

            #line 110 ""
                    if (RSP.FiniteStateMethod != null)
                    {
            #line default
            #line hidden

            #line 111 ""
                        this.Write("    signal FSM_Trigger : Std_logic := \'0\';\n");

            #line default
            #line hidden

            #line 112 ""
                    }

            #line default
            #line hidden

            #line 113 ""
                    this.Write("\n");

            #line default
            #line hidden

            #line 114 ""
                    foreach (var s in Process.InternalDataElements)
                    {
            #line default
            #line hidden

            #line 115 ""
                        this.Write("    ");

            #line default
            #line hidden

            #line 115 ""
                        this.Write(this.ToStringHelper.ToStringWithCulture(s is AST.Signal ? "signal" : "shared variable"));

            #line default
            #line hidden

            #line 115 ""
                        this.Write(" ");

            #line default
            #line hidden

            #line 115 ""
                        this.Write(this.ToStringHelper.ToStringWithCulture(s.Name));

            #line default
            #line hidden

            #line 115 ""
                        this.Write(" : ");

            #line default
            #line hidden

            #line 115 ""
                        this.Write(this.ToStringHelper.ToStringWithCulture(RS.VHDLWrappedTypeName(s)));

            #line default
            #line hidden

            #line 115 ""
                        this.Write(" := ");

            #line default
            #line hidden

            #line 115 ""
                        this.Write(this.ToStringHelper.ToStringWithCulture(RS.GetResetExpression(s)));

            #line default
            #line hidden

            #line 115 ""
                        this.Write(";\n");

            #line default
            #line hidden

            #line 116 ""
                    }

            #line default
            #line hidden

            #line 117 ""
                }

            #line default
            #line hidden

            #line 118 ""
                this.Write("\n");

            #line default
            #line hidden

            #line 119 ""
                if (Process.Methods != null && Process.Methods.Any(x => !(x.Ignore || x.IsStateMachine)))
                {
            #line default
            #line hidden

            #line 120 ""
                    this.Write("    -- Internal methods\n");

            #line default
            #line hidden

            #line 121 ""
                    foreach (var s in Process.Methods.Where(x => !(x.Ignore || x.IsStateMachine)))
                    {
            #line default
            #line hidden

            #line 122 ""
                        foreach (var line in RSP.Helper.RenderMethod(s))
                        {
            #line default
            #line hidden

            #line 123 ""
                            this.Write("    ");

            #line default
            #line hidden

            #line 123 ""
                            this.Write(this.ToStringHelper.ToStringWithCulture(line));

            #line default
            #line hidden

            #line 123 ""
                            this.Write("\n");

            #line default
            #line hidden

            #line 124 ""
                        }

            #line default
            #line hidden

            #line 125 ""
                        this.Write("\n");

            #line default
            #line hidden

            #line 126 ""
                    }

            #line default
            #line hidden

            #line 127 ""
                }

            #line default
            #line hidden

            #line 128 ""
                this.Write("\n");

            #line default
            #line hidden

            #line 129 ""
                if (Process.IsClocked && RSP.FiniteStateMethod != null)
                {
            #line default
            #line hidden

            #line 130 ""
                    this.Write("    -- Clock-edge capture signals\n");

            #line default
            #line hidden

            #line 131 ""
                    foreach (var bus in Process.InputBusses)
                    {
                        var busname = RS.GetLocalBusName(bus, Process);


            #line default
            #line hidden

            #line 134 ""
                        this.Write("    -- Input bus ");

            #line default
            #line hidden

            #line 134 ""
                        this.Write(this.ToStringHelper.ToStringWithCulture(busname));

            #line default
            #line hidden

            #line 134 ""
                        this.Write(" signals\n");

            #line default
            #line hidden

            #line 135 ""
                        foreach (var signal in bus.Signals)
                        {
            #line default
            #line hidden

            #line 136 ""
                            this.Write("    signal ");

            #line default
            #line hidden

            #line 136 ""
                            this.Write(this.ToStringHelper.ToStringWithCulture(Naming.ToValidName("capture_" + busname + "_" + signal.Name)));

            #line default
            #line hidden

            #line 136 ""
                            this.Write(": ");

            #line default
            #line hidden

            #line 136 ""
                            this.Write(this.ToStringHelper.ToStringWithCulture(RS.VHDLWrappedTypeName(signal)));

            #line default
            #line hidden

            #line 136 ""
                            this.Write(" := ");

            #line default
            #line hidden

            #line 136 ""
                            this.Write(this.ToStringHelper.ToStringWithCulture(RS.GetResetExpression(signal)));

            #line default
            #line hidden

            #line 136 ""
                            this.Write(";\n");

            #line default
            #line hidden

            #line 137 ""
                        }

            #line default
            #line hidden

            #line 138 ""
                    }

            #line default
            #line hidden

            #line 139 ""
                }

            #line default
            #line hidden

            #line 140 ""
                this.Write("\n      -- User defined signals, procedures and components here\n      -- #### USER" +
                           "-DATA-SIGNALS-START\n      -- #### USER-DATA-SIGNALS-END\n\nbegin\n\n    -- Custom pr" +
                           "ocesses go here\n    -- #### USER-DATA-PROCESSES-START\n    -- #### USER-DATA-PROC" +
                           "ESSES-END\n\n");

            #line default
            #line hidden

            #line 151 ""
                if (Process.Methods != null && Process.Methods.Any(x => !x.Ignore && x.IsStateMachine))
                {
            #line default
            #line hidden

            #line 152 ""
                    this.Write("    -- State machine process\n");

            #line default
            #line hidden

            #line 153 ""
                    foreach (var s in Process.Methods.Where(x => !x.Ignore && x.IsStateMachine))
                    {
            #line default
            #line hidden

            #line 154 ""
                        foreach (var line in RSP.Helper.RenderStateMachine(s, RSP))
                        {
            #line default
            #line hidden

            #line 155 ""
                            this.Write("    ");

            #line default
            #line hidden

            #line 155 ""
                            this.Write(this.ToStringHelper.ToStringWithCulture(line));

            #line default
            #line hidden

            #line 155 ""
                            this.Write("\n");

            #line default
            #line hidden

            #line 156 ""
                        }

            #line default
            #line hidden

            #line 157 ""
                    }

            #line default
            #line hidden

            #line 158 ""
                }

            #line default
            #line hidden

            #line 159 ""
                this.Write("\n\n");

            #line default
            #line hidden

            #line 161 ""

                var sensitivity_signal = RSP.Process.IsClocked ? "CLK" : "RDY";
                var variables          = RSP.Variables.Concat(RSP.FiniteStateMethod == null ? RSP.SharedVariables : new Variable[0]);


            #line default
            #line hidden

            #line 165 ""
                this.Write("\n    process(\n        -- Custom sensitivity signals here\n        -- #### USER-DAT" +
                           "A-SENSITIVITY-START\n        -- #### USER-DATA-SENSITIVITY-END\n        ");

            #line default
            #line hidden

            #line 170 ""
                this.Write(this.ToStringHelper.ToStringWithCulture(sensitivity_signal));

            #line default
            #line hidden

            #line 170 ""
                this.Write(",\n        RST\n    )\n");

            #line default
            #line hidden

            #line 173 ""
                if (variables.Count() > 0)
                {
            #line default
            #line hidden

            #line 174 ""
                    this.Write("    -- Internal variables\n");

            #line default
            #line hidden

            #line 175 ""
                    foreach (var s in variables)
                    {
            #line default
            #line hidden

            #line 176 ""
                        this.Write("    variable ");

            #line default
            #line hidden

            #line 176 ""
                        this.Write(this.ToStringHelper.ToStringWithCulture(s.Name));

            #line default
            #line hidden

            #line 176 ""
                        this.Write(" : ");

            #line default
            #line hidden

            #line 176 ""
                        this.Write(this.ToStringHelper.ToStringWithCulture(RS.VHDLWrappedTypeName(s)));

            #line default
            #line hidden

            #line 176 ""
                        this.Write(this.ToStringHelper.ToStringWithCulture(Process.SharedVariables.Contains(s) ? " := " + Naming.ToValidName("reset_" + s.Name) : ""));

            #line default
            #line hidden

            #line 176 ""
                        this.Write(";\n");

            #line default
            #line hidden

            #line 177 ""
                    }

            #line default
            #line hidden

            #line 178 ""
                }

            #line default
            #line hidden

            #line 179 ""
                this.Write("\n");

            #line default
            #line hidden

            #line 180 ""
                if (!RSP.Process.IsClocked)
                {
            #line default
            #line hidden

            #line 181 ""
                    this.Write("    variable reentry_guard: std_logic;\n");

            #line default
            #line hidden

            #line 182 ""
                }

            #line default
            #line hidden

            #line 183 ""
                this.Write(@"
    -- #### USER-DATA-NONCLOCKEDVARIABLES-START
    -- #### USER-DATA-NONCLOCKEDVARIABLES-END
	begin
        -- Initialize code here
        -- #### USER-DATA-NONCLOCKEDSHAREDINITIALIZECODE-START
        -- #### USER-DATA-NONCLOCKEDSHAREDINITIALIZECODE-END

        if RST = '1' then
");

            #line default
            #line hidden

            #line 192 ""
                foreach (var s in RSP.ProcessResetStaments)
                {
            #line default
            #line hidden

            #line 193 ""
                    this.Write("            ");

            #line default
            #line hidden

            #line 193 ""
                    this.Write(this.ToStringHelper.ToStringWithCulture(s));

            #line default
            #line hidden

            #line 193 ""
                    this.Write("\n");

            #line default
            #line hidden

            #line 194 ""
                }

            #line default
            #line hidden

            #line 195 ""
                foreach (var variable in RSP.FiniteStateMethod == null ? RSP.SharedVariables : RSP.Variables)
                {
            #line default
            #line hidden

            #line 196 ""
                    this.Write("            ");

            #line default
            #line hidden

            #line 196 ""
                    this.Write(this.ToStringHelper.ToStringWithCulture(variable.Name));

            #line default
            #line hidden

            #line 196 ""
                    this.Write(" := ");

            #line default
            #line hidden

            #line 196 ""
                    this.Write(this.ToStringHelper.ToStringWithCulture(Naming.ToValidName("reset_" + variable.Name)));

            #line default
            #line hidden

            #line 196 ""
                    this.Write(";\n");

            #line default
            #line hidden

            #line 197 ""
                }

            #line default
            #line hidden

            #line 198 ""
                foreach (var variable in Process.SharedSignals)
                {
            #line default
            #line hidden

            #line 199 ""
                    this.Write("            ");

            #line default
            #line hidden

            #line 199 ""
                    this.Write(this.ToStringHelper.ToStringWithCulture(variable.Name));

            #line default
            #line hidden

            #line 199 ""
                    this.Write(" <= ");

            #line default
            #line hidden

            #line 199 ""
                    this.Write(this.ToStringHelper.ToStringWithCulture(Naming.ToValidName("reset_" + variable.Name)));

            #line default
            #line hidden

            #line 199 ""
                    this.Write(";\n");

            #line default
            #line hidden

            #line 200 ""
                }

            #line default
            #line hidden

            #line 201 ""
                this.Write("\n");

            #line default
            #line hidden

            #line 202 ""
                if (Process.IsClocked && RSP.FiniteStateMethod != null)
                {
            #line default
            #line hidden

            #line 203 ""
                    this.Write("            -- Clock-edge capture signals\n");

            #line default
            #line hidden

            #line 204 ""
                    foreach (var bus in Process.InputBusses)
                    {
                        var busname = RS.GetLocalBusName(bus, Process);


            #line default
            #line hidden

            #line 207 ""
                        this.Write("            -- Input bus ");

            #line default
            #line hidden

            #line 207 ""
                        this.Write(this.ToStringHelper.ToStringWithCulture(busname));

            #line default
            #line hidden

            #line 207 ""
                        this.Write(" signals\n");

            #line default
            #line hidden

            #line 208 ""
                        foreach (var signal in bus.Signals)
                        {
            #line default
            #line hidden

            #line 209 ""
                            this.Write("            ");

            #line default
            #line hidden

            #line 209 ""
                            this.Write(this.ToStringHelper.ToStringWithCulture(Naming.ToValidName("capture_" + busname + "_" + signal.Name)));

            #line default
            #line hidden

            #line 209 ""
                            this.Write(" <= ");

            #line default
            #line hidden

            #line 209 ""
                            this.Write(this.ToStringHelper.ToStringWithCulture(RS.GetResetExpression(signal)));

            #line default
            #line hidden

            #line 209 ""
                            this.Write(";\n");

            #line default
            #line hidden

            #line 210 ""
                        }

            #line default
            #line hidden

            #line 211 ""
                    }

            #line default
            #line hidden

            #line 212 ""
                }

            #line default
            #line hidden

            #line 213 ""
                this.Write("                                    \n");

            #line default
            #line hidden

            #line 214 ""
                if (!RSP.Process.IsClocked)
                {
            #line default
            #line hidden

            #line 215 ""
                    this.Write("            reentry_guard := \'0\';\n");

            #line default
            #line hidden

            #line 216 ""
                }

            #line default
            #line hidden

            #line 217 ""
                if (RSP.FiniteStateMethod == null)
                {
            #line default
            #line hidden

            #line 218 ""
                    this.Write("            FIN <= \'0\';\n");

            #line default
            #line hidden

            #line 219 ""
                }
                else
                {
            #line default
            #line hidden

            #line 220 ""
                    this.Write("            FSM_Trigger <= \'0\';\n");

            #line default
            #line hidden

            #line 221 ""
                }

            #line default
            #line hidden

            #line 222 ""
                this.Write("\n            -- Initialize code here\n            -- #### USER-DATA-NONCLOCKEDRESE" +
                           "TCODE-START\n            -- #### USER-DATA-NONCLOCKEDRESETCODE-END\n\n");

            #line default
            #line hidden

            #line 227 ""
                if (RSP.Process.IsClocked)
                {
            #line default
            #line hidden

            #line 228 ""
                    this.Write("        elsif rising_edge(");

            #line default
            #line hidden

            #line 228 ""
                    this.Write(this.ToStringHelper.ToStringWithCulture(sensitivity_signal));

            #line default
            #line hidden

            #line 228 ""
                    this.Write(") then\n");

            #line default
            #line hidden

            #line 229 ""
                }
                else
                {
            #line default
            #line hidden

            #line 230 ""
                    this.Write("        elsif reentry_guard /= RDY then\n            reentry_guard := RDY;\n");

            #line default
            #line hidden

            #line 232 ""
                }

            #line default
            #line hidden

            #line 233 ""
                this.Write("\n            -- Initialize code here\n            -- #### USER-DATA-NONCLOCKEDINIT" +
                           "IALIZECODE-START\n            -- #### USER-DATA-NONCLOCKEDINITIALIZECODE-END\n\n\n");

            #line default
            #line hidden

            #line 239 ""
                foreach (var line in RSP.Helper.RenderMethod(Process.MainMethod))
                {
            #line default
            #line hidden

            #line 240 ""
                    this.Write("            ");

            #line default
            #line hidden

            #line 240 ""
                    this.Write(this.ToStringHelper.ToStringWithCulture(line));

            #line default
            #line hidden

            #line 240 ""
                    this.Write("\n");

            #line default
            #line hidden

            #line 241 ""
                }

            #line default
            #line hidden

            #line 242 ""
                this.Write("\n");

            #line default
            #line hidden

            #line 243 ""
                if (Process.IsClocked && RSP.FiniteStateMethod != null)
                {
            #line default
            #line hidden

            #line 244 ""
                    this.Write("            -- Clock-edge capture signals\n");

            #line default
            #line hidden

            #line 245 ""
                    foreach (var bus in Process.InputBusses)
                    {
                        var busname = RS.GetLocalBusName(bus, Process);


            #line default
            #line hidden

            #line 248 ""
                        this.Write("            -- Input bus ");

            #line default
            #line hidden

            #line 248 ""
                        this.Write(this.ToStringHelper.ToStringWithCulture(busname));

            #line default
            #line hidden

            #line 248 ""
                        this.Write(" signals\n");

            #line default
            #line hidden

            #line 249 ""
                        foreach (var signal in bus.Signals)
                        {
            #line default
            #line hidden

            #line 250 ""
                            this.Write("            ");

            #line default
            #line hidden

            #line 250 ""
                            this.Write(this.ToStringHelper.ToStringWithCulture(Naming.ToValidName("capture_" + busname + "_" + signal.Name)));

            #line default
            #line hidden

            #line 250 ""
                            this.Write(" <= ");

            #line default
            #line hidden

            #line 250 ""
                            this.Write(this.ToStringHelper.ToStringWithCulture(Naming.ToValidName(busname + "_" + signal.Name)));

            #line default
            #line hidden

            #line 250 ""
                            this.Write(";\n");

            #line default
            #line hidden

            #line 251 ""
                        }

            #line default
            #line hidden

            #line 252 ""
                    }

            #line default
            #line hidden

            #line 253 ""
                }

            #line default
            #line hidden

            #line 254 ""
                this.Write("\n\n");

            #line default
            #line hidden

            #line 256 ""
                if (RSP.FiniteStateMethod == null)
                {
            #line default
            #line hidden

            #line 257 ""
                    this.Write("            FIN <= ");

            #line default
            #line hidden

            #line 257 ""
                    this.Write(this.ToStringHelper.ToStringWithCulture(sensitivity_signal));

            #line default
            #line hidden

            #line 257 ""
                    this.Write(";\n");

            #line default
            #line hidden

            #line 258 ""
                }
                else if (RSP.Process.IsClocked)
                {
            #line default
            #line hidden

            #line 259 ""
                    this.Write("            FSM_Trigger <= not FSM_Trigger;\n");

            #line default
            #line hidden

            #line 260 ""
                }
                else
                {
            #line default
            #line hidden

            #line 261 ""
                    this.Write("            FSM_Trigger <= reentry_guard;\n");

            #line default
            #line hidden

            #line 262 ""
                }

            #line default
            #line hidden

            #line 263 ""
                this.Write("\n        end if;\n\n        -- Non-clocked process actions here\n\n        -- #### US" +
                           "ER-DATA-CODE-START\n        -- #### USER-DATA-CODE-END\n\n    end process;\n\n");

            #line default
            #line hidden

            #line 273 ""
            }

            #line default
            #line hidden

            #line 274 ""
            this.Write("\nend RTL;\n\n-- User defined architectures here\n-- #### USER-DATA-ARCH-START\n-- ###" +
                       "# USER-DATA-ARCH-END\n");

            #line default
            #line hidden
            return(this.GenerationEnvironment.ToString());
        }