[svn:parrot] r49752 - in branches/string_checks: compilers/imcc include/parrot src/io src/pmc src/string src/string/encoding

nwellnhof at svn.parrot.org nwellnhof at svn.parrot.org
Sun Oct 31 15:02:44 UTC 2010


Author: nwellnhof
Date: Sun Oct 31 15:02:43 2010
New Revision: 49752
URL: https://trac.parrot.org/parrot/changeset/49752

Log:
[str] Remove unneeded STRING_validate

Modified:
   branches/string_checks/compilers/imcc/pbc.c
   branches/string_checks/include/parrot/string.h
   branches/string_checks/src/io/api.c
   branches/string_checks/src/pmc/bytebuffer.pmc
   branches/string_checks/src/pmc/filehandle.pmc
   branches/string_checks/src/string/api.c
   branches/string_checks/src/string/encoding/ascii.c
   branches/string_checks/src/string/encoding/binary.c
   branches/string_checks/src/string/encoding/latin1.c
   branches/string_checks/src/string/encoding/null.c
   branches/string_checks/src/string/encoding/shared.c
   branches/string_checks/src/string/encoding/shared.h
   branches/string_checks/src/string/encoding/ucs2.c
   branches/string_checks/src/string/encoding/ucs4.c
   branches/string_checks/src/string/encoding/utf16.c
   branches/string_checks/src/string/encoding/utf8.c

Modified: branches/string_checks/compilers/imcc/pbc.c
==============================================================================
--- branches/string_checks/compilers/imcc/pbc.c	Sun Oct 31 15:01:56 2010	(r49751)
+++ branches/string_checks/compilers/imcc/pbc.c	Sun Oct 31 15:02:43 2010	(r49752)
@@ -956,10 +956,6 @@
                         src_encoding, 0);
                 s = Parrot_str_unescape_string(interp, aux,
                         s_encoding, PObj_constant_FLAG);
-                if (!STRING_validate(interp, s))
-                       Parrot_ex_throw_from_c_args(interp, NULL,
-                               EXCEPTION_INVALID_STRING_REPRESENTATION,
-                               "Malformed string");
             }
         }
         return s;

Modified: branches/string_checks/include/parrot/string.h
==============================================================================
--- branches/string_checks/include/parrot/string.h	Sun Oct 31 15:01:56 2010	(r49751)
+++ branches/string_checks/include/parrot/string.h	Sun Oct 31 15:02:43 2010	(r49752)
@@ -35,7 +35,6 @@
 #define STRING_index(interp, src, search, offset) ((src)->encoding)->index((interp), (src), (search), (offset))
 #define STRING_rindex(interp, src, search, offset) ((src)->encoding)->rindex((interp), (src), (search), (offset))
 #define STRING_hash(i, src, seed) ((src)->encoding)->hash((i), (src), (seed))
-#define STRING_validate(interp, src) ((src)->encoding)->validate((interp), (src))
 
 #define STRING_scan(i, src) ((src)->encoding)->scan((i), (src))
 #define STRING_ord(i, src, offset) ((src)->encoding)->ord((i), (src), (offset))
@@ -93,7 +92,6 @@
 typedef INTVAL   (*str_vtable_index_t)(PARROT_INTERP, ARGIN(const STRING *src), ARGIN(const STRING *search_string), INTVAL offset);
 typedef INTVAL   (*str_vtable_rindex_t)(PARROT_INTERP, ARGIN(const STRING *src), ARGIN(const STRING *search_string), INTVAL offset);
 typedef size_t   (*str_vtable_hash_t)(PARROT_INTERP, ARGIN(const STRING *s), size_t hashval);
-typedef UINTVAL  (*str_vtable_validate_t)(PARROT_INTERP, ARGIN(const STRING *src));
 
 typedef UINTVAL  (*str_vtable_scan_t)(PARROT_INTERP, ARGIN(const STRING *src));
 typedef UINTVAL  (*str_vtable_ord_t)(PARROT_INTERP, ARGIN(const STRING *src), INTVAL offset);
@@ -138,7 +136,6 @@
     str_vtable_index_t                  index;
     str_vtable_rindex_t                 rindex;
     str_vtable_hash_t                   hash;
-    str_vtable_validate_t               validate;
 
     str_vtable_scan_t                   scan;
     str_vtable_ord_t                    ord;

Modified: branches/string_checks/src/io/api.c
==============================================================================
--- branches/string_checks/src/io/api.c	Sun Oct 31 15:01:56 2010	(r49751)
+++ branches/string_checks/src/io/api.c	Sun Oct 31 15:02:43 2010	(r49752)
@@ -351,7 +351,7 @@
                 result->encoding = Parrot_get_encoding(interp,
                     Parrot_encoding_number(interp, encoding_str));
 
