Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update H1s to avoid duplication with vblang repo #3788

Open
wants to merge 24 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 23 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
2 changes: 1 addition & 1 deletion spec/arrays.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Arrays
# Arrays - C# specifications
Youssef1313 marked this conversation as resolved.
Show resolved Hide resolved
Youssef1313 marked this conversation as resolved.
Show resolved Hide resolved

An array is a data structure that contains a number of variables which are accessed through computed indices. The variables contained in an array, also called the elements of the array, are all of the same type, and this type is called the element type of the array.

Expand Down
2 changes: 1 addition & 1 deletion spec/attributes.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Attributes
# Attributes - C# specifications
Youssef1313 marked this conversation as resolved.
Show resolved Hide resolved

Much of the C# language enables the programmer to specify declarative information about the entities defined in the program. For example, the accessibility of a method in a class is specified by decorating it with the *method_modifier*s `public`, `protected`, `internal`, and `private`.

Expand Down
2 changes: 1 addition & 1 deletion spec/basic-concepts.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Basic concepts
# Basic concepts - C# specifications
Youssef1313 marked this conversation as resolved.
Show resolved Hide resolved

## Application Startup

Expand Down
2 changes: 1 addition & 1 deletion spec/classes.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Classes
# Classes - C# specifications
Youssef1313 marked this conversation as resolved.
Show resolved Hide resolved

A class is a data structure that may contain data members (constants and fields), function members (methods, properties, events, indexers, operators, instance constructors, destructors and static constructors), and nested types. Class types support inheritance, a mechanism whereby a derived class can extend and specialize a base class.

Expand Down
2 changes: 1 addition & 1 deletion spec/conversions.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Conversions
# Conversions - C# specifications
Youssef1313 marked this conversation as resolved.
Show resolved Hide resolved

A ***conversion*** enables an expression to be treated as being of a particular type. A conversion may cause an expression of a given type to be treated as having a different type, or it may cause an expression without a type to get a type. Conversions can be ***implicit*** or ***explicit***, and this determines whether an explicit cast is required. For instance, the conversion from type `int` to type `long` is implicit, so expressions of type `int` can implicitly be treated as type `long`. The opposite conversion, from type `long` to type `int`, is explicit and so an explicit cast is required.

Expand Down
2 changes: 1 addition & 1 deletion spec/delegates.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Delegates
# Delegates - C# specifications
Youssef1313 marked this conversation as resolved.
Show resolved Hide resolved

Delegates enable scenarios that other languages—such as C++, Pascal, and Modula -- have addressed with function pointers. Unlike C++ function pointers, however, delegates are fully object oriented, and unlike C++ pointers to member functions, delegates encapsulate both an object instance and a method.

Expand Down
2 changes: 1 addition & 1 deletion spec/documentation-comments.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Documentation comments
# Documentation comments - C# specifications
Youssef1313 marked this conversation as resolved.
Show resolved Hide resolved

C# provides a mechanism for programmers to document their code using a special comment syntax that contains XML text. In source code files, comments having a certain form can be used to direct a tool to produce XML from those comments and the source code elements, which they precede. Comments using such syntax are called ***documentation comments***. They must immediately precede a user-defined type (such as a class, delegate, or interface) or a member (such as a field, event, property, or method). The XML generation tool is called the ***documentation generator***. (This generator could be, but need not be, the C# compiler itself.) The output produced by the documentation generator is called the ***documentation file***. A documentation file is used as input to a ***documentation viewer***; a tool intended to produce some sort of visual display of type information and its associated documentation.

Expand Down
2 changes: 1 addition & 1 deletion spec/enums.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Enums
# Enums - C# specifications
Youssef1313 marked this conversation as resolved.
Show resolved Hide resolved

