@@ -7,20 +7,6 @@ module (*internal*) Microsoft.FSharp.Compiler.AbstractIL.IL
7
7
open Internal.Utilities
8
8
open System.Collections .Generic
9
9
10
- /// The type used to store relatively small lists in the Abstract IL data structures, i.e. for ILTypes, ILGenericArgs, ILParameters and ILLocals.
11
- /// See comments in il.fs for why we've isolated this representation and the possible future choices we might use here.
12
- #if ABSIL_ USES_ ARRAY_ FOR_ ILLIST
13
- type ILList < 'T > = 'T []
14
- #endif
15
-
16
- #if ABSIL_ USES_ THREELIST_ FOR_ ILLIST
17
- type ILList < 'T > = ThreeList< 'T>
18
- #endif
19
-
20
- //#if ABSIL_USES_LIST_FOR_ILLIST
21
- type ILList < 'T > = 'T list
22
- //#endif
23
-
24
10
type PrimaryAssembly =
25
11
| Mscorlib
26
12
| DotNetCore
@@ -361,28 +347,8 @@ and [<StructuralEquality; StructuralComparison>]
361
347
/// Actual generic parameters are always types.
362
348
363
349
364
- and ILGenericArgs = ILList< ILType>
365
- and ILTypes = ILList< ILType>
366
-
367
-
368
- [<CompilationRepresentation( CompilationRepresentationFlags.ModuleSuffix) >]
369
- module ILList =
370
- val inline map : ( 'T -> 'U ) -> ILList < 'T > -> ILList < 'U >
371
- val inline mapi : ( int -> 'T -> 'U ) -> ILList < 'T > -> ILList < 'U >
372
- val inline isEmpty : ILList < 'T > -> bool
373
- val inline toList : ILList < 'T > -> 'T list
374
- val inline ofList : 'T list -> ILList < 'T >
375
- val inline lengthsEqAndForall2 : ( 'T -> 'U -> bool ) -> ILList < 'T > -> ILList < 'U > -> bool
376
- val inline init : int -> ( int -> 'T ) -> ILList < 'T >
377
- val inline empty < 'T > : ILList < 'T >
378
- val inline toArray : ILList < 'T > -> 'T []
379
- val inline ofArray : 'T [] -> ILList < 'T >
380
- val inline nth : ILList < 'T > -> int -> 'T
381
- val inline iter : ( 'T -> unit ) -> ILList < 'T > -> unit
382
- val inline iteri : ( int -> 'T -> unit ) -> ILList < 'T > -> unit
383
- val inline foldBack : ( 'T -> 'State -> 'State ) -> ILList < 'T > -> 'State -> 'State
384
- val inline exists : ( 'T -> bool ) -> ILList < 'T > -> bool
385
-
350
+ and ILGenericArgs = list< ILType>
351
+ and ILTypes = list< ILType>
386
352
387
353
/// Formal identities of methods. Method refs refer to methods on
388
354
/// named types. In general you should work with ILMethodSpec objects
@@ -817,8 +783,7 @@ type ILLocal =
817
783
IsPinned: bool ;
818
784
DebugInfo: ( string * int * int ) option }
819
785
820
-
821
- type ILLocals = ILList< ILLocal>
786
+ type ILLocals = list< ILLocal>
822
787
823
788
/// IL method bodies
824
789
[<RequireQualifiedAccess; NoComparison; NoEquality>]
@@ -891,10 +856,9 @@ type ILParameter =
891
856
IsOptional: bool ;
892
857
CustomAttrs: ILAttributes }
893
858
894
- type ILParameters = ILList < ILParameter>
859
+ type ILParameters = list < ILParameter>
895
860
896
- val typesOfILParamsRaw : ILParameters -> ILTypes
897
- val typesOfILParamsList : ILParameter list -> ILType list
861
+ val typesOfILParams : ILParameters -> ILType list
898
862
899
863
/// Method return values.
900
864
[<RequireQualifiedAccess; NoEquality; NoComparison>]
@@ -1428,6 +1392,7 @@ type ILAssemblyManifest =
1428
1392
AssemblyLongevity: ILAssemblyLongevity ;
1429
1393
DisableJitOptimizations: bool ;
1430
1394
JitTracking: bool ;
1395
+ IgnoreSymbolStoreSequencePoints: bool ;
1431
1396
Retargetable: bool ;
1432
1397
/// Records the types impemented by this asssembly in auxiliary
1433
1398
/// modules.
@@ -1658,7 +1623,6 @@ val decodeILAttribData:
1658
1623
val mkSimpleAssRef : string -> ILAssemblyRef
1659
1624
val mkSimpleModRef : string -> ILModuleRef
1660
1625
1661
- val emptyILGenericArgs : ILGenericArgs
1662
1626
val mkILTyvarTy : uint16 -> ILType
1663
1627
1664
1628
/// Make type refs.
@@ -1667,18 +1631,15 @@ val mkILTyRef: ILScopeRef * string -> ILTypeRef
1667
1631
val mkILTyRefInTyRef : ILTypeRef * string -> ILTypeRef
1668
1632
1669
1633
type ILGenericArgsList = ILType list
1670
- val mkILGenericArgs : ILGenericArgsList -> ILGenericArgs
1634
+
1671
1635
/// Make type specs.
1672
1636
val mkILNonGenericTySpec : ILTypeRef -> ILTypeSpec
1673
1637
val mkILTySpec : ILTypeRef * ILGenericArgsList -> ILTypeSpec
1674
- val mkILTySpecRaw : ILTypeRef * ILGenericArgs -> ILTypeSpec
1675
1638
1676
1639
/// Make types.
1677
1640
val mkILTy : ILBoxity -> ILTypeSpec -> ILType
1678
1641
val mkILNamedTy : ILBoxity -> ILTypeRef -> ILGenericArgsList -> ILType
1679
- val mkILNamedTyRaw : ILBoxity -> ILTypeRef -> ILGenericArgs -> ILType
1680
1642
val mkILBoxedTy : ILTypeRef -> ILGenericArgsList -> ILType
1681
- val mkILBoxedTyRaw : ILTypeRef -> ILGenericArgs -> ILType
1682
1643
val mkILValueTy : ILTypeRef -> ILGenericArgsList -> ILType
1683
1644
val mkILNonGenericBoxedTy : ILTypeRef -> ILType
1684
1645
val mkILNonGenericValueTy : ILTypeRef -> ILType
@@ -1688,16 +1649,11 @@ val isILArrTy: ILType -> bool
1688
1649
val destILArrTy : ILType -> ILArrayShape * ILType
1689
1650
val mkILBoxedType : ILTypeSpec -> ILType
1690
1651
1691
- val mkILTypes : ILType list -> ILTypes
1692
-
1693
1652
/// Make method references and specs.
1694
- val mkILMethRefRaw : ILTypeRef * ILCallingConv * string * int * ILTypes * ILType -> ILMethodRef
1695
1653
val mkILMethRef : ILTypeRef * ILCallingConv * string * int * ILType list * ILType -> ILMethodRef
1696
1654
val mkILMethSpec : ILMethodRef * ILBoxity * ILGenericArgsList * ILGenericArgsList -> ILMethodSpec
1697
- val mkILMethSpecForMethRefInTyRaw : ILMethodRef * ILType * ILGenericArgs -> ILMethodSpec
1698
1655
val mkILMethSpecForMethRefInTy : ILMethodRef * ILType * ILGenericArgsList -> ILMethodSpec
1699
1656
val mkILMethSpecInTy : ILType * ILCallingConv * string * ILType list * ILType * ILGenericArgsList -> ILMethodSpec
1700
- val mkILMethSpecInTyRaw : ILType * ILCallingConv * string * ILTypes * ILType * ILGenericArgs -> ILMethodSpec
1701
1657
1702
1658
/// Construct references to methods on a given type .
1703
1659
val mkILNonGenericMethSpecInTy : ILType * ILCallingConv * string * ILType list * ILType -> ILMethodSpec
@@ -1722,17 +1678,14 @@ val mkILFieldRef: ILTypeRef * string * ILType -> ILFieldRef
1722
1678
val mkILFieldSpec : ILFieldRef * ILType -> ILFieldSpec
1723
1679
val mkILFieldSpecInTy : ILType * string * ILType -> ILFieldSpec
1724
1680
1725
- val mkILCallSigRaw : ILCallingConv * ILTypes * ILType -> ILCallingSignature
1726
1681
val mkILCallSig : ILCallingConv * ILType list * ILType -> ILCallingSignature
1727
1682
1728
1683
/// Make generalized verions of possibly - generic types ,
1729
1684
/// e.g. Given the ILTypeDef for List , return the type "List < T > ".
1730
1685
val mkILFormalBoxedTy : ILTypeRef -> ILGenericParameterDef list -> ILType
1731
1686
val mkILFormalNamedTy : ILBoxity -> ILTypeRef -> ILGenericParameterDef list -> ILType
1732
1687
1733
- val mkILFormalTyparsRaw : ILTypes -> ILGenericParameterDefs
1734
1688
val mkILFormalTypars : ILType list -> ILGenericParameterDefs
1735
- val mkILFormalGenericArgsRaw : ILGenericParameterDefs -> ILGenericArgs
1736
1689
val mkILFormalGenericArgs : ILGenericParameterDefs -> ILGenericArgsList
1737
1690
val mkILSimpleTypar : string -> ILGenericParameterDef
1738
1691
/// Make custom attributes.
@@ -1794,8 +1747,6 @@ val mkILParamAnon: ILType -> ILParameter
1794
1747
val mkILParamNamed : string * ILType -> ILParameter
1795
1748
val mkILReturn : ILType -> ILReturn
1796
1749
val mkILLocal : ILType -> ( string * int * int ) option -> ILLocal
1797
- val mkILLocals : ILLocal list -> ILLocals
1798
- val emptyILLocals : ILLocals
1799
1750
1800
1751
/// Make a formal generic parameters.
1801
1752
val mkILEmptyGenericParams : ILGenericParameterDefs
0 commit comments