العرضar

nondum

Translation status: العربية reader-locale proof. Code fences render through the ar pipeline; prose is canonical Latin.

Marks an interface method as planned but unavailable for a target.

Syntax: @ nondum [target] [reason]

Category#

availability

Examples#

radix/corpus/annotation-sugar/nondum-braced.fab (canonical · annotation)#

Braced canonical @ nondum availability record.

# =============================================================================
# nondum — Braced canonical @ nondum availability record.
# =============================================================================
#
# What this teaches:
#   • Unimplemented marker — `@ nondum` annotates a declaration as not yet
#     implemented for a specific backend target
#   • Braced annotation syntax — `@ nondum { target = rs, ratio = "…" }`
#     provides the target backend and a rationale string
#
# Common mistakes:
#   • using `@ nondum` on declarations that are actually implemented for the current target (SEM017)
#
# See also: nondum, annotation-sugar
# =============================================================================

interface tempus {
  @ unstable { target = rs, ratio = "timer handles are not implemented" }
  fn siste(int handle)  void
}

main {
    print "nondum-braced"
}

Expected output:

nondum-braced

radix/corpus/meta/nondum.fab (canonical · annotation)#

Marks an interface method as planned but unavailable for a target.

# =============================================================================
# nondum — Marks an interface method as planned but unavailable for a target.
# =============================================================================
#
# What this teaches:
#   • the `@nondum` annotation — marks interface methods as planned but not yet implemented for a target backend
#   • target-specific availability annotations with optional reason strings
#
# Common mistakes:
#   • Calling a method marked @ nondum — the compiler rejects calls to nondum methods for the current target (SEM017).
#
# See also: implendum, @
# =============================================================================

# meta/nondum — planned-but-unavailable interface methods
#
# GRAMMAR:
#   interfaceMethod :← '@' 'nondum' target? stringLit
#
# EXPECTED OUTPUT:
#   nondum implendum declared
#
# BACKEND:
#   Calls to @ nondum methods fail semantic check (SEM017); do not invoke here.

interface tempus {
    @ unstable rs "timer handles are not implemented yet"
    fn siste(int handle)  void
}

main {
    print "nondum implendum declared"
}

Expected output:

nondum implendum declared