An ***enum type*** is a distinct value type ([Value types](types.md#value-types)) that declares a set of named constants.

Expand Down
2 changes: 1 addition & 1 deletion spec/exceptions.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Exceptions
# Exceptions - C# specifications
Youssef1313 marked this conversation as resolved.
Show resolved Hide resolved

Exceptions in C# provide a structured, uniform, and type-safe way of handling both system level and application level error conditions. The exception mechanism in C# is quite similar to that of C++, with a few important differences:

Expand Down
2 changes: 1 addition & 1 deletion spec/expressions.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Expressions
# Expressions - C# specifications
Youssef1313 marked this conversation as resolved.
Show resolved Hide resolved

An expression is a sequence of operators and operands. This chapter defines the syntax, order of evaluation of operands and operators, and meaning of expressions.

Expand Down
2 changes: 1 addition & 1 deletion spec/interfaces.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Interfaces
# Interfaces - C# specifications
Youssef1313 marked this conversation as resolved.
Show resolved Hide resolved

An interface defines a contract. A class or struct that implements an interface must adhere to its contract. An interface may inherit from multiple base interfaces, and a class or struct may implement multiple interfaces.

Expand Down
2 changes: 1 addition & 1 deletion spec/introduction.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Introduction
# Introduction - C# specifications
Youssef1313 marked this conversation as resolved.
Show resolved Hide resolved

C# (pronounced "See Sharp") is a simple, modern, object-oriented, and type-safe programming language. C# has its roots in the C family of languages and will be immediately familiar to C, C++, and Java programmers. C# is standardized by ECMA International as the ***ECMA-334*** standard and by ISO/IEC as the ***ISO/IEC 23270*** standard. Microsoft's C# compiler for the .NET Framework is a conforming implementation of both of these standards.

Expand Down
2 changes: 1 addition & 1 deletion spec/lexical-structure.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Lexical structure
# Lexical structure - C# specifications
Youssef1313 marked this conversation as resolved.
Show resolved Hide resolved

## Programs

Expand Down
2 changes: 1 addition & 1 deletion spec/namespaces.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Namespaces
# Namespaces - C# specifications
Youssef1313 marked this conversation as resolved.
Show resolved Hide resolved

C# programs are organized using namespaces. Namespaces are used both as an "internal" organization system for a program, and as an "external" organization system—a way of presenting program elements that are exposed to other programs.

Expand Down
2 changes: 1 addition & 1 deletion spec/statements.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Statements
# Statements - C# specifications
Youssef1313 marked this conversation as resolved.
Show resolved Hide resolved

C# provides a variety of statements. Most of these statements will be familiar to developers who have programmed in C and C++.

Expand Down
2 changes: 1 addition & 1 deletion spec/structs.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Structs
# Structs - C# specifications
Youssef1313 marked this conversation as resolved.
Show resolved Hide resolved

Structs are similar to classes in that they represent data structures that can contain data members and function members. However, unlike classes, structs are value types and do not require heap allocation. A variable of a struct type directly contains the data of the struct, whereas a variable of a class type contains a reference to the data, the latter known as an object.

Expand Down
2 changes: 1 addition & 1 deletion spec/types.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Types
# Types - C# specifications
Youssef1313 marked this conversation as resolved.
Show resolved Hide resolved

The types of the C# language are divided into two main categories: ***value types*** and ***reference types***. Both value types and reference types may be ***generic types***, which take one or more ***type parameters***. Type parameters can designate both value types and reference types.

Expand Down
2 changes: 1 addition & 1 deletion spec/unsafe-code.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Unsafe code
# Unsafe code - C# specifications
Youssef1313 marked this conversation as resolved.
Show resolved Hide resolved

The core C# language, as defined in the preceding chapters, differs notably from C and C++ in its omission of pointers as a data type. Instead, C# provides references and the ability to create objects that are managed by a garbage collector. This design, coupled with other features, makes C# a much safer language than C or C++. In the core C# language it is simply not possible to have an uninitialized variable, a "dangling" pointer, or an expression that indexes an array beyond its bounds. Whole categories of bugs that routinely plague C and C++ programs are thus eliminated.

Expand Down
2 changes: 1 addition & 1 deletion spec/variables.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Variables
# Variables - C# specifications
Youssef1313 marked this conversation as resolved.
Show resolved Hide resolved

Variables represent storage locations. Every variable has a type that determines what values can be stored in the variable. C# is a type-safe language, and the C# compiler guarantees that values stored in variables are always of the appropriate type. The value of a variable can be changed through assignment or through use of the `++` and `--` operators.

Expand Down