Lowering is an intermediate phase that executes after binding and transforms high level bound trees into simplified bound trees. These simplified bound trees are provided to the Code Generation phase and converted into MSIL and emitted into a .NET assembly. This section will enable you to add the lowering support for a new C# language feature: Switch operator (?::). This will enable you to write, compile, and correctly execute C# programs with the new operator. For details on the intended functionality of this operator, read the section, New language feature: Switch Operator (?::) at the start of this chapter. For details on the grammar and syntax definitions for this operator, read the first recipe of this chapter, Designing syntax and grammar for a new C# language feature.
United States
Great Britain
India
Germany
France
Canada
Russia
Spain
Brazil
Australia
Singapore
Hungary
Ukraine
Luxembourg
Estonia
Lithuania
South Korea
Turkey
Switzerland
Colombia
Taiwan
Chile
Norway
Ecuador
Indonesia
New Zealand
Cyprus
Denmark
Finland
Poland
Malta
Czechia
Austria
Sweden
Italy
Egypt
Belgium
Portugal
Slovenia
Ireland
Romania
Greece
Argentina
Netherlands
Bulgaria
Latvia
South Africa
Malaysia
Japan
Slovakia
Philippines
Mexico
Thailand