1
0
mirror of https://github.com/oliverbooth/X10D synced 2024-11-14 21:55:41 +00:00
X10D/.github/ISSUE_TEMPLATE/extension-method-request.yml

85 lines
3.6 KiB
YAML
Raw Normal View History

name: Extension Method Request
description: Make a request for an extension method you believe should be implemented
title: "[Request]: "
labels: ["enhancement"]
assignees:
- oliverbooth
body:
- type: markdown
attributes:
value: |
Thanks for taking the time to suggest an extension method!
2022-05-14 20:07:54 +01:00
- type: input
id: fqn
attributes:
label: Type to extend
description: Provide the fully qualified type name of the extension method you're suggesting.
2022-05-14 20:07:54 +01:00
placeholder: "Example: System.Drawing.Color"
validations:
required: true
- type: textarea
id: signature
attributes:
label: Signature
2022-05-14 20:07:54 +01:00
description: Provide the method signature here. __**DO NOT**__ include `public static` or the leading `this` parameter - these are inherent to extension methods. __**DO**__ include the return type and parameter names. This will be automatically formatted into code, so no need for backticks.
placeholder: "Example: Color WithR(int r)"
render: csharp
validations:
required: true
- type: textarea
id: summary
attributes:
label: Summary
2022-05-14 20:10:21 +01:00
description: Briefly but concisely document the method's purpose. i.e. This would be the `<summary>` entry in the XMLDoc.
2022-05-14 20:07:54 +01:00
placeholder: "Example: Returns a new Color whose A, B and G components are the same as the specified color, and whose R component is a new value."
render: md
validations:
required: true
- type: textarea
id: parameters
attributes:
label: Parameters
description: "If this method accepts parameters, document each of the parameters here, with their name and description - i.e. this would be equivalent to the `<param>` entry in the XMLDoc. __**DO NOT**__ include the leading `this` parameter. Use a table layout like in the provided example."
value:
|
| Parameter | Type | Description |
| - | - | - |
2022-05-14 20:07:54 +01:00
| r | `float` | The new value for the R component. |
validations:
required: false
- type: textarea
id: benefits
attributes:
label: Benefits
description: Give a reason as to why this method should be added. Does it add a need not satisfied by any other X10D method? Does .NET not offer similar functionality?
2022-05-14 20:07:54 +01:00
placeholder: "Example: 'with' expressions are not supported for Color, as the setters of R G and B are get-only."
validations:
required: true
- type: textarea
id: drawbacks
attributes:
label: Drawbacks
description: Give a reason as to why this method should *not* be added. Is it an expensive operation? Does it defy .NET guidelines? If you cannot think of any drawbacks, you may leave this blank.
validations:
required: false
- type: textarea
id: implementation-example
attributes:
label: Implementation Example
2022-05-14 20:07:54 +01:00
description: If you prefer, you can give an example of how this method might be implemented. __**DO NOT**__ include the signature here, only the body. This will be automatically formatted into code, so no need for backticks.
placeholder:
|
2022-05-14 20:07:54 +01:00
Example: return Color.FromArgb(value.A, r, value.G, value.B);
render: csharp
validations:
required: false
- type: checkboxes
id: terms
attributes:
label: Code of Conduct
description: By submitting this issue, you agree to follow our [Code of Conduct](https://github.com/oliverbooth/X10D/blob/main/.github/CODE_OF_CONDUCT.md)
options:
- label: I agree to follow this project's Code of Conduct
required: true