René's URL Explorer Experiment


Title: Fix NullPointerException in `MethodsFunctionsChecker` by rcosta358 · Pull Request #150 · liquid-java/liquidjava · GitHub

Open Graph Title: Fix NullPointerException in `MethodsFunctionsChecker` by rcosta358 · Pull Request #150 · liquid-java/liquidjava

X Title: Fix NullPointerException in `MethodsFunctionsChecker` by rcosta358 · Pull Request #150 · liquid-java/liquidjava

Description: This PR fixes an issue where when a class had multiple methods and one method would throw an error related to a parametric refinement (e.g., InvalidRefinementError), the exception would abort the visitation of sibling methods during the first pass. Then, in second pass, when trying to get the function that should have been added to the context in the first pass, it is not there, and would throw a NullPointerException. This was because there were missing try-catch blocks in the getMethodRefinements and getConstructorRefinements (in this case, the first one). Example Reproduction public class SimpleTest { void testParam(@Refinement("y + 1") int y) {} int test() { return -1; } } // Cannot invoke "liquidjava.processor.context.RefinedFunction.getArguments()" because "fi" is null

Open Graph Description: This PR fixes an issue where when a class had multiple methods and one method would throw an error related to a parametric refinement (e.g., InvalidRefinementError), the exception would abort the v...

X Description: This PR fixes an issue where when a class had multiple methods and one method would throw an error related to a parametric refinement (e.g., InvalidRefinementError), the exception would abort the v...

Opengraph URL: https://github.com/liquid-java/liquidjava/pull/150

X: @github

direct link

Domain: github.com

route-pattern/:user_id/:repository/pull/:id/files(.:format)
route-controllerpull_requests
route-actionfiles
fetch-noncev2:2b0c1aa2-ecf6-f778-d963-e34e1b4ddcec
current-catalog-service-hashae870bc5e265a340912cde392f23dad3671a0a881730ffdadd82f2f57d81641b
request-idAD8E:19A9CE:677B49:93610E:6A631367
html-safe-nonce01c5709cc3570c1a633e894790f0842c5f858adcf67220c70b0a3d83da66dee2
visitor-payloadeyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJBRDhFOjE5QTlDRTo2NzdCNDk6OTM2MTBFOjZBNjMxMzY3IiwidmlzaXRvcl9pZCI6IjM2MDg2NDQ0Njc3OTk1NDAyMyIsInJlZ2lvbl9lZGdlIjoiaWFkIiwicmVnaW9uX3JlbmRlciI6ImlhZCJ9
visitor-hmac9f963f59dab412bd09626cb140f813cd4c1a5eb8f8cd4072fa813aa16835e43a
hovercard-subject-tagpull_request:3284818240
github-keyboard-shortcutsrepository,pull-request-list,pull-request-conversation,pull-request-files-changed,copilot
google-site-verificationApib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I
octolytics-urlhttps://collector.github.com/github/collect
analytics-location///pull_requests/show/files
fb:app_id1401488693436528
apple-itunes-appapp-id=1477376905, app-argument=https://github.com/liquid-java/liquidjava/pull/150/files
twitter:imagehttps://avatars.githubusercontent.com/u/76919550?s=400&v=4
twitter:cardsummary_large_image
og:imagehttps://avatars.githubusercontent.com/u/76919550?s=400&v=4
og:image:altThis PR fixes an issue where when a class had multiple methods and one method would throw an error related to a parametric refinement (e.g., InvalidRefinementError), the exception would abort the v...
og:site_nameGitHub
og:typeobject
hostnamegithub.com
expected-hostnamegithub.com
None1a6c056e02f174fffc096c521ec0ff6fb83e40a2ec8cb8875466ec1524872dd6
turbo-cache-controlno-preview
diff-viewunified
go-importgithub.com/liquid-java/liquidjava git https://github.com/liquid-java/liquidjava.git
octolytics-dimension-user_id242831829
octolytics-dimension-user_loginliquid-java
octolytics-dimension-repository_id258218369
octolytics-dimension-repository_nwoliquid-java/liquidjava
octolytics-dimension-repository_publictrue
octolytics-dimension-repository_is_forkfalse
octolytics-dimension-repository_network_root_id258218369
octolytics-dimension-repository_network_root_nwoliquid-java/liquidjava
turbo-body-classeslogged-out env-production page-responsive full-width
disable-turbotrue
browser-stats-urlhttps://api.github.com/_private/browser/stats
browser-errors-urlhttps://api.github.com/_private/browser/errors
release6a93e25585f487ddff9e3996c06d5b869d6e1828
ui-targetfull
theme-color#1e2327
color-schemelight dark

