| Copyright | Will Thompson, Iñaki García Etxebarria and Jonas Platte |
|---|---|
| License | LGPL-2.1 |
| Maintainer | Iñaki García Etxebarria (garetxe@gmail.com) |
| Safe Haskell | None |
| Language | Haskell2010 |
GI.GLib.Structs.Scanner
Contents
Description
The data structure representing a lexical scanner.
You should set @input_name after creating the scanner, since it is used by the default message handler when displaying warnings and errors. If you are scanning a file, the filename would be a good choice.
The user_data and max_parse_errors fields are not used.
If you need to associate extra data with the scanner you
can place them here.
If you want to use your own message handler you can set the @msg_handler field. The type of the message handler function is declared by #GScannerMsgFunc.
- newtype Scanner = Scanner (ForeignPtr Scanner)
- newZeroScanner :: MonadIO m => m Scanner
- noScanner :: Maybe Scanner
- data ScannerCurLineMethodInfo
- scannerCurLine :: MonadIO m => Scanner -> m Word32
- data ScannerCurPositionMethodInfo
- scannerCurPosition :: MonadIO m => Scanner -> m Word32
- data ScannerCurTokenMethodInfo
- scannerCurToken :: MonadIO m => Scanner -> m TokenType
- data ScannerDestroyMethodInfo
- scannerDestroy :: MonadIO m => Scanner -> m ()
- data ScannerEofMethodInfo
- scannerEof :: MonadIO m => Scanner -> m Bool
- data ScannerGetNextTokenMethodInfo
- scannerGetNextToken :: MonadIO m => Scanner -> m TokenType
- data ScannerInputFileMethodInfo
- scannerInputFile :: MonadIO m => Scanner -> Int32 -> m ()
- data ScannerInputTextMethodInfo
- scannerInputText :: MonadIO m => Scanner -> Text -> Word32 -> m ()
- data ScannerPeekNextTokenMethodInfo
- scannerPeekNextToken :: MonadIO m => Scanner -> m TokenType
- data ScannerScopeAddSymbolMethodInfo
- scannerScopeAddSymbol :: MonadIO m => Scanner -> Word32 -> Text -> Ptr () -> m ()
- data ScannerScopeRemoveSymbolMethodInfo
- scannerScopeRemoveSymbol :: MonadIO m => Scanner -> Word32 -> Text -> m ()
- data ScannerSetScopeMethodInfo
- scannerSetScope :: MonadIO m => Scanner -> Word32 -> m Word32
- data ScannerSyncFileOffsetMethodInfo
- scannerSyncFileOffset :: MonadIO m => Scanner -> m ()
- data ScannerUnexpTokenMethodInfo
- scannerUnexpToken :: MonadIO m => Scanner -> TokenType -> Text -> Text -> Text -> Text -> Int32 -> m ()
- scannerClearConfig :: MonadIO m => Scanner -> m ()
- scannerConfig :: AttrLabelProxy "config"
- scannerReadConfig :: MonadIO m => Scanner -> m (Maybe ScannerConfig)
- scannerWriteConfig :: MonadIO m => Scanner -> Ptr ScannerConfig -> m ()
- scannerClearInputName :: MonadIO m => Scanner -> m ()
- scannerInputName :: AttrLabelProxy "inputName"
- scannerReadInputName :: MonadIO m => Scanner -> m (Maybe Text)
- scannerWriteInputName :: MonadIO m => Scanner -> CString -> m ()
- scannerLine :: AttrLabelProxy "line"
- scannerReadLine :: MonadIO m => Scanner -> m Word32
- scannerWriteLine :: MonadIO m => Scanner -> Word32 -> m ()
- scannerMaxParseErrors :: AttrLabelProxy "maxParseErrors"
- scannerReadMaxParseErrors :: MonadIO m => Scanner -> m Word32
- scannerWriteMaxParseErrors :: MonadIO m => Scanner -> Word32 -> m ()
- scannerNextLine :: AttrLabelProxy "nextLine"
- scannerReadNextLine :: MonadIO m => Scanner -> m Word32
- scannerWriteNextLine :: MonadIO m => Scanner -> Word32 -> m ()
- scannerNextPosition :: AttrLabelProxy "nextPosition"
- scannerReadNextPosition :: MonadIO m => Scanner -> m Word32
- scannerWriteNextPosition :: MonadIO m => Scanner -> Word32 -> m ()
- scannerNextToken :: AttrLabelProxy "nextToken"
- scannerReadNextToken :: MonadIO m => Scanner -> m TokenType
- scannerWriteNextToken :: MonadIO m => Scanner -> TokenType -> m ()
- scannerClearNextValue :: MonadIO m => Scanner -> m ()
- scannerNextValue :: AttrLabelProxy "nextValue"
- scannerReadNextValue :: MonadIO m => Scanner -> m (Maybe TokenValue)
- scannerWriteNextValue :: MonadIO m => Scanner -> Ptr TokenValue -> m ()
- scannerParseErrors :: AttrLabelProxy "parseErrors"
- scannerReadParseErrors :: MonadIO m => Scanner -> m Word32
- scannerWriteParseErrors :: MonadIO m => Scanner -> Word32 -> m ()
- scannerPosition :: AttrLabelProxy "position"
- scannerReadPosition :: MonadIO m => Scanner -> m Word32
- scannerWritePosition :: MonadIO m => Scanner -> Word32 -> m ()
- scannerClearQdata :: MonadIO m => Scanner -> m ()
- scannerQdata :: AttrLabelProxy "qdata"
- scannerReadQdata :: MonadIO m => Scanner -> m (Maybe Data)
- scannerWriteQdata :: MonadIO m => Scanner -> Ptr Data -> m ()
- scannerReadToken :: MonadIO m => Scanner -> m TokenType
- scannerToken :: AttrLabelProxy "token"
- scannerWriteToken :: MonadIO m => Scanner -> TokenType -> m ()
- scannerClearUserData :: MonadIO m => Scanner -> m ()
- scannerReadUserData :: MonadIO m => Scanner -> m (Ptr ())
- scannerUserData :: AttrLabelProxy "userData"
- scannerWriteUserData :: MonadIO m => Scanner -> Ptr () -> m ()
- scannerClearValue :: MonadIO m => Scanner -> m ()
- scannerReadValue :: MonadIO m => Scanner -> m (Maybe TokenValue)
- scannerValue :: AttrLabelProxy "value"
- scannerWriteValue :: MonadIO m => Scanner -> Ptr TokenValue -> m ()
Exported types
Instances
| WrappedPtr Scanner Source # | |
| (~) AttrOpTag tag AttrSet => Constructible Scanner tag Source # | |
| ((~) * info (ResolveScannerMethod t Scanner), MethodInfo * info Scanner p) => IsLabel t (Scanner -> p) Source # | |
| ((~) * info (ResolveScannerMethod t Scanner), MethodInfo * info Scanner p) => IsLabelProxy t (Scanner -> p) Source # | |
| ((~) * signature (TokenType -> Text -> Text -> Text -> Text -> Int32 -> m ()), MonadIO m) => MethodInfo * ScannerUnexpTokenMethodInfo Scanner signature Source # | |
| ((~) * signature (m ()), MonadIO m) => MethodInfo * ScannerSyncFileOffsetMethodInfo Scanner signature Source # | |
| ((~) * signature (Word32 -> m Word32), MonadIO m) => MethodInfo * ScannerSetScopeMethodInfo Scanner signature Source # | |
| ((~) * signature (Word32 -> Text -> m ()), MonadIO m) => MethodInfo * ScannerScopeRemoveSymbolMethodInfo Scanner signature Source # | |
| ((~) * signature (Word32 -> Text -> Ptr () -> m ()), MonadIO m) => MethodInfo * ScannerScopeAddSymbolMethodInfo Scanner signature Source # | |
| ((~) * signature (m TokenType), MonadIO m) => MethodInfo * ScannerPeekNextTokenMethodInfo Scanner signature Source # | |
| ((~) * signature (Text -> Word32 -> m ()), MonadIO m) => MethodInfo * ScannerInputTextMethodInfo Scanner signature Source # | |
| ((~) * signature (Int32 -> m ()), MonadIO m) => MethodInfo * ScannerInputFileMethodInfo Scanner signature Source # | |
| ((~) * signature (m TokenType), MonadIO m) => MethodInfo * ScannerGetNextTokenMethodInfo Scanner signature Source # | |
| ((~) * signature (m Bool), MonadIO m) => MethodInfo * ScannerEofMethodInfo Scanner signature Source # | |
| ((~) * signature (m ()), MonadIO m) => MethodInfo * ScannerDestroyMethodInfo Scanner signature Source # | |
| ((~) * signature (m TokenType), MonadIO m) => MethodInfo * ScannerCurTokenMethodInfo Scanner signature Source # | |
| ((~) * signature (m Word32), MonadIO m) => MethodInfo * ScannerCurPositionMethodInfo Scanner signature Source # | |
| ((~) * signature (m Word32), MonadIO m) => MethodInfo * ScannerCurLineMethodInfo Scanner signature Source # | |
| type AttributeList Scanner Source # | |
newZeroScanner :: MonadIO m => m Scanner Source #
Construct a Scanner struct initialized to zero.
Methods
scannerCurLine
data ScannerCurLineMethodInfo Source #
Instances
| ((~) * signature (m Word32), MonadIO m) => MethodInfo * ScannerCurLineMethodInfo Scanner signature Source # | |
scannerCurLine :: MonadIO m => Scanner -> m Word32 Source #
scannerCurPosition
data ScannerCurPositionMethodInfo Source #
Instances
| ((~) * signature (m Word32), MonadIO m) => MethodInfo * ScannerCurPositionMethodInfo Scanner signature Source # | |
scannerCurPosition :: MonadIO m => Scanner -> m Word32 Source #
scannerCurToken
data ScannerCurTokenMethodInfo Source #
Instances
| ((~) * signature (m TokenType), MonadIO m) => MethodInfo * ScannerCurTokenMethodInfo Scanner signature Source # | |
scannerCurToken :: MonadIO m => Scanner -> m TokenType Source #
scannerDestroy
data ScannerDestroyMethodInfo Source #
Instances
| ((~) * signature (m ()), MonadIO m) => MethodInfo * ScannerDestroyMethodInfo Scanner signature Source # | |
scannerDestroy :: MonadIO m => Scanner -> m () Source #
scannerEof
data ScannerEofMethodInfo Source #
Instances
| ((~) * signature (m Bool), MonadIO m) => MethodInfo * ScannerEofMethodInfo Scanner signature Source # | |
scannerEof :: MonadIO m => Scanner -> m Bool Source #
scannerGetNextToken
data ScannerGetNextTokenMethodInfo Source #
Instances
| ((~) * signature (m TokenType), MonadIO m) => MethodInfo * ScannerGetNextTokenMethodInfo Scanner signature Source # | |
scannerGetNextToken :: MonadIO m => Scanner -> m TokenType Source #
scannerInputFile
data ScannerInputFileMethodInfo Source #
Instances
| ((~) * signature (Int32 -> m ()), MonadIO m) => MethodInfo * ScannerInputFileMethodInfo Scanner signature Source # | |
scannerInputFile :: MonadIO m => Scanner -> Int32 -> m () Source #
scannerInputText
data ScannerInputTextMethodInfo Source #
Instances
| ((~) * signature (Text -> Word32 -> m ()), MonadIO m) => MethodInfo * ScannerInputTextMethodInfo Scanner signature Source # | |
scannerInputText :: MonadIO m => Scanner -> Text -> Word32 -> m () Source #
scannerPeekNextToken
data ScannerPeekNextTokenMethodInfo Source #
Instances
| ((~) * signature (m TokenType), MonadIO m) => MethodInfo * ScannerPeekNextTokenMethodInfo Scanner signature Source # | |
scannerPeekNextToken :: MonadIO m => Scanner -> m TokenType Source #
scannerScopeAddSymbol
data ScannerScopeAddSymbolMethodInfo Source #
Instances
| ((~) * signature (Word32 -> Text -> Ptr () -> m ()), MonadIO m) => MethodInfo * ScannerScopeAddSymbolMethodInfo Scanner signature Source # | |
scannerScopeAddSymbol :: MonadIO m => Scanner -> Word32 -> Text -> Ptr () -> m () Source #
scannerScopeRemoveSymbol
data ScannerScopeRemoveSymbolMethodInfo Source #
Instances
| ((~) * signature (Word32 -> Text -> m ()), MonadIO m) => MethodInfo * ScannerScopeRemoveSymbolMethodInfo Scanner signature Source # | |
scannerScopeRemoveSymbol :: MonadIO m => Scanner -> Word32 -> Text -> m () Source #
scannerSetScope
data ScannerSetScopeMethodInfo Source #
Instances
| ((~) * signature (Word32 -> m Word32), MonadIO m) => MethodInfo * ScannerSetScopeMethodInfo Scanner signature Source # | |
scannerSetScope :: MonadIO m => Scanner -> Word32 -> m Word32 Source #
scannerSyncFileOffset
data ScannerSyncFileOffsetMethodInfo Source #
Instances
| ((~) * signature (m ()), MonadIO m) => MethodInfo * ScannerSyncFileOffsetMethodInfo Scanner signature Source # | |
scannerSyncFileOffset :: MonadIO m => Scanner -> m () Source #
scannerUnexpToken
data ScannerUnexpTokenMethodInfo Source #
Instances
| ((~) * signature (TokenType -> Text -> Text -> Text -> Text -> Int32 -> m ()), MonadIO m) => MethodInfo * ScannerUnexpTokenMethodInfo Scanner signature Source # | |
scannerUnexpToken :: MonadIO m => Scanner -> TokenType -> Text -> Text -> Text -> Text -> Int32 -> m () Source #
Properties
Config
scannerClearConfig :: MonadIO m => Scanner -> m () Source #
scannerConfig :: AttrLabelProxy "config" Source #
scannerReadConfig :: MonadIO m => Scanner -> m (Maybe ScannerConfig) Source #
scannerWriteConfig :: MonadIO m => Scanner -> Ptr ScannerConfig -> m () Source #
InputName
scannerClearInputName :: MonadIO m => Scanner -> m () Source #
scannerInputName :: AttrLabelProxy "inputName" Source #
scannerReadInputName :: MonadIO m => Scanner -> m (Maybe Text) Source #
scannerWriteInputName :: MonadIO m => Scanner -> CString -> m () Source #
Line
scannerLine :: AttrLabelProxy "line" Source #
scannerReadLine :: MonadIO m => Scanner -> m Word32 Source #
scannerWriteLine :: MonadIO m => Scanner -> Word32 -> m () Source #
MaxParseErrors
scannerMaxParseErrors :: AttrLabelProxy "maxParseErrors" Source #
scannerReadMaxParseErrors :: MonadIO m => Scanner -> m Word32 Source #
scannerWriteMaxParseErrors :: MonadIO m => Scanner -> Word32 -> m () Source #
NextLine
scannerNextLine :: AttrLabelProxy "nextLine" Source #
scannerReadNextLine :: MonadIO m => Scanner -> m Word32 Source #
scannerWriteNextLine :: MonadIO m => Scanner -> Word32 -> m () Source #
NextPosition
scannerNextPosition :: AttrLabelProxy "nextPosition" Source #
scannerReadNextPosition :: MonadIO m => Scanner -> m Word32 Source #
scannerWriteNextPosition :: MonadIO m => Scanner -> Word32 -> m () Source #
NextToken
scannerNextToken :: AttrLabelProxy "nextToken" Source #
scannerReadNextToken :: MonadIO m => Scanner -> m TokenType Source #
scannerWriteNextToken :: MonadIO m => Scanner -> TokenType -> m () Source #
NextValue
scannerClearNextValue :: MonadIO m => Scanner -> m () Source #
scannerNextValue :: AttrLabelProxy "nextValue" Source #
scannerReadNextValue :: MonadIO m => Scanner -> m (Maybe TokenValue) Source #
scannerWriteNextValue :: MonadIO m => Scanner -> Ptr TokenValue -> m () Source #
ParseErrors
scannerParseErrors :: AttrLabelProxy "parseErrors" Source #
scannerReadParseErrors :: MonadIO m => Scanner -> m Word32 Source #
scannerWriteParseErrors :: MonadIO m => Scanner -> Word32 -> m () Source #
Position
scannerPosition :: AttrLabelProxy "position" Source #
scannerReadPosition :: MonadIO m => Scanner -> m Word32 Source #
scannerWritePosition :: MonadIO m => Scanner -> Word32 -> m () Source #
Qdata
scannerClearQdata :: MonadIO m => Scanner -> m () Source #
scannerQdata :: AttrLabelProxy "qdata" Source #
scannerReadQdata :: MonadIO m => Scanner -> m (Maybe Data) Source #
scannerWriteQdata :: MonadIO m => Scanner -> Ptr Data -> m () Source #
Token
scannerReadToken :: MonadIO m => Scanner -> m TokenType Source #
scannerToken :: AttrLabelProxy "token" Source #
scannerWriteToken :: MonadIO m => Scanner -> TokenType -> m () Source #
UserData
scannerClearUserData :: MonadIO m => Scanner -> m () Source #
scannerReadUserData :: MonadIO m => Scanner -> m (Ptr ()) Source #
scannerUserData :: AttrLabelProxy "userData" Source #
scannerWriteUserData :: MonadIO m => Scanner -> Ptr () -> m () Source #
Value
scannerClearValue :: MonadIO m => Scanner -> m () Source #
scannerReadValue :: MonadIO m => Scanner -> m (Maybe TokenValue) Source #
scannerValue :: AttrLabelProxy "value" Source #
scannerWriteValue :: MonadIO m => Scanner -> Ptr TokenValue -> m () Source #