Commit Graph

295 Commits

Author SHA1 Message Date
electricface 27b1042959 fix getSymbolsForCompletion raise exception
should first check if the range `beforeTokens` is empty.
2024-04-17 15:08:29 +02:00
Jeremy Baxter 57794ca875 Fix build on BSD
Added extra version statements for OpenBSD, NetBSD and DragonflyBSD,
as these are not included in the BSD version identifier.

Also removed the line `SHELL:=/usr/bin/env bash' from the top of the
makefile because most BSDs don't include bash in the base system, and
the build doesn't need it anyway.

On OpenBSD, using -inline with dmd causes the compiler to crash
because of insufficient memory (with 8 GB), so I added a couple of
ifneq's to use -inline only if the build is not running on OpenBSD.
2023-12-23 13:02:39 +01:00
brianush1 15ea4b37b8
avoid unnecessary O(n^2) work in localuse (#768)
Co-authored-by: WebFreak001 <gh@webfreak.org>
2023-12-11 06:51:41 +01:00
WebFreak001 25139a8833 fix inlayHints ordering 2023-12-04 11:01:19 +01:00
Jan Jurzitza b79982d509
Add a new request to get inlay hints (#764)
Co-authored-by: ryuukk <ryuukk.dev@gmail.com>
2023-12-04 09:38:58 +00:00
ryuukk 5244f81367
Add support for extended output when requesting symbol's documentation (#757) 2023-11-14 13:59:08 +00:00
drpriver dc11cf704d
Fix out of bounds access in complete.d when there is no paren. (#754) 2023-10-01 01:54:09 +02:00
WebFreak001 dc1305364c make --logLevel work again, add some test options 2023-05-19 23:53:49 +02:00
WebFreak001 fa98057dcc fix code formatting, fix minor logic errors
Also changes struct and class calltips from `Something(T)` to
`Something!(T)`
2023-05-15 16:56:09 +02:00
WebFreak001 b2c60f24cd make new utilities not public 2023-05-15 16:56:09 +02:00
davu 66e410ae93 Adding finishing touch and test 2023-05-15 16:56:09 +02:00
davu 9484c44b49 Changes according to suggestions 2023-05-15 16:56:09 +02:00
Vushu 6edf6a9aee Update src/dcd/server/autocomplete/complete.d
Co-authored-by: Jan Jurzitza <gh@webfreak.org>
2023-05-15 16:56:09 +02:00
davu 371a36e9d5 adding bang completion for template func, struct, class 2023-05-15 16:56:09 +02:00
davu 218d047760 PR changes 2023-04-01 20:11:21 +02:00
davu 9e4c70ce15 added ufcs completion for string and string literal 2023-04-01 20:11:21 +02:00
Jan Jurzitza 19e019a57b
add PR comments that show build statistics, speed & RAM usage (#735) 2023-03-22 03:17:01 +01:00
WebFreak001 22f65d51fe Resolve ptr, array & aa in types, add typeOf field
typeOf field is new tab-delimited field in dcd-client output, so you no
longer need to manually guess types / parse code. Calltips still yield
the actual written type, but in case of "auto", the typeOf column may
contain more useful info.
2023-03-16 16:45:25 +01:00
WebFreak001 690d6254db Properly implement pointer types
- special DCD pointer symbols are actually inserted now
- they are implicitly dereferenced (max 1 deref) for member access
- index accessing them yields proper types (one pointer removed)
- they return standard type properties on pointer pointers
2023-03-16 16:45:25 +01:00
davu 810b77fe06 PR changes round 1 2023-03-16 16:08:23 +01:00
davu 0c22a2bf7e refixing ufcs calltips 2023-03-16 16:08:23 +01:00
davu e6b94622f0 dsymbol deduces ufcs 2023-03-16 16:08:23 +01:00
davu c336004ed8 moving ufcs logic to dsymbol 2023-03-08 15:56:43 +01:00
davu 92f2d73731 Added max recusion guard depth 2023-02-25 21:29:39 +01:00
davu 434a838d20 Updated for PR 2023-02-25 21:29:39 +01:00
davu de001983c2 Adding alias this to symbol and match algorithm 2023-02-25 21:29:39 +01:00
davu 086fc5bd73 added integer promotion, implicit upcast 2023-02-21 21:37:00 +01:00
WebFreak001 39baba327e fixed shared logger usage 2022-12-07 22:19:47 +01:00
WebFreak001 2457f70b8e use `isCallableWithArg` in paren completion
For consistency and to allow future changes to type matching (e.g.
implicit type conversion)
2022-12-07 21:18:52 +01:00
davu 4fd12cf485 adding null check for firstSymbol 2022-12-07 19:39:23 +01:00
davu 6c3a4d3797 Added paren completion for UFCS 2022-12-07 19:39:23 +01:00
WebFreak001 15ae4e5f00
change `body` to `do` in util.d
Fixes deprecation, brings file in alignment with rest of code
2022-11-14 13:02:20 +01:00
WebFreak001 11628dd931 make sure all request types await responses
On OSX ARM accepting sockets would fail because the sender side
(dcd-client) was generating, sending the whole packet and closing the
socket faster than phobos was with accepting the socket, causing an
exception in setOption inside socket.accept, which is now commented in
the code as well.
2022-11-13 03:20:15 +01:00
davu 29dba75ce9 UFCS using new completion kind F 2022-10-18 23:31:20 +02:00
davu 642a0e0a14 minor adjustments 2022-10-18 23:31:20 +02:00
davu 52c0298c3a UFSC implementation using functionParameters instead and update tests for UFSC 2022-10-18 23:31:20 +02:00
davu 951870e06f hide private functions 2022-10-18 23:31:20 +02:00
davu 98d09a2fe5 Removing unsused cases 2022-10-18 23:31:20 +02:00
davu 9e60ab8b2c Adding Simple UFCS
Added UFCS navigation

Adding test cases for ufcs

With ufcs update expected test

Updated UFCS with templating support

Removing template function.
2022-10-18 23:31:20 +02:00
WebFreak001 5c529f300d use GC nearly everywhere 2022-10-13 18:18:53 +02:00
WebFreak001 4594a63634 replace stdx-allocator with std.experimental 2022-10-13 18:18:53 +02:00
Per Nordlöw e343e73d33 Use more adaptive time formatting because many requests finish in 0 milliseconds 2021-10-11 09:40:27 +03:00
Per Nordlöw 5aba1b1b54 Use scope instead of std.typecons.scoped 2021-10-10 19:05:41 +02:00
Jan Jurzitza 46ea058cfb
fix --localUse off-by-one error (#640) 2021-07-14 18:41:41 +00:00
Hackerpilot 29ffe9d731 Add the ignoreConfig option to the --help output of dcd-server. 2020-07-23 05:18:56 -07:00
WebFreak001 8c53181ffd add RequestKind.requiresSourceCode, fix #617
this is a or-combined mask of the request kinds which operate on
`request.sourceCode`. Before if a client sent a request without source
code (with empty source) to one of these commands, the server would
crash with an assertion failure, now the server returns an empty
response.
2020-06-19 22:16:46 +02:00
Hiroki Noda 443b9778ce Remove unused lines 2020-05-05 04:45:19 +09:00
Jan Jurzitza 3e2c0c6fbf Move dcd.common into separate subpackage
This allows external projects to depend on dcd:common, which is needed
to embed DCD clients
2020-04-29 14:26:24 +02:00
dkorpel ab2b9efa19
Add missing version identifiers 2019-09-10 12:26:55 +02:00
WebFreak001 6a195ea86a make private symbols not show up in auto complete 2019-05-12 00:44:15 +02:00