Links:

Skip to contenthttps://github.com/liquid-java/liquidjava/pull/150/files#start-of-content
https://github.com/
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fliquid-java%2Fliquidjava%2Fpull%2F150%2Ffiles
GitHub CopilotWrite better code with AIhttps://github.com/features/copilot
GitHub Copilot appDirect agents from issue to mergehttps://github.com/features/ai/github-app
MCP RegistryNewIntegrate external toolshttps://github.com/mcp
ActionsAutomate any workflowhttps://github.com/features/actions
CodespacesInstant dev environmentshttps://github.com/features/codespaces
IssuesPlan and track workhttps://github.com/features/issues
Code ReviewManage code changeshttps://github.com/features/code-review
Code QualityEnforce quality at mergehttps://github.com/features/code-quality
GitHub Advanced SecurityFind and fix vulnerabilitieshttps://github.com/security/advanced-security
Code securitySecure your code as you buildhttps://github.com/security/advanced-security/code-security
Secret protectionStop leaks before they starthttps://github.com/security/advanced-security/secret-protection
Why GitHubhttps://github.com/why-github
Documentationhttps://docs.github.com
Bloghttps://github.blog
Changeloghttps://github.blog/changelog
Marketplacehttps://github.com/marketplace
View all featureshttps://github.com/features
Enterpriseshttps://github.com/enterprise
Small and medium teamshttps://github.com/team
Startupshttps://github.com/enterprise/startups
Nonprofitshttps://github.com/solutions/industry/nonprofits
App Modernizationhttps://github.com/solutions/use-case/app-modernization
DevSecOpshttps://github.com/solutions/use-case/devsecops
DevOpshttps://github.com/solutions/use-case/devops
CI/CDhttps://github.com/solutions/use-case/ci-cd
View all use caseshttps://github.com/solutions/use-case
Healthcarehttps://github.com/solutions/industry/healthcare
Financial serviceshttps://github.com/solutions/industry/financial-services
Manufacturinghttps://github.com/solutions/industry/manufacturing
Governmenthttps://github.com/solutions/industry/government
View all industrieshttps://github.com/solutions/industry
View all solutionshttps://github.com/solutions
AIhttps://github.com/resources/articles?topic=ai
Software Developmenthttps://github.com/resources/articles?topic=software-development
DevOpshttps://github.com/resources/articles?topic=devops
Securityhttps://github.com/resources/articles?topic=security
View all topicshttps://github.com/resources/articles
Customer storieshttps://github.com/customer-stories
Events & webinarshttps://github.com/resources/events
Ebooks & reportshttps://github.com/resources/whitepapers
Business insightshttps://github.com/solutions/executive-insights
GitHub Skillshttps://skills.github.com
Documentationhttps://docs.github.com
Customer supporthttps://support.github.com
Community forumhttps://github.com/orgs/community/discussions
Trust centerhttps://github.com/trust-center
Partnershttps://github.com/partners
View all resourceshttps://github.com/resources
GitHub SponsorsFund open source developershttps://github.com/open-source/sponsors
Security Labhttps://securitylab.github.com
Maintainer Communityhttps://maintainers.github.com
Acceleratorhttps://github.com/open-source/accelerator
GitHub Starshttps://stars.github.com
Archive Programhttps://archiveprogram.github.com
Topicshttps://github.com/topics
Trendinghttps://github.com/trending
Collectionshttps://github.com/collections
Enterprise platformAI-powered developer platformhttps://github.com/enterprise
GitHub Advanced SecurityEnterprise-grade security featureshttps://github.com/security/advanced-security
Copilot for BusinessEnterprise-grade AI featureshttps://github.com/features/copilot/copilot-business
Premium SupportEnterprise-grade 24/7 supporthttps://github.com/enterprise/premium-support
Pricinghttps://github.com/pricing
Search syntax tipshttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
documentationhttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fliquid-java%2Fliquidjava%2Fpull%2F150%2Ffiles
Sign up https://github.com/signup?ref_cta=Sign+up&ref_loc=header+logged+out&ref_page=%2F%3Cuser-name%3E%2F%3Crepo-name%3E%2Fpull_requests%2Fshow%2Ffiles&source=header-repo&source_repo=liquid-java%2Fliquidjava
Reloadhttps://github.com/liquid-java/liquidjava/pull/150/files
Reloadhttps://github.com/liquid-java/liquidjava/pull/150/files
Reloadhttps://github.com/liquid-java/liquidjava/pull/150/files
Please reload this pagehttps://github.com/liquid-java/liquidjava/pull/150/files
liquid-java https://github.com/liquid-java
liquidjavahttps://github.com/liquid-java/liquidjava
Notifications https://github.com/login?return_to=%2Fliquid-java%2Fliquidjava
Fork 36 https://github.com/login?return_to=%2Fliquid-java%2Fliquidjava
Star 65 https://github.com/login?return_to=%2Fliquid-java%2Fliquidjava
Code https://github.com/liquid-java/liquidjava
Issues 20 https://github.com/liquid-java/liquidjava/issues
Pull requests 8 https://github.com/liquid-java/liquidjava/pulls
Actions https://github.com/liquid-java/liquidjava/actions
Projects https://github.com/liquid-java/liquidjava/projects
Security and quality 0 https://github.com/liquid-java/liquidjava/security
Insights https://github.com/liquid-java/liquidjava/pulse
Code https://github.com/liquid-java/liquidjava
Issues https://github.com/liquid-java/liquidjava/issues
Pull requests https://github.com/liquid-java/liquidjava/pulls
Actions https://github.com/liquid-java/liquidjava/actions
Projects https://github.com/liquid-java/liquidjava/projects
Security and quality https://github.com/liquid-java/liquidjava/security
Insights https://github.com/liquid-java/liquidjava/pulse
Sign up for GitHub https://github.com/signup?return_to=%2Fliquid-java%2Fliquidjava%2Fissues%2Fnew%2Fchoose
terms of servicehttps://docs.github.com/terms
privacy statementhttps://docs.github.com/privacy
Sign inhttps://github.com/login?return_to=%2Fliquid-java%2Fliquidjava%2Fissues%2Fnew%2Fchoose
rcosta358https://github.com/rcosta358
mainhttps://github.com/liquid-java/liquidjava/tree/main
fix-npehttps://github.com/liquid-java/liquidjava/tree/fix-npe
Conversation 3 https://github.com/liquid-java/liquidjava/pull/150
Commits 2 https://github.com/liquid-java/liquidjava/pull/150/commits
Checks 1 https://github.com/liquid-java/liquidjava/pull/150/checks
Files changed https://github.com/liquid-java/liquidjava/pull/150/files
Please reload this pagehttps://github.com/liquid-java/liquidjava/pull/150/files
Fix NullPointerException in MethodsFunctionsChecker https://github.com/liquid-java/liquidjava/pull/150/files#top
Show all changes 2 commits https://github.com/liquid-java/liquidjava/pull/150/files
6ac6ff7 Fix NullPointerException rcosta358 Feb 14, 2026 https://github.com/liquid-java/liquidjava/pull/150/commits/6ac6ff768e44437c4131d2768e477ef9814ca99c
cb59601 Add Tests rcosta358 Feb 14, 2026 https://github.com/liquid-java/liquidjava/pull/150/commits/cb59601c3312d5b36c9f29c2d9c395b316eb6372
Clear filters https://github.com/liquid-java/liquidjava/pull/150/files
Please reload this pagehttps://github.com/liquid-java/liquidjava/pull/150/files
Please reload this pagehttps://github.com/liquid-java/liquidjava/pull/150/files
ErrorInvalidRefinement.java https://github.com/liquid-java/liquidjava/pull/150/files#diff-dd333a4d32f1f92b7a6196f1336c737699e4f4be4e92a6ab7019e5c869b403c2
ErrorInvalidRefinementParameter.java https://github.com/liquid-java/liquidjava/pull/150/files#diff-e8adbff48ae19d8fac10431c4dfbcbbce6d21195391070ff729888db64072220
ErrorInvalidRefinementReturn.java https://github.com/liquid-java/liquidjava/pull/150/files#diff-680425168a27b88b5fbb51709b752c83c7157e82644d2e9520938986eda83c83
InvalidRefinementError.java https://github.com/liquid-java/liquidjava/pull/150/files#diff-44cff21e0a71c4aa94f82a0bcd2fb1c7dc905adf31715d2524d61f6219d93da1
MethodsFirstChecker.java https://github.com/liquid-java/liquidjava/pull/150/files#diff-2e398342a32f4bdf962fab8210aaaeb0ebde56bb89f8486c21d6de78470ced91
MethodsFunctionsChecker.java https://github.com/liquid-java/liquidjava/pull/150/files#diff-1a9f2ce288d1e34b10a89fd4ed535afb5683448fe9075d544038320c07341342
liquidjava-example/src/main/java/testSuite/ErrorInvalidRefinement.javahttps://github.com/liquid-java/liquidjava/pull/150/files#diff-dd333a4d32f1f92b7a6196f1336c737699e4f4be4e92a6ab7019e5c869b403c2
View file https://github.com/liquid-java/liquidjava/blob/cb59601c3312d5b36c9f29c2d9c395b316eb6372/liquidjava-example/src/main/java/testSuite/ErrorInvalidRefinement.java
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/liquid-java/liquidjava/pull/150/{{ revealButtonHref }}
liquidjava-example/src/main/java/testSuite/ErrorInvalidRefinementParameter.javahttps://github.com/liquid-java/liquidjava/pull/150/files#diff-e8adbff48ae19d8fac10431c4dfbcbbce6d21195391070ff729888db64072220
View file https://github.com/liquid-java/liquidjava/blob/cb59601c3312d5b36c9f29c2d9c395b316eb6372/liquidjava-example/src/main/java/testSuite/ErrorInvalidRefinementParameter.java
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/liquid-java/liquidjava/pull/150/{{ revealButtonHref }}
liquidjava-example/src/main/java/testSuite/ErrorInvalidRefinementReturn.javahttps://github.com/liquid-java/liquidjava/pull/150/files#diff-680425168a27b88b5fbb51709b752c83c7157e82644d2e9520938986eda83c83
View file https://github.com/liquid-java/liquidjava/blob/cb59601c3312d5b36c9f29c2d9c395b316eb6372/liquidjava-example/src/main/java/testSuite/ErrorInvalidRefinementReturn.java
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/liquid-java/liquidjava/pull/150/{{ revealButtonHref }}
liquidjava-verifier/src/main/java/liquidjava/diagnostics/errors/InvalidRefinementError.javahttps://github.com/liquid-java/liquidjava/pull/150/files#diff-44cff21e0a71c4aa94f82a0bcd2fb1c7dc905adf31715d2524d61f6219d93da1
View file https://github.com/liquid-java/liquidjava/blob/cb59601c3312d5b36c9f29c2d9c395b316eb6372/liquidjava-verifier/src/main/java/liquidjava/diagnostics/errors/InvalidRefinementError.java
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/liquid-java/liquidjava/pull/150/{{ revealButtonHref }}
https://github.com/liquid-java/liquidjava/pull/150/files#diff-44cff21e0a71c4aa94f82a0bcd2fb1c7dc905adf31715d2524d61f6219d93da1
https://github.com/liquid-java/liquidjava/pull/150/files#diff-44cff21e0a71c4aa94f82a0bcd2fb1c7dc905adf31715d2524d61f6219d93da1
...a-verifier/src/main/java/liquidjava/processor/refinement_checker/MethodsFirstChecker.javahttps://github.com/liquid-java/liquidjava/pull/150/files#diff-2e398342a32f4bdf962fab8210aaaeb0ebde56bb89f8486c21d6de78470ced91
View file https://github.com/liquid-java/liquidjava/blob/cb59601c3312d5b36c9f29c2d9c395b316eb6372/liquidjava-verifier/src/main/java/liquidjava/processor/refinement_checker/MethodsFirstChecker.java
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/liquid-java/liquidjava/pull/150/{{ revealButtonHref }}
https://github.com/liquid-java/liquidjava/pull/150/files#diff-2e398342a32f4bdf962fab8210aaaeb0ebde56bb89f8486c21d6de78470ced91
...ava/liquidjava/processor/refinement_checker/general_checkers/MethodsFunctionsChecker.javahttps://github.com/liquid-java/liquidjava/pull/150/files#diff-1a9f2ce288d1e34b10a89fd4ed535afb5683448fe9075d544038320c07341342
View file https://github.com/liquid-java/liquidjava/blob/cb59601c3312d5b36c9f29c2d9c395b316eb6372/liquidjava-verifier/src/main/java/liquidjava/processor/refinement_checker/general_checkers/MethodsFunctionsChecker.java
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/liquid-java/liquidjava/pull/150/{{ revealButtonHref }}
https://github.com/liquid-java/liquidjava/pull/150/files#diff-1a9f2ce288d1e34b10a89fd4ed535afb5683448fe9075d544038320c07341342
rcosta358https://github.com/rcosta358
Feb 14, 2026https://github.com/liquid-java/liquidjava/pull/150/files#r2807640348
Learn morehttps://docs.github.com/articles/managing-disruptive-comments/#hiding-a-comment
Please reload this pagehttps://github.com/liquid-java/liquidjava/pull/150/files
https://github.com/liquid-java/liquidjava/pull/150/files#diff-1a9f2ce288d1e34b10a89fd4ed535afb5683448fe9075d544038320c07341342
https://github.com/liquid-java/liquidjava/pull/150/files#diff-1a9f2ce288d1e34b10a89fd4ed535afb5683448fe9075d544038320c07341342
rcosta358https://github.com/rcosta358
Feb 14, 2026https://github.com/liquid-java/liquidjava/pull/150/files#r2807646912
Learn morehttps://docs.github.com/articles/managing-disruptive-comments/#hiding-a-comment
Please reload this pagehttps://github.com/liquid-java/liquidjava/pull/150/files
https://github.com/liquid-java/liquidjava/pull/150/files#diff-1a9f2ce288d1e34b10a89fd4ed535afb5683448fe9075d544038320c07341342
https://github.com
Termshttps://docs.github.com/site-policy/github-terms/github-terms-of-service
Privacyhttps://docs.github.com/site-policy/privacy-policies/github-privacy-statement
Securityhttps://github.com/security
Statushttps://www.githubstatus.com/
Communityhttps://github.community/
Docshttps://docs.github.com/
Contacthttps://support.github.com?tags=dotcom-footer

Viewport: width=device-width


URLs of crawlers that visited me.