-            STRING_validate(interp, result);
+            result->strlen = STRING_scan(interp, result);
         }
     }
     else if (pmc->vtable->base_type == enum_class_StringHandle) {

Modified: branches/string_checks/src/pmc/bytebuffer.pmc
==============================================================================
--- branches/string_checks/src/pmc/bytebuffer.pmc	Sun Oct 31 15:01:56 2010	(r49751)
+++ branches/string_checks/src/pmc/bytebuffer.pmc	Sun Oct 31 15:02:43 2010	(r49752)
@@ -399,10 +399,6 @@
     else {
         STRING * const result = Parrot_str_new_init(interp,
                 (const char *)content, size, encoding, 0);
-        if (!STRING_validate(interp, result))
-            Parrot_ex_throw_from_c_args(interp, NULL,
-                    EXCEPTION_INVALID_STRING_REPRESENTATION,
-                    "Invalid buffer content");
         return result;
     }
 }

Modified: branches/string_checks/src/pmc/filehandle.pmc
==============================================================================
--- branches/string_checks/src/pmc/filehandle.pmc	Sun Oct 31 15:01:56 2010	(r49751)
+++ branches/string_checks/src/pmc/filehandle.pmc	Sun Oct 31 15:02:43 2010	(r49752)
@@ -391,8 +391,6 @@
             else
                 string_result = Parrot_str_new_init(INTERP, r, strlen(r), enc, 0);
             free(r);
-            if (enc != NULL)
-                STRING_validate(INTERP, string_result);
         }
 #else
         if (got_prompt) {

Modified: branches/string_checks/src/string/api.c
==============================================================================
--- branches/string_checks/src/string/api.c	Sun Oct 31 15:01:56 2010	(r49751)
+++ branches/string_checks/src/string/api.c	Sun Oct 31 15:02:43 2010	(r49752)
@@ -2736,14 +2736,6 @@
     result->strlen  = d;
     result->bufused = iter.bytepos;
 
-    /* Force validating the string */
-    if (encoding != result->encoding)
-        result->strlen = STRING_scan(interp, result);
-
-    if (!STRING_validate(interp, result))
-        Parrot_ex_throw_from_c_args(interp, NULL,
-            EXCEPTION_INVALID_STRING_REPRESENTATION, "Malformed string");
-
     return result;
 }
 

Modified: branches/string_checks/src/string/encoding/ascii.c
==============================================================================
--- branches/string_checks/src/string/encoding/ascii.c	Sun Oct 31 15:01:56 2010	(r49751)
+++ branches/string_checks/src/string/encoding/ascii.c	Sun Oct 31 15:02:43 2010	(r49752)
@@ -357,7 +357,6 @@
     fixed8_index,
     fixed8_rindex,
     fixed8_hash,
-    encoding_validate,
 
     ascii_scan,
     fixed8_ord,

Modified: branches/string_checks/src/string/encoding/binary.c
==============================================================================
--- branches/string_checks/src/string/encoding/binary.c	Sun Oct 31 15:01:56 2010	(r49751)
+++ branches/string_checks/src/string/encoding/binary.c	Sun Oct 31 15:02:43 2010	(r49752)
@@ -236,7 +236,6 @@
     fixed8_index,
     fixed8_rindex,
     fixed8_hash,
-    encoding_validate,
 
     binary_scan,
     fixed8_ord,

Modified: branches/string_checks/src/string/encoding/latin1.c
==============================================================================
--- branches/string_checks/src/string/encoding/latin1.c	Sun Oct 31 15:01:56 2010	(r49751)
+++ branches/string_checks/src/string/encoding/latin1.c	Sun Oct 31 15:02:43 2010	(r49752)
@@ -387,7 +387,6 @@
     fixed8_index,
     fixed8_rindex,
     fixed8_hash,
-    encoding_validate,
 
     latin1_scan,
     fixed8_ord,

Modified: branches/string_checks/src/string/encoding/null.c
==============================================================================
--- branches/string_checks/src/string/encoding/null.c	Sun Oct 31 15:01:56 2010	(r49751)
+++ branches/string_checks/src/string/encoding/null.c	Sun Oct 31 15:02:43 2010	(r49752)
@@ -188,7 +188,6 @@
     (str_vtable_index_t)null_error,
     (str_vtable_rindex_t)null_error,
     null_hash,
-    encoding_validate,
 
     null_scan,
     (str_vtable_ord_t)null_error,

