(node *ast.Node)
| 857 | } |
| 858 | |
| 859 | func (c *Checker) GetConstantValue(node *ast.Node) any { |
| 860 | if node.Kind == ast.KindEnumMember { |
| 861 | return c.getEnumMemberValue(node).Value |
| 862 | } |
| 863 | |
| 864 | if c.symbolNodeLinks.Get(node).resolvedSymbol == nil { |
| 865 | c.checkExpressionCached(node) // ensure cached resolved symbol is set |
| 866 | } |
| 867 | symbol := c.symbolNodeLinks.Get(node).resolvedSymbol |
| 868 | if symbol == nil && ast.IsEntityNameExpression(node) { |
| 869 | symbol = c.resolveEntityName( |
| 870 | node, |
| 871 | ast.SymbolFlagsValue, |
| 872 | true, /*ignoreErrors*/ |
| 873 | false, /*dontResolveAlias*/ |
| 874 | nil, /*location*/ |
| 875 | ) |
| 876 | } |
| 877 | if symbol != nil && symbol.Flags&ast.SymbolFlagsEnumMember != 0 { |
| 878 | // inline property\index accesses only for const enums |
| 879 | member := symbol.ValueDeclaration |
| 880 | if ast.IsEnumConst(member.Parent) { |
| 881 | return c.getEnumMemberValue(member).Value |
| 882 | } |
| 883 | } |
| 884 | |
| 885 | return nil |
| 886 | } |
| 887 | |
| 888 | func (c *Checker) getResolvedSignatureWorker(node *ast.Node, checkMode CheckMode, argumentCount int) (*Signature, []*Signature) { |
| 889 | parsedNode := printer.NewEmitContext().ParseNode(node) |
nothing calls this directly
no test coverage detected