In computing, a data type whose structure is not defined in an interface
This article has multiple issues. Please help improve it or discuss these issues on the talk page. (Learn how and when to remove these template messages)
This article needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed. Find sources: "Opaque data type" – news · newspapers · books · scholar · JSTOR(December 2011) (Learn how and when to remove this message)
This article may require cleanup to meet Wikipedia's quality standards. No cleanup reason has been specified. Please help improve this article if you can.(November 2011) (Learn how and when to remove this message)
(Learn how and when to remove this message)
In computer science, an opaque data type is a data type whose concrete data structure is not defined in an interface. This enforces information hiding, since its values can only be manipulated by calling subroutines that have access to the missing information. The concrete representation of the type is hidden from its users, and the visible implementation is incomplete. A data type whose representation is visible is called transparent.[1] Opaque data types are frequently used to implement abstract data types.
Typical examples of opaque data types include handles for resources provided by an operating system to application software. For example, the POSIX standard for threads defines an application programming interface based on a number of opaque types that represent threads or synchronization primitives like mutexes or condition variables.[2]
An opaque pointer is a special case of an opaque data type, a datatype that is declared to be a pointer to a record or data structure of some unspecified data type. For example, the standard library that forms part of the specification of the C programming language provides functions for file input and output that return or take values of type "pointer to FILE" that represent file streams (see C file input/output), but the concrete implementation of the type FILE is not specified.[3]
^Friedman, Daniel P.; Wand, Mitchell; Haynes, Christopher T. (2001). Essentials of Programming Languages (2nd ed.). MIT Press. p. 42. ISBN 978-0-262-06217-6.
^Butenhof, David R. (1997). Programming with POSIX Threads. Addison-Wesley. p. 31. ISBN 978-0-201-63392-4.
^Kernighan, Brian W.; Ritchie, Dennis M. (1988). The C Programming Language (2nd ed.). Prentice Hall. ISBN 0-13-110362-8.
and are easily confused with ADTs proper; these include abstract types, opaquedatatypes, protocols, and design by contract. For example, in modular programming...
interface of a library module and its implementation. Some provide opaquedatatypes that allow clients to hide implementation details. Object-oriented...
big-endian order; smaller datatypes still occupy four bytes each after encoding. Variable-length types such as string and opaque are padded to a total divisible...
with up-turned hooks or curls. Cirrus spissatus (V-3) Dense and opaque or mostly opaque patches. Cirrus castellanus (V-4) A series of dense lumps, or "towers"...
and early versions of MS-DOS. A file handle is generally either an opaquedatatype or an integer; it was introduced in around 1961 by the ALGOL-based...
mating compared to the white type. This switching between white and opaque form is regulated by the WOR1 regulator (White to Opaque Regulator 1) which is controlled...
just referenced as an opaque external object (which is not parsable with SGML) via its "data" attribute (whose value type is an opaque ENTITY). Only one notation...
it was invented by Bette Nesmith Graham. Correction fluid was a kind of opaque, white, fast-drying paint that produced a fresh white surface onto which...
with no fonts or text properties. The original imaging model of PDF was opaque, similar to PostScript, where each object drawn on the page completely replaced...
are designed for very particular types of data: PNG files, for example, store bitmapped images using lossless data compression. Other file formats, however...
bone biopsy under a microscope. Type V can be further distinguished from other types of OI by the "V triad": an opaque band (visible on X-ray) adjacent...
additional auxiliary data with the handle, so handles can be stored as a field in a record, along with other data; if this in an opaquedatatype, then this provides...
erasable programmable read-only memory, is a type of programmable read-only memory (PROM) chip that retains its data when its power supply is switched off....
communication with the GitHub Copilot servers. This opaque architecture has fueled concerns over telemetry and data mining of individual keystrokes. A paper accepted...