All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jaydeep Das <jaydeepjd.8914@gmail.com>
To: Johannes Sixt <j6t@kdbg.org>
Cc: git@vger.kernel.org
Subject: Re: [PATCH] userdiff: add builtin driver for kotlin language
Date: Thu, 3 Mar 2022 17:11:37 +0530	[thread overview]
Message-ID: <76d46b15-f6c0-b8da-87e8-a992047b9a6a@gmail.com> (raw)
In-Reply-To: <fe93dfb2-7c0d-11cb-09a0-9ccc7fcc2507@kdbg.org>

How about modifying the number match regex to:

`[0-9._]+([Ee][-+]?[0-9]+)?[fFlLuU]*[^a-zA-Z]` ?

The `[^a-zA-Z]` in the end would make sure to not match
the `.F` in `X.Find`.

Additionally, we can add another regex for matching just
the method calls:

`[.][a-zA-Z()0-9]+`

Both of these changes would make word_regex match 2 tokens in
X.Find() : X and .Find() (Here X can be any valid identifier name)


> How many tokens will the word-regex find in the expression X.e+200UL?
> .e+200UL is a single token. > It's most easily fixed by requiring a digit before the fullstop. But if
> floatingpoint numbers can begin with a fullstop, then we need a second
> expression that requires a digit after a leading fullstop.

But that syntax would be wrong. I tried making a condition like you said,
but it always ended up breaking something else(like breaking 2.e+200UL into 2, .e, + and 200UL)

Also, I realized I did a bit of mistake in the identifier regex.
Both _abc and __abc are valid identifiers. _3432, __3232 are valid identifiers too.(not numbers)

The previous regex matched only one `_`, so in the next patch,
I plan to implement the following regex:

Identifier: `([_]*[a-zA-Z]|[_]+[0-9]+)[a-zA-Z0-9_]*`

Numbers: `[0-9_.]+([Ee][-+]?[0-9]+)?[fFlLuU]*[^a-zA-Z]`
(It makes sure that in X.Find, .F is not matched )

Additionally, An extra regex for method calls:

`[.][a-zA-Z()0-9]+`

What do you think?


Thanks,
Jaydeep.


  reply	other threads:[~2022-03-03 11:41 UTC|newest]

Thread overview: 48+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-03-01  7:02 [GSoC][PATCH] userdiff: Add diff driver for Kotlin lang and tests Jaydeep P Das
2022-03-01  7:02 ` [PATCH] " Jaydeep P Das
2022-03-01  9:32   ` Junio C Hamano
2022-03-01  9:37   ` Ævar Arnfjörð Bjarmason
2022-03-01 10:27     ` jaydeepjd.8914
2022-03-01 15:54 ` [PATCH] userdiff: add builtin diff driver for Kotlin language Jaydeep P Das
2022-03-01 17:17   ` Junio C Hamano
2022-03-01 18:09     ` jaydeepjd.8914
2022-03-01 19:59       ` Johannes Sixt
2022-03-01 19:47   ` Johannes Sixt
2022-03-02  6:45 ` [GSoC][PATCHv2] userdiff: add builtin driver for kotlin language Jaydeep P Das
2022-03-02  6:45   ` [PATCH] " Jaydeep P Das
2022-03-02  8:00     ` Johannes Sixt
2022-03-02  9:09       ` jaydeepjd.8914
2022-03-02  9:28         ` jaydeepjd.8914
2022-03-02 14:26 ` [GSoC][PATCHv3] " Jaydeep P Das
2022-03-02 14:26   ` [PATCH] " Jaydeep P Das
2022-03-02 20:18     ` Johannes Sixt
2022-03-03 11:41       ` Jaydeep Das [this message]
2022-03-03 16:54         ` Ævar Arnfjörð Bjarmason
2022-03-03 19:47         ` Junio C Hamano
2022-03-03 20:04         ` Johannes Sixt
2022-03-04 12:28           ` Jaydeep Das
2022-03-04 13:59             ` Johannes Sixt
2022-03-03 18:15 ` [PATCH] userdiff: add builtin diff driver for Kotlin language Jaydeep P Das
2022-03-04  2:44   ` Junio C Hamano
2022-03-04  5:16     ` jaydeepjd.8914
2022-03-04  7:25     ` Johannes Sixt
2022-03-05  9:40 ` [PATCH v4] " Jaydeep P Das
2022-03-05 14:17   ` Johannes Sixt
2022-03-05 19:18     ` jaydeepjd.8914
2022-03-05 22:17       ` Johannes Sixt
2022-03-06 11:15 ` [PATCH v5] userdiff: add builtin diff driver for kotlin language Jaydeep P Das
2022-03-07  7:07   ` Johannes Sixt
2022-03-08 16:54     ` jaydeepjd.8914
2022-03-08 18:32       ` Johannes Sixt
2022-03-10 10:52         ` jaydeepjd.8914
2022-03-10 16:29         ` Jaydeep Das
2022-03-10 19:11           ` Johannes Sixt
2022-03-11  7:27 ` [PATCH v6] " Jaydeep P Das
2022-03-11 20:07   ` Johannes Sixt
2022-03-12  4:36     ` jaydeepjd.8914
2022-03-12  8:36       ` Johannes Sixt
2022-03-12  4:48 ` [PATCH v7] " Jaydeep P Das
2022-03-12  8:59   ` Johannes Sixt
2022-03-13 17:02     ` jaydeepjd.8914
2022-03-13 17:09       ` jaydeepjd.8914
2022-03-13 21:36       ` Johannes Sixt

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=76d46b15-f6c0-b8da-87e8-a992047b9a6a@gmail.com \
    --to=jaydeepjd.8914@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=j6t@kdbg.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.