* fix glyph

* fix glyph

* fix glyph
This commit is contained in:
Don Syme 2016-11-29 18:34:01 +00:00 коммит произвёл GitHub
Родитель 9b05cf6cc3
Коммит 3851f9d72c
2 изменённых файлов: 8 добавлений и 9 удалений

Просмотреть файл

@ -24,8 +24,8 @@ fi)
#TODO: work out how to avoid the need for this
chmod u+x packages/FSharp.Compiler.Tools.4.0.1.19/tools/fsi.exe
chmod u+x packages/FsLexYacc.7.0.1/build/fslex.exe
chmod u+x packages/FsLexYacc.7.0.1/build/fsyacc.exe
chmod u+x packages/FsLexYacc.7.0.3/build/fslex.exe
chmod u+x packages/FsLexYacc.7.0.3/build/fsyacc.exe
# The FSharp.Compiler.Tools package doesn't work correctly unless a proper install of F# has been done on the machine
sudo apt-get -y install fsharp

Просмотреть файл

@ -1201,17 +1201,13 @@ module internal ItemDescriptionsImpl =
if isAppTy denv.g typ then
let tcref = tcrefOfAppTy denv.g typ
tcref.TypeReprInfo |> reprToGlyph
elif isAnyTupleTy denv.g typ then GlyphMajor.Struct
elif isStructTupleTy denv.g typ then GlyphMajor.Struct
elif isRefTupleTy denv.g typ then GlyphMajor.Class
elif isFunction denv.g typ then GlyphMajor.Delegate
elif isTyparTy denv.g typ then GlyphMajor.Struct
else GlyphMajor.Typedef
/// Find the glyph for the given value representation.
let ValueToGlyph typ =
if isFunction denv.g typ then GlyphMajor.Method
else GlyphMajor.Constant
/// Find the major glyph of the given named item.
let namedItemToMajorGlyph item =
// This may explore assemblies that are not in the reference set,
@ -1219,7 +1215,10 @@ module internal ItemDescriptionsImpl =
// In this case just use GlyphMajor.Class.
protectAssemblyExploration GlyphMajor.Class (fun () ->
match item with
| Item.Value(vref) | Item.CustomBuilder (_,vref) -> ValueToGlyph(vref.Type)
| Item.Value(vref) | Item.CustomBuilder (_,vref) ->
if isFunction denv.g vref.Type then GlyphMajor.Method
elif vref.LiteralValue.IsSome then GlyphMajor.Constant
else GlyphMajor.Variable
| Item.Types(_,typ::_) -> typeToGlyph (stripTyEqns denv.g typ)
| Item.UnionCase _
| Item.ActivePatternCase _ -> GlyphMajor.EnumMember