@@ -19,7 +19,7 @@ let rec visitSynModuleDecl (decl : SynModuleDecl) : Stuff =
1919 | SynModuleDecl.Expr( synExpr, range) ->
2020 visitSynExpr synExpr
2121 | SynModuleDecl.HashDirective( parsedHashDirective, range) ->
22- []
22+ visitHashDirective parsedHashDirective
2323 | SynModuleDecl.Let( isRecursive, synBindings, range) ->
2424 visitSynBindings synBindings
2525 | SynModuleDecl.Open( synOpenDeclTarget, range) ->
@@ -34,50 +34,144 @@ let rec visitSynModuleDecl (decl : SynModuleDecl) : Stuff =
3434 seq {
3535 yield ! visitSynComponentInfo synComponentInfo
3636 yield ! Seq.collect visitSynModuleDecl synModuleDecls
37+ yield ! visitSynModuleDeclNestedModuleTrivia synModuleDeclNestedModuleTrivia
3738 }
3839
40+ and visitSynModuleDeclNestedModuleTrivia ( x : SynModuleDeclNestedModuleTrivia ) : Stuff =
41+ [] // TODO check
42+
43+ and visitHashDirective ( x : ParsedHashDirective ) : Stuff =
44+ [] // TODO Check
45+
3946and visitSynIdent ( x : SynIdent ) : Stuff =
40- [] // TODO Correct?
47+ [] // TODO Check
48+
49+ and visitSynTupleTypeSegment ( x : SynTupleTypeSegment ) : Stuff =
50+ match x with
51+ | SynTupleTypeSegment.Slash range ->
52+ []
53+ | SynTupleTypeSegment.Star range ->
54+ []
55+ | SynTupleTypeSegment.Type typeName ->
56+ visitSynType typeName
57+
58+ and visitSynTupleTypeSegments ( x : SynTupleTypeSegment list ) : Stuff =
59+ Seq.collect visitSynTupleTypeSegment x
60+
61+ and visitSynTypar ( x : SynTypar ) : Stuff =
62+ match x with
63+ | SynTypar.SynTypar( ident, typarStaticReq, isCompGen) ->
64+ [] // TODO check
65+
66+ and visitSynRationalConst ( x : SynRationalConst ) =
67+ [] // TODO check
68+
69+ and visitSynConst ( x : SynConst ) : Stuff =
70+ [] // TODO Check
71+
72+ and visitSynTypes ( x : SynType list ) : Stuff =
73+ Seq.collect visitSynType x
74+
75+ and visitTypeConstraints ( x : SynTypeConstraint list ) : Stuff =
76+ Seq.collect visitTypeConstraint x
77+
78+ and visitTypeConstraint ( x : SynTypeConstraint ) : Stuff =
79+ match x with
80+ | SynTypeConstraint.WhereTyparIsValueType( typar, range) ->
81+ failwith unsupported
82+ | SynTypeConstraint.WhereTyparIsReferenceType( typar, range) ->
83+ failwith unsupported
84+ | SynTypeConstraint.WhereTyparIsUnmanaged( typar, range) ->
85+ failwith unsupported
86+ | SynTypeConstraint.WhereTyparSupportsNull( typar, range) ->
87+ failwith unsupported
88+ | SynTypeConstraint.WhereTyparIsComparable( typar, range) ->
89+ failwith unsupported
90+ | SynTypeConstraint.WhereTyparIsEquatable( typar, range) ->
91+ failwith unsupported
92+ | SynTypeConstraint.WhereTyparDefaultsToType( typar, typeName: SynType, range) ->
93+ failwith unsupported
94+ | SynTypeConstraint.WhereTyparSubtypeOfType( typar, typeName: SynType, range) ->
95+ failwith unsupported
96+ | SynTypeConstraint.WhereTyparSupportsMember( typars: SynType, member Sig : SynMemberSig, range) ->
97+ failwith unsupported
98+ | SynTypeConstraint.WhereTyparIsEnum( typar, typeArgs: SynType list, range) ->
99+ failwith unsupported
100+ | SynTypeConstraint.WhereTyparIsDelegate( typar, typeArgs: SynType list, range) ->
101+ failwith unsupported
102+ | SynTypeConstraint.WhereSelfConstrained( selfConstraint, range) ->
103+ failwith unsupported
41104
42105and visitSynType ( x : SynType ) : Stuff =
43106 match x with
44107 | SynType.Anon range ->
45108 []
46109 | SynType.App( typeName, rangeOption, typeArgs, commaRanges, greaterRange, isPostfix, range) ->
47- failwith unsupported
110+ seq {
111+ yield ! visitSynType typeName
112+ yield ! typeArgs |> Seq.collect visitSynType
113+ }
48114 | SynType.Array( rank, elementType, range) ->
49- failwith unsupported
115+ visitSynType elementType
50116 | SynType.Fun( argType, returnType, range, synTypeFunTrivia) ->
51- failwith unsupported
117+ seq {
118+ yield ! visitSynType argType
119+ yield ! visitSynType returnType
120+ }
52121 | SynType.Or( lhsType, rhsType, range, synTypeOrTrivia) ->
53- failwith unsupported
122+ seq {
123+ yield ! visitSynType lhsType
124+ yield ! visitSynType rhsType
125+ }
54126 | SynType.Paren( innerType, range) ->
55- failwith unsupported
127+ visitSynType innerType
56128 | SynType.Tuple( isStruct, synTupleTypeSegments, range) ->
57- failwith unsupported
129+ visitSynTupleTypeSegments synTupleTypeSegments
58130 | SynType.Var( synTypar, range) ->
59- failwith unsupported
131+ visitSynTypar synTypar
60132 | SynType.AnonRecd( isStruct, fields, range) ->
61- failwith unsupported
133+ fields |> Seq.collect ( fun ( id , f ) -> visitSynType f )
62134 | SynType.HashConstraint( innerType, range) ->
63- failwith unsupported
135+ visitSynType innerType
64136 | SynType.LongIdent synLongIdent ->
65- failwith unsupported
137+ visitSynLongIdent synLongIdent
66138 | SynType.MeasureDivide( synType, divisor, range) ->
67- failwith unsupported
139+ seq {
140+ yield ! visitSynType synType
141+ yield ! visitSynType divisor
142+ }
68143 | SynType.MeasurePower( baseMeasure, synRationalConst, range) ->
69- failwith unsupported
144+ seq {
145+ yield ! visitSynType baseMeasure
146+ yield ! visitSynRationalConst synRationalConst
147+ }
70148 | SynType.SignatureParameter( synAttributeLists, optional, identOption, usedType, range) ->
71- failwith unsupported
149+ seq {
150+ yield ! visitSynAttributeLists synAttributeLists
151+ yield ! visitSynType usedType
152+ }
72153 | SynType.StaticConstant( synConst, range) ->
73- failwith unsupported
154+ visitSynConst synConst
74155 | SynType.LongIdentApp( typeName, synLongIdent, rangeOption, typeArgs, commaRanges, greaterRange, range) ->
75- failwith unsupported
156+ seq {
157+ yield ! visitSynType typeName
158+ yield ! visitSynLongIdent synLongIdent
159+ yield ! visitSynTypes typeArgs
160+ }
76161 | SynType.StaticConstantExpr( synExpr, range) ->
77- failwith unsupported
162+ seq {
163+ yield ! visitSynExpr synExpr
164+ }
78165 | SynType.StaticConstantNamed( synType, value, range) ->
79- failwith unsupported
166+ seq {
167+ yield ! visitSynType synType
168+ yield ! visitSynType value
169+ }
80170 | SynType.WithGlobalConstraints( typeName, synTypeConstraints, range) ->
171+ seq {
172+ yield ! visitSynType typeName
173+ yield ! visitTypeConstraints synTypeConstraints
174+ }
81175 failwith unsupported
82176
83177and visitPreXmlDoc ( doc : FSharp.Compiler.Xml.PreXmlDoc ) : Stuff =
0 commit comments