Symbol reference — JS bindings ↔ geos_c
GENERATED by
scripts/gen-symbol-reference.ts(bun run docs:reference) fromsrc/symbols.ts— do not edit by hand; the freshness test fails on drift. Binding rules (D15/F6/F10):const char*ARGS →cstring; GEOS-owned string returns →ptr+CStringview +GEOSFree_r(acstringreturn leaks); char returns mask& 0xff; INT returns (orientPolygons, minimumClearance, grid fractions, strtree nearest) are NOT masked; failedptrreturns are JSnull, never0.
Shim exports (34)
| symbol | args | returns | notes |
|---|---|---|---|
geos_shim_init |
ptr | context lifecycle (D3/D4) | |
geos_shim_context |
ptr | ptr | context lifecycle (D3/D4) |
geos_shim_finish |
ptr | void | context lifecycle (D3/D4) |
geos_shim_last_error |
ptr | cstring | thread-local capture; cstring return — no free (F10 rule 2) |
geos_shim_last_notice |
ptr | cstring | thread-local capture; cstring return — no free (F10 rule 2) |
geos_shim_build_linestring |
ptr, ptr, u32, i32, i32 | ptr | batch/loop builders; GEOS consumes inputs even on failure |
geos_shim_build_polygon |
ptr, ptr, ptr, u32, i32, i32 | ptr | batch/loop builders; GEOS consumes inputs even on failure |
geos_shim_build_collection |
ptr, i32, ptr, u32 | ptr | batch/loop builders; GEOS consumes inputs even on failure |
geos_shim_destroy_many |
ptr, ptr, u32 | void | arena teardown: frees geoms AND the shim-owned pointer array |
geos_shim_interrupt_request |
void | atomic GLOBAL flag (D19) | |
geos_shim_interrupt_reset |
void | atomic GLOBAL flag (D19) | |
geos_shim_clone_many |
ptr, ptr, u32, ptr | i32 | owned clones (D21) |
geos_shim_clone_collect |
ptr, ptr, u32 | ptr | owned clones (D21) |
geos_shim_clone_members |
ptr, ptr, ptr, u32 | i32 | owned clones (D21) |
geos_shim_union_all |
ptr, ptr, u32, i32 | ptr | strategy dispatch (D20) |
geos_shim_coverage_union |
ptr, ptr, u32 | ptr | strategy dispatch (D20) |
geos_shim_prepared_pred_all |
ptr, ptr, i32, ptr, u32, ptr | i32 | batch masks, 0 ok / 1 exception / 2 interrupted (D18) |
geos_shim_prepared_relate_pattern_all |
ptr, ptr, ptr, u32, cstring, ptr | i32 | |
geos_shim_strtree_query |
ptr, ptr, ptr, ptr, u32 | i32 | 1-based id items (D16); nearest via bound id→geom table |
geos_shim_strtree_bind_geoms |
ptr, ptr, u32 | ptr | 1-based id items (D16); nearest via bound id→geom table |
geos_shim_strtree_table_free |
ptr | void | 1-based id items (D16); nearest via bound id→geom table |
geos_shim_strtree_nearest |
ptr, ptr, ptr, ptr | i32 | 1-based id items (D16); nearest via bound id→geom table |
geos_shim_overlay_all |
ptr, i32, ptr, ptr, u32, f64, ptr | i32 | 8-op id table (D22); grid for *_PREC |
geos_shim_pred_all |
ptr, i32, ptr, ptr, u32, ptr | i32 | |
geos_shim_unary_all |
ptr, i32, ptr, u32, f64, f64, f64, f64, ptr | i32 | 9-op id table (D27); d1..d4 carry scalar params |
geos_shim_binary_all |
ptr, i32, ptr, ptr, u32, f64, ptr | i32 | 2-op id table (D27); d1 = snap tolerance |
geos_shim_measure_all |
ptr, i32, ptr, ptr, u32, ptr | i32 | 5-op id table (D22) |
geos_shim_buffer_all |
ptr, ptr, f64, ptr, u32, ptr | i32 | caller-built params (D22) |
geos_shim_read_wkb_many |
ptr, ptr, ptr, ptr, u32, ptr | i32 | byte offsets (the one byte-offset family); u32 caps at 4 GB |
geos_shim_num_points_many |
ptr, ptr, u32, ptr | i32 | type-generic vertex counts (D23 chunking) |
geos_shim_heap_bytes |
ptr, ptr, u32, ptr | i32 | D24 accounting |
geos_shim_build_polygonal_many |
ptr, ptr, ptr, u32, ptr, u32, i32, i32, ptr | i32 | batch/loop builders; GEOS consumes inputs even on failure |
geos_shim_build_linestrings_many |
ptr, ptr, ptr, u32, i32, i32, ptr | i32 | batch/loop builders; GEOS consumes inputs even on failure |
geos_shim_strtree_query_prepared |
ptr, ptr, ptr, ptr, i32, ptr, ptr, u32 | i32 | 1-based id items (D16); nearest via bound id→geom table |
geos_c bindings (162)
| symbol | args | returns | notes |
|---|---|---|---|
GEOSversion |
cstring | ||
GEOSWKTReader_create_r |
ptr | ptr | |
GEOSWKTReader_destroy_r |
ptr, ptr | void | |
GEOSWKTReader_read_r |
ptr, ptr, cstring | ptr | parsers; failed ptr returns are JS null (F6) |
GEOSGeomToWKT_r |
ptr, ptr | ptr | |
GEOSWKTWriter_create_r |
ptr | ptr | writer options; ptr return → CString + GEOSFree_r (F10 rule 3) |
GEOSWKTWriter_destroy_r |
ptr, ptr | void | writer options; ptr return → CString + GEOSFree_r (F10 rule 3) |
GEOSWKTWriter_write_r |
ptr, ptr, ptr | ptr | writer options; ptr return → CString + GEOSFree_r (F10 rule 3) |
GEOSWKTWriter_setTrim_r |
ptr, ptr, i32 | void | writer options; ptr return → CString + GEOSFree_r (F10 rule 3) |
GEOSWKTWriter_setRoundingPrecision_r |
ptr, ptr, i32 | void | writer options; ptr return → CString + GEOSFree_r (F10 rule 3) |
GEOSWKTWriter_setOutputDimension_r |
ptr, ptr, i32 | void | writer options; ptr return → CString + GEOSFree_r (F10 rule 3) |
GEOSWKTWriter_setOld3D_r |
ptr, ptr, i32 | void | writer options; ptr return → CString + GEOSFree_r (F10 rule 3) |
GEOSWKBReader_create_r |
ptr | ptr | |
GEOSWKBReader_destroy_r |
ptr, ptr | void | |
GEOSWKBReader_read_r |
ptr, ptr, ptr, usize | ptr | parsers; failed ptr returns are JS null (F6) |
GEOSWKBWriter_create_r |
ptr | ptr | writer options; ptr return → CString + GEOSFree_r (F10 rule 3) |
GEOSWKBWriter_destroy_r |
ptr, ptr | void | writer options; ptr return → CString + GEOSFree_r (F10 rule 3) |
GEOSWKBWriter_write_r |
ptr, ptr, ptr, ptr | ptr | writer options; ptr return → CString + GEOSFree_r (F10 rule 3) |
GEOSWKBWriter_setOutputDimension_r |
ptr, ptr, i32 | void | writer options; ptr return → CString + GEOSFree_r (F10 rule 3) |
GEOSWKBWriter_setByteOrder_r |
ptr, ptr, i32 | void | writer options; ptr return → CString + GEOSFree_r (F10 rule 3) |
GEOSWKBWriter_setIncludeSRID_r |
ptr, ptr, i32 | void | writer options; ptr return → CString + GEOSFree_r (F10 rule 3) |
GEOSWKBWriter_setFlavor_r |
ptr, ptr, i32 | void | writer options; ptr return → CString + GEOSFree_r (F10 rule 3) |
GEOSCoordSeq_copyFromBuffer_r |
ptr, ptr, u32, i32, i32 | ptr | the D9 golden path — interleaved f64 buffers |
GEOSCoordSeq_copyToBuffer_r |
ptr, ptr, ptr, i32, i32 | i32 | the D9 golden path — interleaved f64 buffers |
GEOSCoordSeq_getSize_r |
ptr, ptr, ptr | i32 | |
GEOSCoordSeq_hasZ_r |
ptr, ptr | i32 | |
GEOSCoordSeq_hasM_r |
ptr, ptr | i32 | |
GEOSCoordSeq_destroy_r |
ptr, ptr | void | |
GEOSGeom_createPoint_r |
ptr, ptr | ptr | |
GEOSGeom_createLinearRing_r |
ptr, ptr | ptr | |
GEOSGeom_createLineString_r |
ptr, ptr | ptr | |
GEOSGeom_createPolygon_r |
ptr, ptr, ptr, u32 | ptr | |
GEOSGeom_createCollection_r |
ptr, i32, ptr, u32 | ptr | |
GEOSGeom_createEmptyPoint_r |
ptr | ptr | |
GEOSGeom_createEmptyLineString_r |
ptr | ptr | |
GEOSGeom_createEmptyPolygon_r |
ptr | ptr | |
GEOSGeom_createEmptyCollection_r |
ptr, i32 | ptr | |
GEOSGeom_destroy_r |
ptr, ptr | void | |
GEOSFree_r |
ptr, ptr | void | |
GEOSGeom_clone_r |
ptr, ptr | ptr | |
GEOSGetSRID_r |
ptr, ptr | i32 | |
GEOSSetSRID_r |
ptr, ptr, i32 | void | |
GEOSGeomType_r |
ptr, ptr | ptr | |
GEOSGeomTypeId_r |
ptr, ptr | i32 | |
GEOSisEmpty_r |
ptr, ptr | i32 | |
GEOSEnvelope_r |
ptr, ptr | ptr | |
GEOSGetNumGeometries_r |
ptr, ptr | i32 | |
GEOSGetGeometryN_r |
ptr, ptr, i32 | ptr | |
GEOSGetNumInteriorRings_r |
ptr, ptr | i32 | |
GEOSGetInteriorRingN_r |
ptr, ptr, i32 | ptr | |
GEOSGetExteriorRing_r |
ptr, ptr | ptr | |
GEOSGeom_getCoordSeq_r |
ptr, ptr | ptr | |
GEOSGeomGetNumPoints_r |
ptr, ptr | i32 | |
GEOSGeom_getCoordinateDimension_r |
ptr, ptr | i32 | |
GEOSIntersects_r |
ptr, ptr, ptr | i32 | |
GEOSDisjoint_r |
ptr, ptr, ptr | i32 | |
GEOSTouches_r |
ptr, ptr, ptr | i32 | |
GEOSCrosses_r |
ptr, ptr, ptr | i32 | |
GEOSWithin_r |
ptr, ptr, ptr | i32 | |
GEOSContains_r |
ptr, ptr, ptr | i32 | |
GEOSOverlaps_r |
ptr, ptr, ptr | i32 | |
GEOSCovers_r |
ptr, ptr, ptr | i32 | |
GEOSCoveredBy_r |
ptr, ptr, ptr | i32 | |
GEOSEquals_r |
ptr, ptr, ptr | i32 | |
GEOSEqualsIdentical_r |
ptr, ptr, ptr | i32 | |
GEOSEqualsExact_r |
ptr, ptr, ptr, f64 | i32 | |
GEOSGeom_getExtent_r |
ptr, ptr, ptr, ptr, ptr, ptr | i32 | |
GEOSNormalize_r |
ptr, ptr | i32 | |
GEOSRelatePattern_r |
ptr, ptr, ptr, cstring | i32 | |
GEOSRelate_r |
ptr, ptr, ptr | ptr | |
GEOSisValid_r |
ptr, ptr | i32 | |
GEOSIntersection_r |
ptr, ptr, ptr | ptr | |
GEOSUnion_r |
ptr, ptr, ptr | ptr | |
GEOSDifference_r |
ptr, ptr, ptr | ptr | |
GEOSSymDifference_r |
ptr, ptr, ptr | ptr | |
GEOSUnaryUnion_r |
ptr, ptr | ptr | |
GEOSBufferParams_create_r |
ptr | ptr | |
GEOSBufferParams_destroy_r |
ptr, ptr | void | |
GEOSBufferParams_setQuadrantSegments_r |
ptr, ptr, i32 | i32 | |
GEOSBufferParams_setEndCapStyle_r |
ptr, ptr, i32 | i32 | |
GEOSBufferParams_setJoinStyle_r |
ptr, ptr, i32 | i32 | |
GEOSBufferParams_setMitreLimit_r |
ptr, ptr, f64 | i32 | |
GEOSBufferParams_setSingleSided_r |
ptr, ptr, i32 | i32 | |
GEOSBufferWithParams_r |
ptr, ptr, ptr, f64 | ptr | |
GEOSArea_r |
ptr, ptr, ptr | i32 | |
GEOSLength_r |
ptr, ptr, ptr | i32 | |
GEOSDistance_r |
ptr, ptr, ptr, ptr | i32 | |
GEOSHausdorffDistance_r |
ptr, ptr, ptr, ptr | i32 | |
GEOSFrechetDistance_r |
ptr, ptr, ptr, ptr | i32 | |
GEOSPrepare_r |
ptr, ptr | ptr | |
GEOSPreparedGeom_destroy_r |
ptr, ptr | void | |
GEOSPreparedIntersects_r |
ptr, ptr, ptr | i32 | |
GEOSPreparedIntersectsXY_r |
ptr, ptr, f64, f64 | i32 | |
GEOSPreparedContains_r |
ptr, ptr, ptr | i32 | |
GEOSPreparedContainsXY_r |
ptr, ptr, f64, f64 | i32 | |
GEOSPreparedContainsProperly_r |
ptr, ptr, ptr | i32 | |
GEOSPreparedCoveredBy_r |
ptr, ptr, ptr | i32 | |
GEOSPreparedCovers_r |
ptr, ptr, ptr | i32 | |
GEOSPreparedCrosses_r |
ptr, ptr, ptr | i32 | |
GEOSPreparedDisjoint_r |
ptr, ptr, ptr | i32 | |
GEOSPreparedOverlaps_r |
ptr, ptr, ptr | i32 | |
GEOSPreparedTouches_r |
ptr, ptr, ptr | i32 | |
GEOSPreparedWithin_r |
ptr, ptr, ptr | i32 | |
GEOSPreparedRelate_r |
ptr, ptr, ptr | ptr | |
GEOSPreparedRelatePattern_r |
ptr, ptr, ptr, cstring | i32 | |
GEOSSTRtree_create_r |
ptr, usize | ptr | |
GEOSSTRtree_build_r |
ptr, ptr | i32 | |
GEOSSTRtree_insert_r |
ptr, ptr, ptr, ptr | void | |
GEOSSTRtree_destroy_r |
ptr, ptr | void | |
GEOSCoverageIsValid_r |
ptr, ptr, f64, ptr | i32 | |
GEOSCoverageSimplifyVW_r |
ptr, ptr, f64, i32 | ptr | |
GEOSCoverageCleanParams_create_r |
ptr | ptr | |
GEOSCoverageCleanParams_destroy_r |
ptr, ptr | void | |
GEOSCoverageCleanParams_setSnappingDistance_r |
ptr, ptr, f64 | i32 | |
GEOSCoverageCleanParams_setGapMaximumWidth_r |
ptr, ptr, f64 | i32 | |
GEOSCoverageCleanParams_setOverlapMergeStrategy_r |
ptr, ptr, i32 | i32 | |
GEOSCoverageCleanWithParams_r |
ptr, ptr, ptr | ptr | |
GEOSMakeValidParams_create_r |
ptr | ptr | |
GEOSMakeValidParams_destroy_r |
ptr, ptr | void | |
GEOSMakeValidParams_setKeepCollapsed_r |
ptr, ptr, i32 | i32 | |
GEOSMakeValidParams_setMethod_r |
ptr, ptr, i32 | i32 | |
GEOSMakeValid_r |
ptr, ptr | ptr | |
GEOSMakeValidWithParams_r |
ptr, ptr, ptr | ptr | |
GEOSisValidDetail_r |
ptr, ptr, i32, ptr, ptr | i32 | |
GEOSisSimpleDetail_r |
ptr, ptr, i32, ptr | i32 | |
GEOSOrientPolygons_r |
ptr, ptr, i32 | i32 | |
GEOSGeom_setPrecision_r |
ptr, ptr, f64, i32 | ptr | |
GEOSGeom_getPrecision_r |
ptr, ptr | f64 | |
GEOSIntersectionPrec_r |
ptr, ptr, ptr, f64 | ptr | |
GEOSUnionPrec_r |
ptr, ptr, ptr, f64 | ptr | |
GEOSDifferencePrec_r |
ptr, ptr, ptr, f64 | ptr | |
GEOSSymDifferencePrec_r |
ptr, ptr, ptr, f64 | ptr | |
GEOSUnaryUnionPrec_r |
ptr, ptr, f64 | ptr | |
GEOSConvexHull_r |
ptr, ptr | ptr | |
GEOSConcaveHull_r |
ptr, ptr, f64, i32 | ptr | |
GEOSSimplify_r |
ptr, ptr, f64 | ptr | |
GEOSTopologyPreserveSimplify_r |
ptr, ptr, f64 | ptr | |
GEOSClipByRect_r |
ptr, ptr, f64, f64, f64, f64 | ptr | |
GEOSDelaunayTriangulation_r |
ptr, ptr, f64, i32 | ptr | |
GEOSConstrainedDelaunayTriangulation_r |
ptr, ptr | ptr | |
GEOSVoronoiDiagram_r |
ptr, ptr, ptr, f64, i32 | ptr | |
GEOSLineMerge_r |
ptr, ptr | ptr | |
GEOSLineMergeDirected_r |
ptr, ptr | ptr | |
GEOSLineSubstring_r |
ptr, ptr, f64, f64 | ptr | |
GEOSOffsetCurve_r |
ptr, ptr, f64, i32, i32, f64 | ptr | |
GEOSSharedPaths_r |
ptr, ptr, ptr | ptr | |
GEOSSnap_r |
ptr, ptr, ptr, f64 | ptr | |
GEOSNode_r |
ptr, ptr | ptr | |
GEOSBuildArea_r |
ptr, ptr | ptr | |
GEOSPolygonize_r |
ptr, ptr, u32 | ptr | |
GEOSGetCentroid_r |
ptr, ptr | ptr | |
GEOSBoundary_r |
ptr, ptr | ptr | |
GEOSPointOnSurface_r |
ptr, ptr | ptr | |
GEOSNearestPoints_r |
ptr, ptr, ptr | ptr | |
GEOSMinimumClearance_r |
ptr, ptr, ptr | i32 | |
GEOSMinimumClearanceLine_r |
ptr, ptr | ptr | |
GEOSMaximumInscribedCircle_r |
ptr, ptr, f64 | ptr | |
GEOSLargestEmptyCircle_r |
ptr, ptr, ptr, f64 | ptr | |
GEOSClusterDBSCAN_r |
ptr, ptr, f64, u32 | ptr | |
GEOSClusterInfo_destroy_r |
ptr, ptr | void | |
GEOSClusterInfo_getClustersForInputs_r |
ptr, ptr | ptr | |
GEOSGridIntersectionFractions_r |
ptr, ptr, f64, f64, f64, f64, u32, u32, ptr | i32 |