Modified: branches/string_checks/src/string/encoding/shared.c
==============================================================================
--- branches/string_checks/src/string/encoding/shared.c	Sun Oct 31 15:01:56 2010	(r49751)
+++ branches/string_checks/src/string/encoding/shared.c	Sun Oct 31 15:02:43 2010	(r49752)
@@ -395,27 +395,6 @@
 
 /*
 
-=item C<UINTVAL encoding_validate(PARROT_INTERP, const STRING *src)>
-
-Verifies that the given string is valid. Returns 1 if it is valid,
-returns 0 otherwise.
-
-=cut
-
-*/
-
-PARROT_WARN_UNUSED_RESULT
-UINTVAL
-encoding_validate(PARROT_INTERP, ARGIN(const STRING *src))
-{
-    ASSERT_ARGS(encoding_validate)
-
-    return STRING_scan(interp, src) == src->strlen;
-}
-
-
-/*
-
 =item C<void encoding_ord_error(PARROT_INTERP, const STRING *s, INTVAL offset)>
 
 Throws the right exception if STRING_ord was called with a wrong index.

Modified: branches/string_checks/src/string/encoding/shared.h
==============================================================================
--- branches/string_checks/src/string/encoding/shared.h	Sun Oct 31 15:01:56 2010	(r49751)
+++ branches/string_checks/src/string/encoding/shared.h	Sun Oct 31 15:02:43 2010	(r49752)
@@ -119,11 +119,6 @@
         __attribute__nonnull__(3);
 
 PARROT_WARN_UNUSED_RESULT
-UINTVAL encoding_validate(PARROT_INTERP, ARGIN(const STRING *src))
-        __attribute__nonnull__(1)
-        __attribute__nonnull__(2);
-
-PARROT_WARN_UNUSED_RESULT
 INTVAL fixed8_compare(PARROT_INTERP,
     ARGIN(const STRING *lhs),
     ARGIN(const STRING *rhs))
@@ -333,9 +328,6 @@
        PARROT_ASSERT_ARG(interp) \
     , PARROT_ASSERT_ARG(src) \
     , PARROT_ASSERT_ARG(encoding))
-#define ASSERT_ARGS_encoding_validate __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(interp) \
-    , PARROT_ASSERT_ARG(src))
 #define ASSERT_ARGS_fixed8_compare __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
        PARROT_ASSERT_ARG(interp) \
     , PARROT_ASSERT_ARG(lhs) \

Modified: branches/string_checks/src/string/encoding/ucs2.c
==============================================================================
--- branches/string_checks/src/string/encoding/ucs2.c	Sun Oct 31 15:01:56 2010	(r49751)
+++ branches/string_checks/src/string/encoding/ucs2.c	Sun Oct 31 15:02:43 2010	(r49752)
@@ -390,7 +390,6 @@
     encoding_index,
     encoding_rindex,
     ucs2_hash,
-    encoding_validate,
 
     ucs2_scan,
     ucs2_ord,

Modified: branches/string_checks/src/string/encoding/ucs4.c
==============================================================================
--- branches/string_checks/src/string/encoding/ucs4.c	Sun Oct 31 15:01:56 2010	(r49751)
+++ branches/string_checks/src/string/encoding/ucs4.c	Sun Oct 31 15:02:43 2010	(r49752)
@@ -395,7 +395,6 @@
     encoding_index,
     encoding_rindex,
     ucs4_hash,
-    encoding_validate,
 
     ucs4_scan,
     ucs4_ord,

Modified: branches/string_checks/src/string/encoding/utf16.c
==============================================================================
--- branches/string_checks/src/string/encoding/utf16.c	Sun Oct 31 15:01:56 2010	(r49751)
+++ branches/string_checks/src/string/encoding/utf16.c	Sun Oct 31 15:02:43 2010	(r49752)
@@ -622,7 +622,6 @@
     encoding_index,
     encoding_rindex,
     encoding_hash,
-    encoding_validate,
 
     utf16_scan,
     utf16_ord,

Modified: branches/string_checks/src/string/encoding/utf8.c
==============================================================================
--- branches/string_checks/src/string/encoding/utf8.c	Sun Oct 31 15:01:56 2010	(r49751)
+++ branches/string_checks/src/string/encoding/utf8.c	Sun Oct 31 15:02:43 2010	(r49752)
@@ -598,7 +598,6 @@
     encoding_index,
     encoding_rindex,
     encoding_hash,
-    encoding_validate,
 
     utf8_scan,
     utf8_ord,


More information about the parrot-commits mailing list