src/Pure/General/long_name.ML
changeset 59888 27e4d0ab0948
parent 56800 b904ea8edd73
child 59916 f673ce6b1e2b
equal deleted inserted replaced
59887:43dc3c660f41 59888:27e4d0ab0948
     7 signature LONG_NAME =
     7 signature LONG_NAME =
     8 sig
     8 sig
     9   val separator: string
     9   val separator: string
    10   val is_qualified: string -> bool
    10   val is_qualified: string -> bool
    11   val hidden: string -> string
    11   val hidden: string -> string
    12   val is_hidden: string -> bool
    12   val dest_hidden: string -> string option
    13   val localN: string
    13   val localN: string
    14   val is_local: string -> bool
    14   val dest_local: string -> string option
    15   val implode: string list -> string
    15   val implode: string list -> string
    16   val explode: string -> string list
    16   val explode: string -> string list
    17   val append: string -> string -> string
    17   val append: string -> string -> string
    18   val qualification: string -> int
    18   val qualification: string -> int
    19   val qualify: string -> string -> string
    19   val qualify: string -> string -> string
    27 
    27 
    28 val separator = ".";
    28 val separator = ".";
    29 
    29 
    30 val is_qualified = exists_string (fn s => s = separator);
    30 val is_qualified = exists_string (fn s => s = separator);
    31 
    31 
    32 fun hidden name = "??." ^ name;
    32 val hidden = prefix "??.";
    33 val is_hidden = String.isPrefix "??.";
    33 val dest_hidden = try (unprefix "??.");
    34 
    34 
    35 val localN = "local";
    35 val localN = "local";
    36 val is_local = String.isPrefix "local.";
    36 val dest_local = try (unprefix "local.");
    37 
    37 
    38 val implode = space_implode separator;
    38 val implode = space_implode separator;
    39 val explode = space_explode separator;
    39 val explode = space_explode separator;
    40 
    40 
    41 fun append name1 "" = name1
    41 fun append name1 "" = name1