Skip to content

TypeScript syntax highlighting breaks in case the return type of a function ends with a number #153

Closed
@egamma

Description

@egamma

From @Lunatix89 on April 23, 2016 14:43

  • VSCode Version: 1.0.0
  • OS Version: Windows 8.1 and Windows 10

Steps to Reproduce:

  1. Create a typescript file
  2. Insert the following code:
import {Vector3, Vector} from 'vectors';

/**
 * A simple 3x3 matrix structure.
 * 
 * @export
 * @class Matrix3x3
 */
class Matrix {
    public M11 : number;
    public M12 : number;
    public M13 : number;
    public M21 : number;
    public M22 : number;
    public M23 : number;
    public M31 : number;
    public M32 : number;
    public M33 : number;


    /**
     * Gets a column as a new vector.
     * 
     * @param {number} index The index of the column (0 .. 2).
     * @returns {Vector3} A vector representing the column.
     */
    public getColumn_Breaks(index : number) : Vector3 {
        if (index == 0) {
            return new Vector3(this.M11, this.M21, this.M31);
        } else if (index == 1) {
            return new Vector3(this.M12, this.M22, this.M32);
        } else if (index == 2) {
            return new Vector3(this.M13, this.M23, this.M33);
        } else {
            throw new RangeError('Invalid matrix 3x3 column index: ' + index);
        }
    }

    /**
     * Gets a column as a new vector.
     * 
     * @param {number} index The index of the column (0 .. 2).
     * @returns {Vector3} A vector representing the column.
     */
    public getColumn_Works(index : number) : Vector {
        if (index == 0) {
            return new Vector(this.M11, this.M21, this.M31);
        } else if (index == 1) {
            return new Vector(this.M12, this.M22, this.M32);
        } else if (index == 2) {
            return new Vector(this.M13, this.M23, this.M33);
        } else {
            throw new RangeError('Invalid matrix 3x3 column index: ' + index);
        }
    }

}

image

Fun fact: Seems even the GitHub highlighter can not handle that specific case :|

image

Copied from original issue: Microsoft/vscode-tslint#46

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions