Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Tag items in tooltips consistenly with respect to document classification (such colors, much wow) #9563

Merged
merged 61 commits into from
Nov 17, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
61 commits
Select commit Hold shift + click to select a range
8ba6c45
Align QuickInfo colors with classification colors
cartermp Jun 25, 2020
01a74f0
Color methods in tooltips properly
cartermp Jun 26, 2020
01d0e39
Tag locals and see if we can tag functions better
cartermp Jun 27, 2020
92e4d1a
Tag interface when value or return value properly
cartermp Jun 27, 2020
a5c7583
tag intrinsics better and refactor
cartermp Jun 27, 2020
f050fc4
Color functions in tooltips + consistent operator treatment
cartermp Jun 28, 2020
fa325fc
tag abbreviations for value types as value types
cartermp Jun 28, 2020
65b618e
Move isFunction and use it in pretty-printing
cartermp Jun 28, 2020
daa0be7
Be a little smarter about laying out IL reference and value types
cartermp Jun 29, 2020
a936718
Use entirely different routine for laying out object data
cartermp Jun 30, 2020
fc7ca1b
Don't show 'inherit ValueType'
cartermp Jun 30, 2020
5e0a8e1
filter out ctors when looking at methods
cartermp Jun 30, 2020
aa65819
Lay out everything else for types
cartermp Jun 30, 2020
a9ca0c9
final formatting changes for props probably
cartermp Jun 30, 2020
4380cde
Simplify
cartermp Jun 30, 2020
b418fc9
remove as much ILTyeRef printing as possible (so far)
cartermp Jun 30, 2020
ee15fb4
updates
cartermp Jul 1, 2020
ac0a377
remove nonsense + commented out stuff
cartermp Jul 1, 2020
d011ecf
Don't show compiler-generated interfaces for record/union/struct
cartermp Jul 1, 2020
8fda6b0
testing updates and some tweaks
cartermp Jul 1, 2020
040d00f
Updates
cartermp Jul 1, 2020
d2659a9
Updates
cartermp Jul 2, 2020
47d0255
updates
cartermp Jul 2, 2020
66d8ec1
updates
cartermp Jul 2, 2020
1a4ebf8
Update more tests
cartermp Jul 2, 2020
aedc087
updates
cartermp Jul 2, 2020
97518d8
updates + small refactor
cartermp Jul 2, 2020
92ab13f
test updates
cartermp Jul 2, 2020
30e0929
Test updates
cartermp Jul 3, 2020
b0e44e7
Don't shrink overloads when printing signatures
cartermp Jul 3, 2020
25f25dc
print members consistently
cartermp Jul 6, 2020
c901275
Update tests
cartermp Jul 6, 2020
6eaf3e1
test updates
cartermp Jul 7, 2020
8f33f3f
Update fsharpqa tests
cartermp Jul 7, 2020
624e48b
Handle delegates
cartermp Jul 7, 2020
2db31cb
Enums
cartermp Jul 7, 2020
2ecb32d
Show struct attribute for all structs
cartermp Jul 7, 2020
e2d8d00
Filter class constructors
cartermp Jul 8, 2020
b53677e
cleanup and test update
cartermp Jul 8, 2020
e0bf942
more filter
cartermp Jul 9, 2020
48a6b34
additional option for sigs
cartermp Jul 10, 2020
9a9f326
Updates
cartermp Jul 11, 2020
4ea1dae
cleanup
cartermp Jul 11, 2020
02ad676
more cleanup
cartermp Jul 11, 2020
b8fa5c9
Update printing baselines
cartermp Jul 11, 2020
55b4bbd
Don't omit attribute + clean up discard intrinsics (found almost excl…
cartermp Jul 11, 2020
0ef41a8
Test updates
cartermp Jul 12, 2020
a655036
Test updates
cartermp Jul 12, 2020
6a90d81
Test updates
cartermp Jul 13, 2020
6fcc552
Test updates
cartermp Jul 13, 2020
c88bc49
Fix 6160
cartermp Jul 13, 2020
fac0338
Fix classification for unresolved/impossible-to-construct constructors
cartermp Jul 13, 2020
f6dbaab
update test again lol
cartermp Jul 13, 2020
4027233
Updates
cartermp Aug 26, 2020
983c44b
Update
cartermp Aug 26, 2020
76beeda
Update netstandard surface
cartermp Aug 26, 2020
4ad02be
Try updating this baseline I guess
cartermp Sep 6, 2020
7f28a88
merge
cartermp Nov 12, 2020
4f9e718
yoop
cartermp Nov 12, 2020
b5a8f40
Update baselines
cartermp Nov 13, 2020
65506bd
Feedback
cartermp Nov 17, 2020
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
942 changes: 349 additions & 593 deletions src/fsharp/NicePrint.fs

Large diffs are not rendered by default.

1 change: 1 addition & 0 deletions src/fsharp/TcGlobals.fs
Original file line number Diff line number Diff line change
Expand Up @@ -1087,6 +1087,7 @@ type public TcGlobals(compilingFslib: bool, ilg:ILGlobals, fslibCcu: CcuThunk, d

member val system_Array_tcref = findSysTyconRef sys "Array"
member val system_Object_tcref = findSysTyconRef sys "Object"
member val system_Value_tcref = findSysTyconRef sys "ValueType"
member val system_Void_tcref = findSysTyconRef sys "Void"
member val system_IndexOutOfRangeException_tcref = findSysTyconRef sys "IndexOutOfRangeException"
member val system_Nullable_tcref = v_nullable_tcr
Expand Down
11 changes: 10 additions & 1 deletion src/fsharp/TypedTreeOps.fs
Original file line number Diff line number Diff line change
Expand Up @@ -1665,6 +1665,7 @@ let isArrayTy g ty = ty |> stripTyEqns g |> (function TType_app(tcref, _) -> isA
let isArray1DTy g ty = ty |> stripTyEqns g |> (function TType_app(tcref, _) -> tyconRefEq g tcref g.il_arr_tcr_map.[0] | _ -> false)
let isUnitTy g ty = ty |> stripTyEqns g |> (function TType_app(tcref, _) -> tyconRefEq g g.unit_tcr_canon tcref | _ -> false)
let isObjTy g ty = ty |> stripTyEqns g |> (function TType_app(tcref, _) -> tyconRefEq g g.system_Object_tcref tcref | _ -> false)
let isValueTypeTy g ty = ty |> stripTyEqns g |> (function TType_app(tcref, _) -> tyconRefEq g g.system_Value_tcref tcref | _ -> false)
let isVoidTy g ty = ty |> stripTyEqns g |> (function TType_app(tcref, _) -> tyconRefEq g g.system_Void_tcref tcref | _ -> false)
let isILAppTy g ty = ty |> stripTyEqns g |> (function TType_app(tcref, _) -> tcref.IsILTycon | _ -> false)
let isNativePtrTy g ty = ty |> stripTyEqns g |> (function TType_app(tcref, _) -> tyconRefEq g g.nativeptr_tcr tcref | _ -> false)
Expand Down Expand Up @@ -1825,6 +1826,10 @@ let isRefTy g ty =
(isAnonRecdTy g ty && not (isStructAnonRecdTy g ty))
)

let isForallFunctionTy g ty =
let _, tau = tryDestForallTy g ty
isFunTy g tau

// ECMA C# LANGUAGE SPECIFICATION, 27.2
// An unmanaged-type is any type that isn't a reference-type, a type-parameter, or a generic struct-type and
// contains no fields whose type is not an unmanaged-type. In other words, an unmanaged-type is one of the
Expand Down Expand Up @@ -2745,6 +2750,8 @@ type DisplayEnv =
showConstraintTyparAnnotations: bool
abbreviateAdditionalConstraints: bool
showTyparDefaultConstraints: bool
shrinkOverloads: bool
printVerboseSignatures : bool
g: TcGlobals
contextAccessibility: Accessibility
generatedValueLayout : (Val -> layout option) }
Expand Down Expand Up @@ -2776,6 +2783,8 @@ type DisplayEnv =
showTyparDefaultConstraints = false
shortConstraints = false
useColonForReturnType = false
shrinkOverloads = true
printVerboseSignatures = false
g = tcGlobals
contextAccessibility = taccessPublic
generatedValueLayout = (fun _ -> None) }
Expand Down Expand Up @@ -2844,7 +2853,7 @@ let tagEntityRefName (xref: EntityRef) name =
elif xref.IsFSharpDelegateTycon then tagDelegate name
elif xref.IsILEnumTycon || xref.IsFSharpEnumTycon then tagEnum name
elif xref.IsStructOrEnumTycon then tagStruct name
elif xref.IsFSharpInterfaceTycon then tagInterface name
elif isInterfaceTyconRef xref then tagInterface name
elif xref.IsUnionTycon then tagUnion name
elif xref.IsRecordTycon then tagRecord name
else tagClass name
Expand Down
8 changes: 8 additions & 0 deletions src/fsharp/TypedTreeOps.fsi
Original file line number Diff line number Diff line change
Expand Up @@ -979,6 +979,8 @@ type DisplayEnv =
showConstraintTyparAnnotations:bool
abbreviateAdditionalConstraints: bool
showTyparDefaultConstraints: bool
shrinkOverloads: bool
printVerboseSignatures : bool
g: TcGlobals
contextAccessibility: Accessibility
generatedValueLayout:(Val -> layout option) }
Expand Down Expand Up @@ -1506,6 +1508,9 @@ val isUnitTy : TcGlobals -> TType -> bool
/// Determine if a type is the System.Object type
val isObjTy : TcGlobals -> TType -> bool

/// Determine if a type is the System.ValueType type
val isValueTypeTy : TcGlobals -> TType -> bool

/// Determine if a type is the System.Void type
val isVoidTy : TcGlobals -> TType -> bool

Expand All @@ -1527,6 +1532,9 @@ val isInterfaceTy : TcGlobals -> TType -> bool
/// Determine if a type is a FSharpRef type
val isRefTy : TcGlobals -> TType -> bool

/// Determine if a type is a function (including generic). Not the same as isFunTy.
val isForallFunctionTy : TcGlobals -> TType -> bool

/// Determine if a type is a sealed type
val isSealedTy : TcGlobals -> TType -> bool

Expand Down
2 changes: 1 addition & 1 deletion src/fsharp/fsc.fs
Original file line number Diff line number Diff line change
Expand Up @@ -331,7 +331,7 @@ module InterfaceFileWriter =
for (TImplFile (_, _, mexpr, _, _, _)) in declaredImpls do
let denv = BuildInitialDisplayEnvForSigFileGeneration tcGlobals
writeViaBuffer os (fun os s -> Printf.bprintf os "%s\n\n" s)
(NicePrint.layoutInferredSigOfModuleExpr true denv infoReader AccessibleFromSomewhere range0 mexpr |> Display.squashTo 80 |> Layout.showL)
(NicePrint.layoutInferredSigOfModuleExpr true { denv with shrinkOverloads = false; printVerboseSignatures = true } infoReader AccessibleFromSomewhere range0 mexpr |> Display.squashTo 80 |> Layout.showL)

if tcConfig.printSignatureFile <> "" then os.Dispose()

Expand Down
1 change: 1 addition & 0 deletions src/fsharp/layout.fs
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,7 @@ module TaggedTextOps =
let tagMember = TaggedTextOps.mkTag LayoutTag.Member
let tagModule = TaggedTextOps.tagModule
let tagModuleBinding = TaggedTextOps.tagModuleBinding
let tagFunction = TaggedTextOps.tagFunction
let tagNamespace = TaggedTextOps.tagNamespace
let tagNumericLiteral = TaggedTextOps.tagNumericLiteral
let tagOperator = TaggedTextOps.tagOperator
Expand Down
1 change: 1 addition & 0 deletions src/fsharp/layout.fsi
Original file line number Diff line number Diff line change
Expand Up @@ -103,6 +103,7 @@ module TaggedTextOps =
val tagRecordField : (string -> TaggedText)
val tagModule : (string -> TaggedText)
val tagModuleBinding : (string -> TaggedText)
val tagFunction : (string -> TaggedText)
val tagMember : (string -> TaggedText)
val tagNamespace : (string -> TaggedText)
val tagNumericLiteral : (string -> TaggedText)
Expand Down
5 changes: 2 additions & 3 deletions src/fsharp/service/SemanticClassification.fs
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,6 @@ open FSharp.Compiler.Range
open FSharp.Compiler.TcGlobals
open FSharp.Compiler.TypedTree
open FSharp.Compiler.TypedTreeOps
open FSharp.Compiler.SourceCodeServices.SymbolHelpers

[<RequireQualifiedAccess>]
type SemanticClassificationType =
Expand Down Expand Up @@ -165,7 +164,7 @@ module TcResolutionsExtensions =
| Item.Value KeywordIntrinsicValue, ItemOccurence.Use, _, _, _, m ->
add m SemanticClassificationType.IntrinsicFunction

| (Item.Value vref), _, _, _, _, m when isFunction g vref.Type ->
| (Item.Value vref), _, _, _, _, m when isForallFunctionTy g vref.Type ->
if isDiscard vref.DisplayName then
add m SemanticClassificationType.Plaintext
elif valRefEq g g.range_op_vref vref || valRefEq g g.range_step_op_vref vref then
Expand Down Expand Up @@ -295,7 +294,7 @@ module TcResolutionsExtensions =
add m SemanticClassificationType.ValueType
elif isRefTupleTy g ty then
add m SemanticClassificationType.ReferenceType
elif isFunction g ty then
elif isForallFunctionTy g ty then
add m SemanticClassificationType.Function
elif isTyparTy g ty then
add m SemanticClassificationType.ValueType
Expand Down
13 changes: 4 additions & 9 deletions src/fsharp/symbols/SymbolHelpers.fs
Original file line number Diff line number Diff line change
Expand Up @@ -316,11 +316,6 @@ type CompletionItem =

[<AutoOpen>]
module internal SymbolHelpers =

let isFunction g ty =
let _, tau = tryDestForallTy g ty
isFunTy g tau

let OutputFullName isListItem ppF fnF r =
// Only display full names in quick info, not declaration lists or method lists
if not isListItem then
Expand Down Expand Up @@ -903,7 +898,7 @@ module internal SymbolHelpers =
| Item.AnonRecdField(anon, _argTys, i, _) -> anon.SortedNames.[i]
| Item.RecdField rfinfo -> fullDisplayTextOfRecdFieldRef rfinfo.RecdFieldRef
| Item.NewDef id -> id.idText
| Item.ILField finfo -> bufs (fun os -> NicePrint.outputILTypeRef denv os finfo.ILTypeRef; bprintf os ".%s" finfo.FieldName)
| Item.ILField finfo -> bufs (fun os -> NicePrint.outputType denv os finfo.ApparentEnclosingType; bprintf os ".%s" finfo.FieldName)
| Item.Event einfo -> bufs (fun os -> NicePrint.outputTyconRef denv os einfo.DeclaringTyconRef; bprintf os ".%s" einfo.EventName)
| Item.Property(_, (pinfo :: _)) -> bufs (fun os -> NicePrint.outputTyconRef denv os pinfo.DeclaringTyconRef; bprintf os ".%s" pinfo.PropertyName)
| Item.CustomOperation (customOpName, _, _) -> customOpName
Expand Down Expand Up @@ -1140,7 +1135,7 @@ module internal SymbolHelpers =
| Item.ILField finfo ->
let layout =
wordL (tagText (FSComp.SR.typeInfoField())) ^^
NicePrint.layoutILTypeRef denv finfo.ILTypeRef ^^
NicePrint.layoutType denv finfo.ApparentEnclosingAppType ^^
SepL.dot ^^
wordL (tagField finfo.FieldName) ^^
RightL.colon ^^
Expand Down Expand Up @@ -1527,8 +1522,8 @@ module internal SymbolHelpers =
| Item.NewDef _
| Item.ILField _ -> []
| Item.Event _ -> []
| Item.RecdField rfinfo -> if isFunction g rfinfo.FieldType then [item] else []
| Item.Value v -> if isFunction g v.Type then [item] else []
| Item.RecdField rfinfo -> if isForallFunctionTy g rfinfo.FieldType then [item] else []
| Item.Value v -> if isForallFunctionTy g v.Type then [item] else []
| Item.UnionCase(ucr, _) -> if not ucr.UnionCase.IsNullary then [item] else []
| Item.ExnCase ecr -> if isNil (recdFieldsOfExnDefRef ecr) then [] else [item]
| Item.Property(_, pinfos) ->
Expand Down
5 changes: 1 addition & 4 deletions src/fsharp/symbols/SymbolHelpers.fsi
Original file line number Diff line number Diff line change
Expand Up @@ -154,10 +154,7 @@ module public Tooltips =
val ToFSharpToolTipText: FSharpStructuredToolTipText -> FSharpToolTipText

// Implementation details used by other code in the compiler
module internal SymbolHelpers =

val isFunction : TcGlobals -> TType -> bool

module internal SymbolHelpers =
val ParamNameAndTypesOfUnaryCustomOperation : TcGlobals -> MethInfo -> ParamNameAndType list

val GetXmlDocSigOfEntityRef : InfoReader -> range -> EntityRef -> (string option * string) option
Expand Down
2 changes: 1 addition & 1 deletion src/fsharp/symbols/Symbols.fs
Original file line number Diff line number Diff line change
Expand Up @@ -2059,7 +2059,7 @@ type FSharpMemberOrFunctionOrValue(cenv, d:FSharpMemberOrValData, item) =

member x.IsValue =
match d with
| V valRef -> not (SymbolHelpers.isFunction cenv.g valRef.Type)
| V valRef -> not (isForallFunctionTy cenv.g valRef.Type)
| _ -> false

override x.Equals(other: obj) =
Expand Down
66 changes: 33 additions & 33 deletions src/fsharp/utils/sformat.fs
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,7 @@ type LayoutTag =
| Method
| Member
| ModuleBinding
| Function
| Module
| Namespace
| NumericLiteral
Expand Down Expand Up @@ -124,40 +125,38 @@ module TaggedTextOps =
let toText (tt: TaggedText) = tt.Text

let tagAlias t = mkTag LayoutTag.Alias t
let keywordFunctions = Set ["raise"; "reraise"; "typeof"; "typedefof"; "sizeof"; "nameof"]
let keywordTypes =
let keywordFunctions =
[
"array"
"bigint"
"bool"
"byref"
"byte"
"char"
"decimal"
"double"
"float"
"float32"
"int"
"int8"
"int16"
"int32"
"int64"
"list"
"nativeint"
"obj"
"sbyte"
"seq"
"single"
"string"
"unit"
"uint"
"uint8"
"uint16"
"uint32"
"uint64"
"unativeint"
] |> Set.ofList
let tagClass name = if Set.contains name keywordTypes then mkTag LayoutTag.Keyword name else mkTag LayoutTag.Class name
"raise"
"reraise"
"typeof"
"typedefof"
"sizeof"
"nameof"
"char"
"decimal"
"double"
"float"
"float32"
"int"
"int8"
"int16"
"int32"
"int64"
"sbyte"
"seq" // 'seq x' when 'x' is a string works, strangely enough
"single"
"string"
"unit"
"uint"
"uint8"
"uint16"
"uint32"
"uint64"
"unativeint"
]
|> Set.ofList
let tagClass name = mkTag LayoutTag.Class name
let tagUnionCase t = mkTag LayoutTag.UnionCase t
let tagDelegate t = mkTag LayoutTag.Delegate t
let tagEnum t = mkTag LayoutTag.Enum t
Expand All @@ -172,6 +171,7 @@ module TaggedTextOps =
let tagMethod t = mkTag LayoutTag.Method t
let tagModule t = mkTag LayoutTag.Module t
let tagModuleBinding name = if keywordFunctions.Contains name then mkTag LayoutTag.Keyword name else mkTag LayoutTag.ModuleBinding name
let tagFunction t = mkTag LayoutTag.Function t
let tagNamespace t = mkTag LayoutTag.Namespace t
let tagNumericLiteral t = mkTag LayoutTag.NumericLiteral t
let tagOperator t = mkTag LayoutTag.Operator t
Expand Down
2 changes: 2 additions & 0 deletions src/fsharp/utils/sformat.fsi
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,7 @@ namespace Microsoft.FSharp.Text.StructuredPrintfImpl
| Method
| Member
| ModuleBinding
| Function
| Module
| Namespace
| NumericLiteral
Expand Down Expand Up @@ -125,6 +126,7 @@ namespace Microsoft.FSharp.Text.StructuredPrintfImpl
val tagLineBreak: string -> TaggedText
val tagMethod: string -> TaggedText
val tagModuleBinding: string -> TaggedText
val tagFunction : string -> TaggedText
val tagLocal: string -> TaggedText
val tagRecord: string -> TaggedText
val tagRecordField: string -> TaggedText
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19330,6 +19330,7 @@ FSharp.Compiler.Layout+TaggedTextOps: Microsoft.FSharp.Core.FSharpFunc`2[System.
FSharp.Compiler.Layout+TaggedTextOps: Microsoft.FSharp.Core.FSharpFunc`2[System.String,Internal.Utilities.StructuredFormat.TaggedText] get_tagMethod()
FSharp.Compiler.Layout+TaggedTextOps: Microsoft.FSharp.Core.FSharpFunc`2[System.String,Internal.Utilities.StructuredFormat.TaggedText] get_tagModule()
FSharp.Compiler.Layout+TaggedTextOps: Microsoft.FSharp.Core.FSharpFunc`2[System.String,Internal.Utilities.StructuredFormat.TaggedText] get_tagModuleBinding()
FSharp.Compiler.Layout+TaggedTextOps: Microsoft.FSharp.Core.FSharpFunc`2[System.String,Internal.Utilities.StructuredFormat.TaggedText] get_tagFunction()
FSharp.Compiler.Layout+TaggedTextOps: Microsoft.FSharp.Core.FSharpFunc`2[System.String,Internal.Utilities.StructuredFormat.TaggedText] get_tagNamespace()
FSharp.Compiler.Layout+TaggedTextOps: Microsoft.FSharp.Core.FSharpFunc`2[System.String,Internal.Utilities.StructuredFormat.TaggedText] get_tagNumericLiteral()
FSharp.Compiler.Layout+TaggedTextOps: Microsoft.FSharp.Core.FSharpFunc`2[System.String,Internal.Utilities.StructuredFormat.TaggedText] get_tagOperator()
Expand Down Expand Up @@ -19363,6 +19364,7 @@ FSharp.Compiler.Layout+TaggedTextOps: Microsoft.FSharp.Core.FSharpFunc`2[System.
FSharp.Compiler.Layout+TaggedTextOps: Microsoft.FSharp.Core.FSharpFunc`2[System.String,Internal.Utilities.StructuredFormat.TaggedText] tagMethod
FSharp.Compiler.Layout+TaggedTextOps: Microsoft.FSharp.Core.FSharpFunc`2[System.String,Internal.Utilities.StructuredFormat.TaggedText] tagModule
FSharp.Compiler.Layout+TaggedTextOps: Microsoft.FSharp.Core.FSharpFunc`2[System.String,Internal.Utilities.StructuredFormat.TaggedText] tagModuleBinding
FSharp.Compiler.Layout+TaggedTextOps: Microsoft.FSharp.Core.FSharpFunc`2[System.String,Internal.Utilities.StructuredFormat.TaggedText] tagFunction
FSharp.Compiler.Layout+TaggedTextOps: Microsoft.FSharp.Core.FSharpFunc`2[System.String,Internal.Utilities.StructuredFormat.TaggedText] tagNamespace
FSharp.Compiler.Layout+TaggedTextOps: Microsoft.FSharp.Core.FSharpFunc`2[System.String,Internal.Utilities.StructuredFormat.TaggedText] tagNumericLiteral
FSharp.Compiler.Layout+TaggedTextOps: Microsoft.FSharp.Core.FSharpFunc`2[System.String,Internal.Utilities.StructuredFormat.TaggedText] tagOperator
Expand Down Expand Up @@ -42179,6 +42181,7 @@ Internal.Utilities.StructuredFormat.LayoutTag+Tags: Int32 Member
Internal.Utilities.StructuredFormat.LayoutTag+Tags: Int32 Method
Internal.Utilities.StructuredFormat.LayoutTag+Tags: Int32 Module
Internal.Utilities.StructuredFormat.LayoutTag+Tags: Int32 ModuleBinding
Internal.Utilities.StructuredFormat.LayoutTag+Tags: Int32 Function
Internal.Utilities.StructuredFormat.LayoutTag+Tags: Int32 Namespace
Internal.Utilities.StructuredFormat.LayoutTag+Tags: Int32 NumericLiteral
Internal.Utilities.StructuredFormat.LayoutTag+Tags: Int32 Operator
Expand Down Expand Up @@ -42215,6 +42218,7 @@ Internal.Utilities.StructuredFormat.LayoutTag: Boolean IsMember
Internal.Utilities.StructuredFormat.LayoutTag: Boolean IsMethod
Internal.Utilities.StructuredFormat.LayoutTag: Boolean IsModule
Internal.Utilities.StructuredFormat.LayoutTag: Boolean IsModuleBinding
Internal.Utilities.StructuredFormat.LayoutTag: Boolean IsFunction
Internal.Utilities.StructuredFormat.LayoutTag: Boolean IsNamespace
Internal.Utilities.StructuredFormat.LayoutTag: Boolean IsNumericLiteral
Internal.Utilities.StructuredFormat.LayoutTag: Boolean IsOperator
Expand Down Expand Up @@ -42248,6 +42252,7 @@ Internal.Utilities.StructuredFormat.LayoutTag: Boolean get_IsMember()
Internal.Utilities.StructuredFormat.LayoutTag: Boolean get_IsMethod()
Internal.Utilities.StructuredFormat.LayoutTag: Boolean get_IsModule()
Internal.Utilities.StructuredFormat.LayoutTag: Boolean get_IsModuleBinding()
Internal.Utilities.StructuredFormat.LayoutTag: Boolean get_IsFunction()
Internal.Utilities.StructuredFormat.LayoutTag: Boolean get_IsNamespace()
Internal.Utilities.StructuredFormat.LayoutTag: Boolean get_IsNumericLiteral()
Internal.Utilities.StructuredFormat.LayoutTag: Boolean get_IsOperator()
Expand Down Expand Up @@ -42285,6 +42290,7 @@ Internal.Utilities.StructuredFormat.LayoutTag: Internal.Utilities.StructuredForm
Internal.Utilities.StructuredFormat.LayoutTag: Internal.Utilities.StructuredFormat.LayoutTag Method
Internal.Utilities.StructuredFormat.LayoutTag: Internal.Utilities.StructuredFormat.LayoutTag Module
Internal.Utilities.StructuredFormat.LayoutTag: Internal.Utilities.StructuredFormat.LayoutTag ModuleBinding
Internal.Utilities.StructuredFormat.LayoutTag: Internal.Utilities.StructuredFormat.LayoutTag Function
Internal.Utilities.StructuredFormat.LayoutTag: Internal.Utilities.StructuredFormat.LayoutTag Namespace
Internal.Utilities.StructuredFormat.LayoutTag: Internal.Utilities.StructuredFormat.LayoutTag NumericLiteral
Internal.Utilities.StructuredFormat.LayoutTag: Internal.Utilities.StructuredFormat.LayoutTag Operator
Expand Down Expand Up @@ -42318,6 +42324,7 @@ Internal.Utilities.StructuredFormat.LayoutTag: Internal.Utilities.StructuredForm
Internal.Utilities.StructuredFormat.LayoutTag: Internal.Utilities.StructuredFormat.LayoutTag get_Method()
Internal.Utilities.StructuredFormat.LayoutTag: Internal.Utilities.StructuredFormat.LayoutTag get_Module()
Internal.Utilities.StructuredFormat.LayoutTag: Internal.Utilities.StructuredFormat.LayoutTag get_ModuleBinding()
Internal.Utilities.StructuredFormat.LayoutTag: Internal.Utilities.StructuredFormat.LayoutTag get_Function()
Internal.Utilities.StructuredFormat.LayoutTag: Internal.Utilities.StructuredFormat.LayoutTag get_Namespace()
Internal.Utilities.StructuredFormat.LayoutTag: Internal.Utilities.StructuredFormat.LayoutTag get_NumericLiteral()
Internal.Utilities.StructuredFormat.LayoutTag: Internal.Utilities.StructuredFormat.LayoutTag get_Operator()
Expand Down Expand Up @@ -42385,6 +42392,7 @@ Internal.Utilities.StructuredFormat.TaggedTextOps: Internal.Utilities.Structured
Internal.Utilities.StructuredFormat.TaggedTextOps: Internal.Utilities.StructuredFormat.TaggedText tagMethod(System.String)
Internal.Utilities.StructuredFormat.TaggedTextOps: Internal.Utilities.StructuredFormat.TaggedText tagModule(System.String)
Internal.Utilities.StructuredFormat.TaggedTextOps: Internal.Utilities.StructuredFormat.TaggedText tagModuleBinding(System.String)
Internal.Utilities.StructuredFormat.TaggedTextOps: Internal.Utilities.StructuredFormat.TaggedText tagFunction(System.String)
Internal.Utilities.StructuredFormat.TaggedTextOps: Internal.Utilities.StructuredFormat.TaggedText tagNamespace(System.String)
Internal.Utilities.StructuredFormat.TaggedTextOps: Internal.Utilities.StructuredFormat.TaggedText tagNumericLiteral(System.String)
Internal.Utilities.StructuredFormat.TaggedTextOps: Internal.Utilities.StructuredFormat.TaggedText tagOperator(System.String)
Expand Down
Loading