public static void decodePathSegment(List<PathSegment> segments,String segment,boolean decode){
  int colon=segment.indexOf(';');
  if (colon != -1) {
    segments.add(new PathSegmentImpl((colon == 0) ? "" : segment.substring(0,colon),decode,decodeMatrix(segment,decode)));
  }
 else {
    segments.add(new PathSegmentImpl(segment,decode));
  }
}

public static void decodePathSegment ( List < PathSegment > segments , String segment , boolean decode ) { int colon = segment . indexOf ( ';' ) ; if ( colon != - 1 ) { segments . add ( new PathSegmentImpl ( ( colon == 0 ) ? "" : segment . substring ( 0 , colon ) , decode , decodeMatrix ( segment , decode ) ) ) ; } else { segments . add ( new PathSegmentImpl ( segment , decode ) ) ; } }
decode the path segment and add it to the list of path segments .
