Skip to content

Insert function Comment Blocks for Swift Functions with Parameters Containing func/function Patterns #1694

Open
@l1Dan

Description

@l1Dan

Description:
The plugin fails to generate documentation comments for Swift functions when parameters include names containing func or function (e.g., func, function, function1). This occurs even when:

  • Parameters use reserved keywords wrapped in backticks (e.g., func: String).
  • Parameters have default values like #function.

Steps to Reproduce:

  1. Define Swift functions with parameters named func, function, or variations like function1.
  2. Trigger the insert function Comment Blocks command.

Expected Behavior:
Documentation comments with /// - Parameter [name]: should be generated.

Actual Behavior:
No comments are generated for parameters with these names.

Examples:

// ✅ WORKING (Normal parameter name)
/// - Parameter f:
private func case1(f: String) {}

// ❌ NOT WORKING (Default value with `#function`)
private func case2(f: String = #function) {}

// ✅ WORKING (Unrelated parameter name)
/// - Parameter fn:
private func case3(fn: String) {}

// ❌ NOT WORKING (Default value with `#function`)
private func case4(fn: String = #function) {}

// ❌ NOT WORKING (Parameter named `func`)
private func case5(func: String) {}

// ❌ NOT WORKING (Parameter named `func` + `#function` default)
private func case6(func: String = #function) {}

// ❌ NOT WORKING (Parameter named `function`)
private func case7(function: String) {}

// ❌ NOT WORKING (Parameter named `function` + `#function` default)
private func case8(function: String = #function) {}

// ❌ NOT WORKING (Parameter named `function1`)
private func case9(function1: String) {}

// ❌ NOT WORKING (Parameter named `function1` + `#function` default)
private func case10(function1: String = #function) {}

**Environment**:
Name: Swift
Id: swiftlang.swift-vscode
Description: Swift Language Support for Visual Studio Code.
Version: 2.6.1
Publisher: Swift
VS Marketplace Link: https://marketplace.visualstudio.com/items/?itemName=swiftlang.swift-vscode

Version: 1.101.2 (Universal)
Commit: 2901c5ac6db8a986a5666c3af51ff804d05af0d4
Date: 2025-06-24T20:27:15.391Z
Electron: 35.5.1
ElectronBuildId: 11727614
Chromium: 134.0.6998.205
Node.js: 22.15.1
V8: 13.4.114.21-electron.0
OS: Darwin arm64 24.5.0

This plugin is a lifesaver for Swift documentation! 🚀 Thank you for your work.

Best regards

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    Status

    Backlog

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions