Синтаксис определения метода F # - PullRequest
1 голос
/ 14 июня 2009

У меня есть метод (в данном случае статический), и я не могу понять точный синтаксис для его определения.

static member FindPath : Queue<Node> startNode : Node endNode : Node nodes : List<Node> = 
    //this method will call two other to be constructed methods and return a 
    //queue that is the return value of one of them
    return new Queue<Node>()

Ошибка в двоеточии между startNode и первым узлом с:

"Синтаксическая ошибка в маркированном типе"

Как лучше всего создать такой метод?

Ответы [ 2 ]

5 голосов
/ 14 июня 2009

Чтобы сделать его многострочным, вы можете просто звонить по отдельным линиям

static member FindPath (startNode : Node) (endNode : Node) (nodes : List<Node>) = 
        let resultOfMethod1 = CallMethod1()
        CallMethod2()
        new Queue<Node>()

Также я удалил возвращаемый тип, потому что он вам не нужен, если вы возвращаете такую ​​очередь

3 голосов
/ 14 июня 2009
static member FindPath (startNode : Node)
                       (endNode : Node)
                       (nodes : List<Node>)
                     : Queue<Node>
   = new Queue<Node>()
...