@@ -169,26 +169,6 @@ type Shape =
169169 assertRange ( 2 , 11 ) ( 2 , 12 ) mEquals
170170 | _ -> Assert.Fail " Could not get valid AST"
171171
172- [<Test>]
173- let ``SynTypeDefn with AutoProperty contains the range of the equals sign`` () =
174- let parseResults =
175- getParseResults
176- """
177- /// mutable class with auto-properties
178- type Person(name : string, age : int) =
179- /// Full name
180- member val Name = name with get, set
181- """
182-
183- match parseResults with
184- | ParsedInput.ImplFile ( ParsedImplFileInput ( contents = [ SynModuleOrNamespace.SynModuleOrNamespace( decls = [
185- SynModuleDecl.Types(
186- typeDefns = [ SynTypeDefn( typeRepr = SynTypeDefnRepr.ObjectModel( members = [_ ; SynMemberDefn.AutoProperty( equalsRange = mEquals)])) ]
187- )
188- ]) ])) ->
189- assertRange ( 5 , 20 ) ( 5 , 21 ) mEquals
190- | _ -> Assert.Fail " Could not get valid AST"
191-
192172[<Test>]
193173let ``SynTypeDefn with Record contains the range of the with keyword`` () =
194174 let parseResults =
@@ -250,115 +230,6 @@ type Foo() =
250230 assertRange ( 3 , 18 ) ( 3 , 22 ) mWithKeyword
251231 | _ -> Assert.Fail " Could not get valid AST"
252232
253- [<Test>]
254- let ``SynTypeDefn with AutoProperty contains the range of the with keyword`` () =
255- let parseResults =
256- getParseResults
257- """
258- type Foo() =
259- member val AutoProperty = autoProp with get, set
260- member val AutoProperty2 = autoProp
261- """
262-
263- match parseResults with
264- | ParsedInput.ImplFile ( ParsedImplFileInput ( contents = [ SynModuleOrNamespace.SynModuleOrNamespace( decls = [
265- SynModuleDecl.Types(
266- typeDefns = [ SynTypeDefn( typeRepr = SynTypeDefnRepr.ObjectModel( members = [_
267- SynMemberDefn.AutoProperty( withKeyword= Some mWith)
268- SynMemberDefn.AutoProperty( withKeyword= None)])) ]
269- )
270- ]) ])) ->
271- assertRange ( 3 , 39 ) ( 3 , 43 ) mWith
272- | _ -> Assert.Fail " Could not get valid AST"
273-
274- [<Test>]
275- let ``SynTypeDefn with AbstractSlot contains the range of the with keyword`` () =
276- let parseResults =
277- getParseResults
278- """
279- type Foo() =
280- abstract member Bar : int with get,set
281- """
282-
283- match parseResults with
284- | ParsedInput.ImplFile ( ParsedImplFileInput ( contents = [ SynModuleOrNamespace.SynModuleOrNamespace( decls = [
285- SynModuleDecl.Types(
286- typeDefns = [ SynTypeDefn( typeRepr = SynTypeDefnRepr.ObjectModel( members = [_
287- SynMemberDefn.AbstractSlot( slotSig= SynValSig( trivia = { WithKeyword = Some mWith }))])) ]
288- )
289- ]) ])) ->
290- assertRange ( 3 , 30 ) ( 3 , 34 ) mWith
291- | _ -> Assert.Fail " Could not get valid AST"
292-
293- [<Test>]
294- let ``read - only property in SynMemberDefn.Member contains the range of the with keyword`` () =
295- let parseResults =
296- getParseResults
297- """
298- type Foo() =
299- // A read-only property.
300- member this.MyReadProperty with get () = myInternalValue
301- """
302-
303- match parseResults with
304- | ParsedInput.ImplFile ( ParsedImplFileInput ( contents = [ SynModuleOrNamespace.SynModuleOrNamespace( decls = [
305- SynModuleDecl.Types(
306- typeDefns = [ SynTypeDefn( typeRepr =
307- SynTypeDefnRepr.ObjectModel( members=[
308- _
309- SynMemberDefn.GetSetMember( Some( SynBinding _), None, _, { WithKeyword = mWith }) ])
310- ) ])
311- ]) ])) ->
312- assertRange ( 4 , 31 ) ( 4 , 35 ) mWith
313- | _ -> Assert.Fail " Could not get valid AST"
314-
315- [<Test>]
316- let ``write - only property in SynMemberDefn.Member contains the range of the with keyword`` () =
317- let parseResults =
318- getParseResults
319- """
320- type Foo() =
321- // A write-only property.
322- member this.MyWriteOnlyProperty with set (value) = myInternalValue <- value
323- """
324-
325- match parseResults with
326- | ParsedInput.ImplFile ( ParsedImplFileInput ( contents = [ SynModuleOrNamespace.SynModuleOrNamespace( decls = [
327- SynModuleDecl.Types(
328- typeDefns = [ SynTypeDefn( typeRepr =
329- SynTypeDefnRepr.ObjectModel( members=[
330- _
331- SynMemberDefn.GetSetMember( None, Some( SynBinding _), _, { WithKeyword = mWith }) ])
332- ) ])
333- ]) ])) ->
334- assertRange ( 4 , 36 ) ( 4 , 40 ) mWith
335- | _ -> Assert.Fail " Could not get valid AST"
336-
337- [<Test>]
338- let ``read / write property in SynMemberDefn.Member contains the range of the with keyword`` () =
339- let parseResults =
340- getParseResults
341- """
342- type Foo() =
343- // A read-write property.
344- member this.MyReadWriteProperty
345- with get () = myInternalValue
346- and set (value) = myInternalValue <- value
347- """
348-
349- match parseResults with
350- | ParsedInput.ImplFile ( ParsedImplFileInput ( contents = [ SynModuleOrNamespace.SynModuleOrNamespace( decls = [
351- SynModuleDecl.Types(
352- typeDefns = [ SynTypeDefn( typeRepr =
353- SynTypeDefnRepr.ObjectModel( members=[
354- _
355- SynMemberDefn.GetSetMember( Some _, Some _, _, { WithKeyword = mWith; AndKeyword = Some mAnd }) ])
356- ) ])
357- ]) ])) ->
358- assertRange ( 5 , 8 ) ( 5 , 12 ) mWith
359- assertRange ( 6 , 8 ) ( 6 , 11 ) mAnd
360- | _ -> Assert.Fail " Could not get valid AST"
361-
362233[<Test>]
363234let ``SynTypeDefn with XmlDoc contains the range of the type keyword`` () =
364235 let parseResults =
@@ -399,70 +270,6 @@ type A = B
399270 assertRange ( 4 , 0 ) ( 4 , 4 ) mType
400271 | _ -> Assert.Fail " Could not get valid AST"
401272
402- [<Test>]
403- let ``SynTypeDefn with static member with get / set`` () =
404- let parseResults =
405- getParseResults
406- """
407- type Foo =
408- static member ReadWrite2
409- with set x = lastUsed <- ("ReadWrite2", x)
410- and get () = lastUsed <- ("ReadWrite2", 0); 4
411- """
412-
413- match parseResults with
414- | ParsedInput.ImplFile ( ParsedImplFileInput ( contents = [ SynModuleOrNamespace.SynModuleOrNamespace( decls = [
415- SynModuleDecl.Types(
416- typeDefns = [ SynTypeDefn( typeRepr = SynTypeDefnRepr.ObjectModel( members = [
417- SynMemberDefn.GetSetMember( Some _, Some _, m, { WithKeyword = mWith
418- GetKeyword = Some mGet
419- AndKeyword = Some mAnd
420- SetKeyword = Some mSet })
421- ])) ]
422- )
423- ]) ])) ->
424- assertRange ( 4 , 8 ) ( 4 , 12 ) mWith
425- assertRange ( 4 , 13 ) ( 4 , 16 ) mSet
426- assertRange ( 5 , 8 ) ( 5 , 11 ) mAnd
427- assertRange ( 5 , 13 ) ( 5 , 16 ) mGet
428- assertRange ( 3 , 4 ) ( 5 , 54 ) m
429- | _ -> Assert.Fail " Could not get valid AST"
430-
431- [<Test>]
432- let ``SynTypeDefn with member with set / get`` () =
433- let parseResults =
434- getParseResults
435- """
436- type A() =
437- member this.Z with set (_:int):unit = () and get():int = 1
438- """
439-
440- match parseResults with
441- | ParsedInput.ImplFile ( ParsedImplFileInput ( contents = [ SynModuleOrNamespace.SynModuleOrNamespace( decls = [
442- SynModuleDecl.Types(
443- typeDefns = [ SynTypeDefn( typeRepr = SynTypeDefnRepr.ObjectModel( members = [
444- SynMemberDefn.ImplicitCtor _
445- SynMemberDefn.GetSetMember( Some ( SynBinding( headPat = SynPat.LongIdent( extraId = Some getIdent))),
446- Some ( SynBinding( headPat = SynPat.LongIdent( extraId = Some setIdent))),
447- m,
448- { WithKeyword = mWith
449- GetKeyword = Some mGet
450- AndKeyword = Some mAnd
451- SetKeyword = Some mSet })
452- ])) ]
453- )
454- ]) ])) ->
455- Assert.AreEqual( " get" , getIdent.idText)
456- Assert.AreEqual( " set" , setIdent.idText)
457- assertRange ( 3 , 18 ) ( 3 , 22 ) mWith
458- assertRange ( 3 , 23 ) ( 3 , 26 ) mSet
459- assertRange ( 3 , 23 ) ( 3 , 26 ) setIdent.idRange
460- assertRange ( 3 , 45 ) ( 3 , 48 ) mAnd
461- assertRange ( 3 , 49 ) ( 3 , 52 ) mGet
462- assertRange ( 3 , 49 ) ( 3 , 52 ) getIdent.idRange
463- assertRange ( 3 , 4 ) ( 3 , 62 ) m
464- | _ -> Assert.Fail " Could not get valid AST"
465-
466273[<Test>]
467274let ``SynType.Fun has range of arrow`` () =
468275 let parseResults =
@@ -593,4 +400,4 @@ type X =
593400 ])) ->
594401 Assert.AreEqual( " a" , a.idText)
595402 assertRange ( 3 , 23 ) ( 3 , 41 ) m
596- | _ -> Assert.Fail $" Could not get valid AST, got {parseResults}"
403+ | _ -> Assert.Fail $" Could not get valid AST, got {parseResults}"
0 commit comments