line |
stmt |
bran |
cond |
sub |
pod |
time |
code |
1
|
|
|
|
|
|
|
MODULE = Geo::Geos PACKAGE = Geo::Geos::Noding::IntersectionAdder |
2
|
|
|
|
|
|
|
PROTOTYPES: DISABLE |
3
|
|
|
|
|
|
|
|
4
|
|
|
|
|
|
|
Sv new(SV*,SV* liObj) { |
5
|
2
|
50
|
|
|
|
|
LineIntersector& li = xs::in(liObj); |
6
|
4
|
50
|
|
|
|
|
Object wrapped = xs::out<>(new IntersectionAdder(li)); |
|
|
50
|
|
|
|
|
|
|
|
50
|
|
|
|
|
|
|
|
50
|
|
|
|
|
|
7
|
2
|
50
|
|
|
|
|
wrapped.payload_attach(SvRV(liObj), &payload_marker); |
8
|
2
|
50
|
|
|
|
|
RETVAL = wrapped.ref(); |
|
|
50
|
|
|
|
|
|
9
|
|
|
|
|
|
|
} |
10
|
|
|
|
|
|
|
|
11
|
|
|
|
|
|
|
Sv IntersectionAdder::getLineIntersector() { |
12
|
|
|
|
|
|
|
(void)THIS; |
13
|
2
|
50
|
|
|
|
|
Object me{ST(0)}; |
|
|
50
|
|
|
|
|
|
14
|
1
|
|
|
|
|
|
auto payload = me.payload(&payload_marker); |
15
|
2
|
50
|
|
|
|
|
Object li{payload.obj}; |
|
|
50
|
|
|
|
|
|
16
|
1
|
50
|
|
|
|
|
RETVAL = li.ref(); |
|
|
50
|
|
|
|
|
|
17
|
|
|
|
|
|
|
} |
18
|
|
|
|
|
|
|
|
19
|
1
|
|
|
|
|
|
bool IntersectionAdder::hasIntersection () |
20
|
|
|
|
|
|
|
|
21
|
1
|
|
|
|
|
|
bool IntersectionAdder::hasProperIntersection () |
22
|
|
|
|
|
|
|
|
23
|
1
|
|
|
|
|
|
bool IntersectionAdder::hasProperInteriorIntersection () |
24
|
|
|
|
|
|
|
|
25
|
1
|
|
|
|
|
|
bool IntersectionAdder::hasInteriorIntersection () |
26
|
|
|
|
|
|
|
|
27
|
0
|
|
|
|
|
|
int CLONE_SKIP (...) { PERL_UNUSED_VAR(items); RETVAL = 1; } |
28
|
|
|
|
|
|
|
|
29
|
|
|
|
|
|
|
BOOT { |
30
|
46
|
50
|
|
|
|
|
Stash(__PACKAGE__).inherit("Geo::Geos::Noding::SegmentIntersector"); |
|
|
50
|
|
|
|
|
|
31
|
|
|
|
|
|
|
} |
32
|
|
|
|
|
|
|
|
33
|
|
|
|
|
|
|
|