Package jason.stdlib

Class structure

All Implemented Interfaces:
InternalAction, Serializable

@Manual(literal=".structure(argument)", hint="checks whether the argument is a structure", argsHint="the term to be checked", argsType="term", examples={".structure(b(10)): true",".structure(b): true",".structure(10): false",".structure(\"home page\"): false",".structure(X): false if X is free, true if X is bound to a structure",".structure(a(X)): true",".structure(~c(f)): true",".structure([a,b,c]): true",".structure([a,b,c(X)]): true"}, seeAlso={"jason.stdlib.atom","jason.stdlib.list","jason.stdlib.literal","jason.stdlib.number","jason.stdlib.string","jason.stdlib.ground"}) public class structure extends DefaultInternalAction

Internal action: .structure.

Description: checks whether the argument is a structure, e.g.: "p", "p(1)", "[a,b]". Numbers, strings and free variables are not structures.

Parameter:

  • + argument (any term): the term to be checked.

Examples:

  • .structure(b(10)): true.
  • .structure(b): true.
  • .structure(10): false.
  • .structure("home page"): false.
  • .structure(X): false if X is free, true if X is bound to a structure.
  • .structure(a(X)): true.
  • .structure([a,b,c]): true.
  • .structure([a,b,c(X)]): true.
See Also: