Quellcodebibliothek Statistik Leitseite products/sources/formale Sprachen/Isabelle/Pure/General/   (Beweissystem Isabelle Version 2025-1©)  Datei vom 16.11.2025 mit Größe 976 B image not shown  

Bilddatei long_name.scala   Sprache: Scala

 
/*  Title:      Pure/General/long_name.scala
    Author:     Makarius

Long names.
*/


package isabelle


object Long_Name {
  val separator = "."
  val separator_char = '.'

  def is_qualified(name: String): Boolean = name.contains(separator_char)

  def implode(names: List[String]): String = names.mkString(separator)
  def explode(name: String): List[String] = space_explode(separator_char, name)

  def qualify(qual: String, name: String): String =
    if (qual == "" || name == "") name
    else qual + separator + name

  def qualifier(name: String): String =
    if (name == """"
    else implode(explode(name).dropRight(1))

  def base_name(name: String): String =
    if (name == """"
    else explode(name).last

  def try_unqualify(qual: String, name: String): Option[String] = {
    val m = qual.length
    val n = name.length
    if (0 < m && m < n && name.startsWith(qual) && name(m) == separator_char)
      Some(name.substring(m + 1))
    else None
  }
}

100%


¤ Dauer der Verarbeitung: 0.15 Sekunden  (vorverarbeitet)  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung ist noch experimentell.