Skip to content

util: determine object types in C++ #4100

New issue

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

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

Already on GitHub? # to your account

Merged
merged 0 commits into from
Dec 2, 2015
Merged

util: determine object types in C++ #4100

merged 0 commits into from
Dec 2, 2015

Conversation

cjihrig
Copy link
Contributor

@cjihrig cjihrig commented Dec 1, 2015

Determine object types of regular expressions, Dates, Maps, and Sets in the C++ layer instead of depending on toString() behavior in JavaScript.

@evanlucas
Copy link
Contributor

LGTM if CI is happy

@cjihrig
Copy link
Contributor Author

cjihrig commented Dec 1, 2015

@cjihrig
Copy link
Contributor Author

cjihrig commented Dec 1, 2015

CI looks good. Some Windows failures of flakey tests. Will land tomorrow.

@targos
Copy link
Member

targos commented Dec 1, 2015

LGTM

@mscdex mscdex added the util Issues and PRs related to the built-in util module. label Dec 1, 2015
@bnoordhuis
Copy link
Member

LGTM. You could maybe DRY it a little using x-macros but that's not strictly necessary and can be done in another PR.

@cjihrig cjihrig closed this Dec 2, 2015
cjihrig added a commit to cjihrig/node that referenced this pull request Dec 2, 2015
Determine object types of regular expressions, Dates, Maps, and
Sets in the C++ layer instead of depending on toString()
behavior in JavaScript.

PR-URL: nodejs#4100
Reviewed-By: Evan Lucas <evanlucas@me.com>
Reviewed-By: Michaël Zasso <mic.besace@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
@cjihrig cjihrig merged commit 6526ae7 into nodejs:master Dec 2, 2015
@cjihrig cjihrig deleted the istype branch December 2, 2015 16:16
@jasnell
Copy link
Member

jasnell commented Dec 2, 2015

While not strictly necessary, I think marking this one for LTS would make sense.

cjihrig added a commit to cjihrig/node that referenced this pull request Dec 4, 2015
The Is* type checking functions in node_util.cc are mostly
the same boilerplate. This commit defines them using a macro.

Refs: nodejs#4100
PR-URL: nodejs#4118
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: James M Snell <jasnell@gmail.com>
cjihrig added a commit that referenced this pull request Dec 5, 2015
Determine object types of regular expressions, Dates, Maps, and
Sets in the C++ layer instead of depending on toString()
behavior in JavaScript.

PR-URL: #4100
Reviewed-By: Evan Lucas <evanlucas@me.com>
Reviewed-By: Michaël Zasso <mic.besace@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
cjihrig added a commit that referenced this pull request Dec 5, 2015
The Is* type checking functions in node_util.cc are mostly
the same boilerplate. This commit defines them using a macro.

Refs: #4100
PR-URL: #4118
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: James M Snell <jasnell@gmail.com>
@rvagg rvagg mentioned this pull request Dec 17, 2015
@MylesBorins
Copy link
Contributor

This relies on #4026 to land

cjihrig added a commit to cjihrig/node that referenced this pull request Jan 7, 2016
Determine object types of regular expressions, Dates, Maps, and
Sets in the C++ layer instead of depending on toString()
behavior in JavaScript.

PR-URL: nodejs#4100
Reviewed-By: Evan Lucas <evanlucas@me.com>
Reviewed-By: Michaël Zasso <mic.besace@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
cjihrig added a commit to cjihrig/node that referenced this pull request Jan 7, 2016
The Is* type checking functions in node_util.cc are mostly
the same boilerplate. This commit defines them using a macro.

Refs: nodejs#4100
PR-URL: nodejs#4118
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: James M Snell <jasnell@gmail.com>

Conflicts:
	src/node_util.cc
MylesBorins pushed a commit that referenced this pull request Jan 19, 2016
Determine object types of regular expressions, Dates, Maps, and
Sets in the C++ layer instead of depending on toString()
behavior in JavaScript.

PR-URL: #4100
Reviewed-By: Evan Lucas <evanlucas@me.com>
Reviewed-By: Michaël Zasso <mic.besace@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
MylesBorins pushed a commit that referenced this pull request Jan 19, 2016
The Is* type checking functions in node_util.cc are mostly
the same boilerplate. This commit defines them using a macro.

Refs: #4100
PR-URL: #4118
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: James M Snell <jasnell@gmail.com>

Conflicts:
	src/node_util.cc
@MylesBorins MylesBorins mentioned this pull request Jan 19, 2016
scovetta pushed a commit to scovetta/node that referenced this pull request Apr 2, 2016
Determine object types of regular expressions, Dates, Maps, and
Sets in the C++ layer instead of depending on toString()
behavior in JavaScript.

PR-URL: nodejs#4100
Reviewed-By: Evan Lucas <evanlucas@me.com>
Reviewed-By: Michaël Zasso <mic.besace@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
scovetta pushed a commit to scovetta/node that referenced this pull request Apr 2, 2016
The Is* type checking functions in node_util.cc are mostly
the same boilerplate. This commit defines them using a macro.

Refs: nodejs#4100
PR-URL: nodejs#4118
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: James M Snell <jasnell@gmail.com>
@MylesBorins
Copy link
Contributor

@jdalton experiencing issues with this?

@jdalton
Copy link
Member

jdalton commented Jun 2, 2016

Nope. Just cc'ing folks in (@arv and @bmeurer) that were interested.
I ❤️ the additions. They're ~2x or more faster than my vanilla JS implementations.

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
util Issues and PRs related to the built-in util module.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants