active-pattern

    2

    1답변

    다음 코드에서 각 반복마다 활성 패턴 결과를 세 번 재사용해야합니다. 즉 match tree.Parent, postion with 활성 패턴 결과를 저장할 수 있다는 것을 알았습니다. 즉 let pos = ((|Root|Nil|Single|First|Inner|Last|Unknown|) (tree.Parent, position)) 액티브 패턴 결과를

    0

    1답변

    나는 내가 .NET 객체로 변환 할 웹 서비스에서 다음 XML을 얻을 : let xmlString = "<?xml version=\"1.0\"?> <logInResponse> <result>OK</result> <xmlLogIn> <session>11C0ED6F8F7288855FC73C99979A9732.TOGKE6VP9aE8a

    2

    2답변

    : type IFruit = interface end type Avocado = { color : string; age : int } interface IFruit let (|AvocadoTexture|) (a : Avocado) = if a.age < 7 then "firm" else "mushy" ... 왜이 작업을 수행합니다 let text

    4

    2답변

    나는 분명히 tradeLegs는 무역의 오프 타입 유형 type tradeLeg = { id : int ; tradeId : int ; legActivity : LegActivityType ; actedOn : DateTime ; estimates : legComponents ; entryType : S

    12

    2답변

    : let inline implicit arg = (^a : (static member op_Implicit : ^b -> ^a) arg) 인수에 주어진 운영자 나 회원을 요구. 비슷한 것을 기반으로 일치시킬 수있는 방법이 있습니까? 위와 같이 인라인 된 함수의 제약 조건과 일치하는 메서드에 전달 된 인수가 함수를 트리거하고 나머지는 모든 오류

    2

    2답변

    this question의 활성 패턴이 VS 2012 RTM으로 업그레이드 한 후 컴파일되지 않습니다. 형식 테스트를 수행하고 단일 패턴 내에서 리터럴을 일치시키는 방법을 제공합니다. 예를 들어 : let (|Value|_|) value = match box value with | :? 'T as x -> Some x | _ ->

    4

    3답변

    정적이 아닌 public 멤버 활성 패턴이 허용되는지는 잘 모르겠지만 컴파일러가 불평하지 않고 정의 할 수 있습니다. 허용되는 경우 일치하는 구문은 무엇입니까? 컴파일러에서 Foo에 대한 형식 불일치를 FooBar2.doSomething에 제공하고 있습니다. 'a -> Choice<'b,'c> // No error in this class, static w

    3

    1답변

    저는 FSharp에서 코드 인용을 파싱 중이며 패턴 도우미를 작성 중입니다. 모든 내가 의도는 ''왼쪽 ''과 ''권리 ''다음과 같은 여러 같은 전문 진 매처 (matcher)를 작성, 나누기를 반환하는 일반적인 바이너리 기능 정규 표현을하는 것입니다 let (|BinaryFn|_|) fn (input:Expr) = function |

    4

    2답변

    F #의 여러 영역에서 나는 아직 초보자입니다. 나는이 질문에 실제 비즈니스 요구 사항보다 호기심을 더 많이 묻고있다. 표시되는 순서에 관계없이 첫 번째 n 항목을 목록에 일치시킬 수있는 방법이 있습니까? 나는이 목록의 첫 번째 두 항목은 어떤 위해, Foo과 Bar 경우 some_func를 호출한다고 가정 지금 type MyEnum = | Foo

    3

    2답변

    내가 같은 옵션이 활성 패턴을 만들 수 없습니다 발견했습니다,하지만 난 경고없이 유사한 것들 두를 수 있습니다 :이 방법으로 일치 let (|A|B|C|) c = if (c = 'a') then A else if (c = 'b') then B else C let (|A|B|D|) c = if (c = '1') then