import { LineResults } from "../LineResults" ; import { CommandNames } from "../Names/CommandNames" ; import { Command } from "./Command" ; import { CommandMetadata } from "./Metadata/CommandMetadata" ; import { SingleParameter } from "./Metadata/Parameters/SingleParameter" ; /**
 * Logically inverts a value.
 */ export class NotCommand extends Command { /**
     * Metadata on the command.
     */ private static metadata : CommandMetadata = new CommandMetadata ( CommandNames . Not ) . withDescription ( "Logically inverts a value" ) . withParameters ( [ new SingleParameter ( "value" , "A value to inverse." , true ) ] ) ; returns public getMetadata ( ) { return NotCommand . metadata ; } param parameters returns public render ( parameters ) { const not = this . language . syntax . operators . not ; return LineResults . newSingleLine ( not + parameters [ 1 ] ) ; } }